YTM32的LIN通信协议引擎LinFlexD外设模块详解LINFlexD外设简介LINFlexD工作机制初始化主机模式从机模式错误状态标志位超时错误(Timeout Error)ID过滤机制接收器检测帧间隔段和帧间隔段分隔符产生波特率自动同步波特率机制唤醒管理机制软件参考文献LINFlexD外设简介YTM32微控制器的LINFlexD外设模块,实现了LIN协议控制...
《What Every Programmer Should Know About Memory》是Ulrich Drepper大佬的一篇神作,洋洋洒洒100多页,基本上涵盖了当时(2007年)关于访存原理和优化的所有问题。即使今天的CPU又有了进一步的发展,但是依然没有跳出这篇文章的探讨范围。只要是讨论访存优化的文章,基本上都会引用这篇论文。
我们都知道堆栈位于RAM中,现在MCU的RAM相对较大(几十上百K),所以分配的堆栈也是足够大,很多人都不怎么关注这个堆栈的大小。
不定期有小伙伴问:哪里有好的嵌入式项目?怎么才能提高编程水平?有实战项目可以分享一下吗?今天就抽时间给大家整理一些我认为还可以的开源项目,希望对大家有帮助。一 嵌入式综合Awesome Embedded开源地址: {代码...} 这是一个“很棒的嵌入式”开源项目,综合了嵌入式领域各种内容(开源项目)。包括各种单片机,比如...
前面给大家分享过Bootloader从应用角度执行的相关文章,今天从底层原理来给大家描述ARM处理器如何编写Bootloader,以及底层流程。
本文主要讲解什么是Linux内核,以及通过多张图片展示Linux内核的作用与功能,以便于读者能快速理解什么是Linux内核,能看懂Linux内核。
Circle 是一个叫 rsta2 的大佬用 C++ 写的 bare-metal 的树莓派驱动框架,同时支持现存的几乎所有版本树莓派,能够驱动树莓派上的大部分设备,包括 SD 卡控制器、有线和无线网卡、GPIO、USB 控制器及一些常用 USB 设备等。
由于需要对ADC进行驱动设计,因此学习了一下Linux驱动的IIO子系统。本文翻译自《Linux Device Drivers Development 》--John Madieu
ToolKit是一套应用于嵌入式系统的通用工具包,可灵活应用到有无RTOS的程序中,采用C语言面向对象的思路实现各个功能,尽可能最大化的复用代码,目前为止工具包包含:循环队列、软件定时器、事件集。
今天给大家讲解一下我们常用的开源RTOS:FreeRTOS 的许可内容,以及License相关的内容。
软件定时器是用程序模拟出来的定时器,可以由一个硬件定时器模拟出成千上万个软件定时器,这样程序在需要使用较多定时器的时候就不会受限于硬件资源的不足,这是软件定时器的一个优点,即数量不受限制。
自从当年5G视频登上央视走红之后,何同学的视频每一期都会受到极大的关注,尤其是他成立自己工作室之后,每一期的内容都无比硬核。
按键作为单片机的输入设备,可以向单片机输入数据、传输命令等,是设置参数和控制设备的常用接口。所以,学会按键驱动也是初学者必不可少的能力。说到按键驱动程序,大家应该也不陌生,而一般的按键驱动流程图如下
从前面几篇文章,我们了解了 NMT 的基础知识以及 NMT 追踪区域分析的相关内容,本篇文章将为大家介绍一下使用 NMT 协助排查内存问题的案例。
上篇文章 Native Memory Tracking 详解(2):追踪区域分析(一) 中,分享了NMT追踪区域的部分内存类型——Java heap、Class、Thread、Code 以及 GC,本篇图文将介绍追踪区域的其它内存类型以及 NMT 无法追踪的内存。
上篇文章 Native Memory Tracking 详解(1):基础介绍 中,分享了如何使用NMT,以及NMT内存 & OS内存概念的差异性,本篇将介绍NMT追踪区域的部分内存类型——Java heap、Class、Thread、Code 以及 GC。
我们经常会好奇,我启动了一个 JVM,他到底会占据多大的内存?他的内存都消耗在哪里?为什么 JVM 使用的内存比我设置的 -Xmx 大这么多?我的内存设置参数是否合理?为什么我的 JVM 内存一直缓慢增长?为什么我的 JVM 会被 OOMKiller 等等,这都涉及到 JAVA 虚拟机对内存的一个使用情况,不如让我们来一探其中究竟。
金磊 发自 凹非寺 量子位 | 公众号 QbitAI随着现在加入🐑群的人数不断增加,血氧仪成了检测新冠工具里的香饽饽。然鹅,现状却是“一仪难求”……而有人便脑洞大开地想到了DIY的方式,用1块传感器、1块芯片和一部手机,就硬生生地搞了一个血氧仪:瞧,只需要把手指轻轻放到电路板上,手机屏幕在几秒钟内,便会显示血氧饱和度(...
非常高兴参与极术社区和聆思科技举办的开发板申请试用活动并有机会试用,年前导入我们公司新项目上应用(PCB板上丝印文字的视觉AI应用),上手有了聆思科技工程师们编写的详细入门操作的文档,跑例程变得非常简单(设备树的开发模式优点非常多),与硬件的文档和例程配套完善。
摘要:用Rhealstone基准程序方法,分别测试Zephyr和FreeRTOS两个RTOS的六个实时性能指标,发现Zephyr指标较差。考虑到任务切换时间是其它指标的基础,因此以任务切换时间为例,分析两个系统在实现上的差异。目前Zephyr任务切换时间为6.9微秒,FreeRTOS为2.2微秒。分析比较代码后得出,Zephyr设计时考虑到了时间片等因素...