
STM32
咸菜白饭
这个作者很懒,什么都没留下…
展开
-
新建STM32工程步骤
1. 新建文件夹 DOC文件夹: 可以存放readme.txt等项目文档 Library文件夹: 可以存放ST库源码,直接复制ST库的源代码到Library文件夹,另外startup只需复制和芯片对应的.s文件即可,一般存放在-ST库3.5.0源码STM32F10x_StdPeriph_Lib_V3.5.0LibrariesCM转载 2015-05-07 23:24:12 · 565 阅读 · 0 评论 -
调通STM32的串口ISP的经验
1、Boot0需接高(注意不要超过3.6V,非5V容忍脚),Boot1(PB2)需接低(电阻下拉或直接接地)。2、VDDA/VSSA一定要接好,电压符合要求(2.4~3.6V).即使不用ADC也要接,因为VDDA还为POR/OSC/PLL等“模拟”部分供电。3、检查复位脚的电位是否正常,JTAG仿真器有可能复位系统。4、检查TXD/RXD信号通路。当然要畅通,呵呵。转载 2015-05-06 21:37:48 · 2241 阅读 · 0 评论 -
STM32中如何计算波特率
波特率的计算 STM32下的波特率和串口外设时钟息息相关,USART 1的时钟来源于APB2,USART 2-5的时钟来源于APB1。在STM32中,有个波特率寄存器USART_BRR,如下: STM32串口波特率通过USART_BRR进行设置,STM32的波特率寄存器支持分数设置,以提高精确度。USART_BRR的前4位用于表示小数,后12位用于表示整数。但是它还不转载 2015-05-07 23:24:09 · 5064 阅读 · 0 评论 -
stm32串口接收、TF卡存储丢数现象解析与总结
stm32串口接收、TF卡存储丢数现象解析与总结问题:待接受的串口数据是9600波特率,一行一行的发送,最长一行不超过1024字节。 在利用stm32的串口进行数据接收,设置两个1024大小的buf,轮流接收,轮流写入TF卡, 为什么中间总会出现完整的一行无发记录下来的问题呢。解析:我确定是中间的数据丢失,我估计很大原因就是接收和写保护偏差问题。 刚才用串口调试攻击分别以1转载 2015-05-07 23:08:29 · 2709 阅读 · 0 评论 -
STM32 简单多任务调度
STM32的开发目前大多数还开处于“裸奔”的阶段,处于开发成本的考虑,可能还未嵌入任何的RTOS系统,由于没有操作系统的支持,因而不能方便的对多任务进行调度和管理,在main函数中你可能会写成如下方式:int main(void){ while (1) { Task1(); // 调用任务转载 2015-05-07 21:56:19 · 10732 阅读 · 1 评论 -
stm32 堆和栈(stm32 Heap & Stack)
关于堆和栈已经是程序员的一个月经话题,大部分有是基于os层来聊的。 那么,在赤裸裸的单片机下的堆和栈是什么样的分布呢?以下是网摘: 刚接手STM32时,你只编写一个int main(){while(1);}BUILD://Program Size: Code=340 RO-data=252 RW-data=0 ZI-转载 2016-06-28 11:41:47 · 468 阅读 · 0 评论 -
Bootloader设计(YModem协议)
相信很多人都希望,不开盖就可以对固件进行升级吧,就像手机那些。下文中的bootload就来实现这样的功能。 前段时间有项目关于Bootload设计。所以就仔细的去了研究了一翻。以前都是用的stm32官方的,没有去深入了解。这次做完了过后,发现官方的版本存在一些问题。比如说YModem传送过程中,完全没有对数据区进行效验,只是核对了下编号,就进行烧写。整个程序完全为阻塞式,浪转载 2016-07-13 09:47:08 · 1734 阅读 · 0 评论