STM32开发指南,超详细学习汇总资料
STM32入门:The Insider's Guide to Stm32(中英) https://forum.mianbaoban.cn/topic/60478_1_1.html文档主要研究Cortex-m3 和STM32 的架构和实现细节。当然你不要期望这篇文章能给你的STM32 编程水平有很大的提高,这只是作为入门的一篇文档,如果你已经用过STM32 进行编程,但还对里面的某些架构或具体实现细节不太清楚,也许这篇文章能给你带来意外收获。零死角玩转stm32 (初级篇,中级篇,高级篇,系统篇) https://forum.mianbaoban.cn/topic/62190_1_1.html21天学会嵌入式开发STM32 https://forum.mianbaoban.cn/topic/22840_1_1.htmlSTM32嵌入式微控制器快速上手 https://www.mianbaoban.cn/download/d_80606.html大话STM32 https://www.mianbaoban.cn/download/6947.htmlSTM32入门篇之通用定时器彻底研究 https://www.mianbaoban.cn/download/25.htmlSTM32封装库 https://www.mianbaoban.cn/download/265.html解析STM32的库函数 https://forum.mianbaoban.cn/topic/58115_1_1.htmlSTM32固件库使用手册中文版 https://forum.mianbaoban.cn/topic/61447_1_1.htmlSTM32 超详实战知识汇总 https://forum.mianbaoban.cn/topic/72473_1_1.html
STM32 开发指南(库函数+寄存器) https://www.mianbaoban.cn/download/19097.html介绍了STM32开发板的实验平台,实验平台的硬件资源介绍,介绍了RVMDK软件入门,STM32开发需要具备的基础知识,以及实验例子。 STM32不完全手册 https://www.mianbaoban.cn/download/20106.html基于MDK的STM32处理器开发应用 https://www.mianbaoban.cn/download/8217.htmlSTM32 HAL 库开发实战指南—基于F7 https://www.mianbaoban.cn/download/18852.htmlSTM32数字示波器源码+数字信号处理教程、配套实例 https://www.mianbaoban.cn/download/22616.htmlstm32f103 最小系统PCB&原理图 https://www.mianbaoban.cn/download/d_34332.htmlSTM32Lx低功耗实战设计 https://www.mianbaoban.cn/download/3461.htmlSTM32在马达控制中的应用 https://www.mianbaoban.cn/download/3415.htmlSTM32串口实现485双机通信的原理 https://forum.mianbaoban.cn/topic/64201_1_1.html一张图认识单片机STM32时钟 https://forum.mianbaoban.cn/topic/73752_1_1.html
原来工程师大牛阅读STM32参考手册的方法是这样的
STM32F103xxx参考手册》不需要全部阅读——没有时间的。建议选读,但是前几章必读。存储器和总线架构、电源控制、备份寄存器、复位和时钟控制,通用和复用功能I/O,中断和时间等等前几章一定要花时间阅读。后面章节,讲述的是具体的功能模块设计。如果我们用到哪个模块,就可以去阅读哪个模块。
《STM32固件库使用手册》主要是为了简化编程学习思路(仅供参考)
步骤一, 安装完STM32学习的软件,比如J-Link、Keil for ARM(MDK)、ISP(如果需要从串口下载的话)。
步骤二, 挑选部分例程的HEX,比如LED灯的例程HEX文件,下载到芯达STM32开发板中,观察两个LED灯的闪烁情况。
步骤三, 准备几个常用的文档,比如《STM32的用户手册》,《STM32固件库使用手册》等文档,用于平时查阅。
步骤四, 开始查看例程的编写,看看例程是如何写的,自己可否修改下例程,达到自己想要的效果呢?芯达STM32开发板的光盘中为大家提供
了丰富的例程代码,可以参考。您一定可以修改出更精彩的例程!
步骤五, Ucos-II的移植,是否需要试一下?
恭喜你,至此,你已经可以自如进行独立的开发了。最后一步,给自己一个目标(项目),把它实现出来!
第1步:熟悉调试软件
对初学者来说,我们至少需要安装两个软件:J-Link驱动软件、MDK(就是原来的Keil)软件。这两个软件在安装软件的过程可以查
比如LED灯的例程HEX文件,下载到STM32开发板中,观察两个LED灯的闪烁情况。灯在闪烁,就说明你刚才的操作已经把HEX文件烧写到闪存中了。
该步骤要达到的目标:熟悉调试软件,如烧写HEX出现问题,可简单判别问题所在,并独立解决。
第2步:GPIO编程
这是第一次接触固件库的编程,一定要硬着头皮去了解固件库。建议大家尽量去用固件库。而不是避开固件库自己写代码——这样只能在学习中才会发生。实际的项目中,代码成百上千个,如何一个一个自己写?调用固件库中的函数来完成,才是王者之道。
GPIO本身的编程实际上很简单:
1、设置GPIO口的引脚为输入或者输出模式。我们在进行点灯代码的时候,一般设置为推挽输出模式。
2、操作寄存器,往寄存器里置1或者清零操作——这个步骤,固件库已经提供了专门的GPIO_SetBits函数和GPIO_ResetBits函数,我们只要去调用即可实现对IO口的置1和清零。
3、实现多种花样的LED闪动,使得自己熟悉GPIO的编程过程。该步骤要达到的目标:熟悉调试软件,如烧写HEX出现问题,可简单判别问题所在,并独立解决。
第3步:开始全新的STM32深入研究
经过以上调试软件的熟悉和GPIO口的编程调试后,相信您已经对STM32有一定的了解。至少知道如何利用STM32的固件库去写一
个代码。
OK,下面我们将开始全新的STM32深入研究。在这个阶段,将要接触到串口编程、TFT液晶屏驱动编程、定时器编程、串行外设接口SPI编程、存储器编程、SD卡与文件系统移植、USB读写、UCOS移植等,有精力还可以研究其他外设。
相关问答
会51单片机,如何快速学习使用STM32单片机?
单片机其实都是相通的,会了一种单片机,对着数据手册查看一下寄存器的设置可以快速的入手其他型号的单片机。会51单片机,说明有单片机的基础,再去学习STM32单...
近来学习STM32,发现一个奇怪的问题,32位的系统,存储器地址空...
在单片机中,存储的容量都以字节(byte)为单位的,就是说STM32是32位的,其寻址范围...别忘了查阅具体的芯片手册来了解详情STM32虽然核心是32位的,但实际可用的闪...
stm32步进电机控制系统
你这个题目我在我的群里有人做了!是大学的毕设他用的是stm32系列单片机不知道你的arm芯片是什么?也不知道具体的硬件电路是什么样的?一般来说,你...
stm32寻址空间?
这个是存储映射,stm32单片机作为32位单片机理论上是可以寻址4GB存储空间的,这个1M是预留出来的,只是一个映射,没有实际的物理存储空间与之对应,你可以看看st...
VDD是什么意思?
我一直很不喜欢那些把JTAG/SWD之类debug接口的Vref写成VCC或者VDD的,这完全就是在误导人。你看STLink的手册里怎么描述的,人家叫TVCC,TargetVCC,什么意思啊...
apb1和apb2的区别?
...APB1负责DA,USB,SPI,I2C,CAN,串口2345,普通TIM。APB2负责AD,I/O,高级TIM,串口1。2、所支持速度不同APB1支持低速状态下的工作,APB2支持高速...
stm32电源端耐压值是多少?
stm32的供电电压在外部看来一般就是外设的3.3V供电,ADC的参考电压供电内核电压一般1.2-1.8V左右,但不需要自行引入STM32为了简化外围电路设计一般是不额外引...
STM32无法通过串口烧录程序?
上的串口工作正常,测试方法,打开一个串口调试助手,短接串口线的TX和RX,然后串口调试助手发送一个字符,比如a,如果串口通信正常,你能在串口调试助手中...请确...
STM32定义一个BYTE实际占用多少存储空间?又如何定义一个bit...
无法直接定义一个bit,不过你可以在某个固定地址开辟一个空闲区域(可以是一个Byte,也可以是多个Byte),然后用STM32的位访问方式去访问这个区域的指定位(bit),具体...
stm32数组越界一定会进硬件错误中断吗?
stm32数组越界一定会进硬件错误中断的。可以从以下几个方面查找原因:1.意外中断。是否打开了某个中断,但是没有响应和清除中端标志,导致程序一直进入中断,...