- 博客(8)
- 收藏
- 关注
原创 【韦东山】FreeRTOS之ARM架构简明教程
B main指的是PC(R15)寄存器将会被写入main函数的地址,CPU则会从这个地址开始执行程序即执行main函数,BL main与B main的区别在于,其也会执行main函数 但会分成两步,首先会让LR(R14)被写入返回地址(即下一条指令的地址),然后才让PC(R15)寄存器将会被写入main函数的地址。这个系统(如ST的ARM芯片)里也有CPU、内存、Flash(对应于电脑的硬盘),flash用来保存程序,CPU用来运行处程序,内存只有存储功能、不具备运算功能。2.了解汇编指令:如下图。
2025-03-09 21:09:43
333
原创 FreeRTOS理论总结:堆和栈(待续)
如果函数一直在调用但从不返回,堆栈存储有限,很快就会被塞满,塞满后再试图压栈就会导致错误,即堆栈溢出(stack overflow),程序就会崩溃。程序在运行时是以机器码的形式“躺”在内存里的,每一句机器码都有自己的呃位置即地址.CPU执行程序的过程,就是把程序中每一句的机器码挨个拿过来,分析其用处和对应操作。用堆栈来存储函数跳转时需保存的地址,是因为函数调用跳转就如同“套娃”,需要按顺序保存多个返回地址,然后按照相反顺序提取出来,符合堆栈存储先入后出的特点。但寄存器不能过多,会增加设计的成本和复杂性。
2025-03-08 16:23:42
1080
原创 STM32CubeMX应用篇:ESP8266(串口WIFI)及AT协议(待续)
注:第四步中,打开sscom.exe: 用TCP服务器充当网络调试工具,设置本地端口号为“TCPserver”“8080”,点击“侦听”,页面右下角显示正在侦听。
2025-03-07 21:31:53
242
原创 STM32CubeMX理论总结:ESP8266(串口WIFI)及AT协议
2.创建单链接TCP Client、UDP传输、透传、多连接的TCP Server。2.学会阅读并运用ESP8266 AT指令集文档。1.熟悉ESP8266-01s WiFi模块。以下内容来自嵌入式全栈课。esp-01s引脚图→。
2025-03-07 16:21:12
314
原创 STM32CubeMX理论总结:串口通信
如图,串行需要八个时钟才能将数据发送,并行只需在一个时钟下即可将数据完整传输和接收。简而言之,异步通信两端有独立时钟线,同步通信时钟信号一致。以下内容来自RTOS双架构课。2.全双工、半双工和单工。1.串行通信和并行通信。3.同步通信和异步通信。
2025-03-05 20:38:31
317
原创 【keysking】STM32CubeMX理论总结:I2C通信
③主机传输地址:主机在时钟线上产生一个恒定频率的时钟脉冲信号,主机与从机依靠时钟线上的脉冲信号来同步对数据线的读写(当时钟线处于低电平时,主机设置数据线的电平;→可支持多设备通信,一主多从(eg.使用AHT20传感器,将数据显示在OLED上,两个从机:AHT20和OLED),像IIC这种支持多个设备进行通信的通信协议成为总线协议。⑤从机传输数据:数据线的控制权在从机手里,从机拥有主机职能(时钟线低电平时从机设置数据线;时钟线高电平时主机读取数据线,如此反复直到发送完一字节),如下图。
2025-03-04 11:53:38
879
原创 【keysking】STM32CubeMX理论总结:时钟源&时钟树
1.FCLK自由运行时钟:当为了省电,STM32进入低功耗模式之一的“停止模式”时,AHB总线停止运行,HCLK停止传输时钟脉冲,连接到AHB总线的外设全部停止运行;1.HSI(高速内部时钟)/HSE(高速外部时钟):以HCLK为核心的时钟树的时钟源,作为选择接入,接入的数值称为SYSCLK(system clock系统时钟)5.独立的小时钟树:其时钟源是LSI(低速内部时钟)与LSE(低速外部时钟)或HSE的128分频,挂着的外设是RTC实时时钟和IWDG(看门狗),如下图。
2025-03-02 15:50:29
573
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人