STM32
文章平均质量分 53
骑着蜗牛写代码
这个作者很懒,什么都没留下…
展开
-
STM32升级方法(一):IAP升级
此博客主要用于记录学习过程中的心得以及防止遗忘,下面的一些图片来源于网上,如有侵犯请联系。STM32芯片的升级方式众多,这里简单介绍下,主要有ICP((In-Circuit Programming – ICP)、ISP(In-System Programming)、IAP((In-Application Programming – IAP),定义和区别如下:ISP(In-System Programming)在系统可编程,指电路板上的空白器件可以编程写入最终用户代码, 而不需要从电路板上取下器件,已原创 2020-08-09 13:59:41 · 14186 阅读 · 5 评论 -
STM32f10x启动文件分析
虽然stm32f10x系列使用的都是M3的内核,但是不同芯片的外设也不一致。所以拿到芯片后需要根据具体的芯片来选择相应的启动文件和建立工程,这里并不是通用的。在新建工程的时候需要选择相应的芯片型号,只选择对应的型号就可以吗?当然不是啦!在芯片复位后会调用system_stm32f10x.c中的SystemInit等函数进行初始化。查看这个文件你会里面有很多条件编译,比如配置的时钟有为24M,有为72M的。所以咱们需要进行宏的定义。可以在代码中实现,也可以在魔术棒里面配置。这样的话就能编译和芯片相应的程序原创 2020-07-10 12:35:19 · 580 阅读 · 0 评论 -
STM32芯片命名规则
stm32的芯片命名规则如上,所以拿到一个芯片型号后咱们便可以知道这个芯片的很多信息,如flash的大小、引脚的数量以及内核是cortexM几的等等。有了这些信息咱们就可以把所有的引脚都归纳分类,根据实际的需求把需要使用的引脚找出来,并连接上相应的外设,这就是分配原理图IO,然后就可以画出原理图。在芯片中有数量众多的引脚,咱们怎么知道哪个引脚可用于USART、哪些引脚可用于ADC、哪些引脚可用于外部中断等等。由于stm32芯片的引脚功能都固定了,我们可以查看相应的数据手册的有关引脚部分的内容,即Pino.原创 2020-07-07 18:54:45 · 865 阅读 · 0 评论 -
STM32中ADC简介
ADC(模拟信号转数字信号)在嵌入式中应用还是挺多的,很多传感器上面采集到的信号是模拟信号(常见的温度、光敏传感器),由于模拟信号不过形象,所以很多时候把它转换为便于识别的数值信号。M3中的ADC转换器是12位精度,多达18个通道(16个外部通道+2个内部信号源),各通道的A/D转换可以单次、连续、扫描或间断模式执行,并且每个通道可以单独设置采样时间,ADC转换的结果也可以左对齐或右对齐的方式存放...原创 2020-01-13 12:13:41 · 3222 阅读 · 0 评论 -
STM32中使用usart实现modbus RTU通讯
modbus介绍modbus简介modbus 协议是应用于电子控制器上的一种通用协议,它已经成为通用工业标准。只要遵循此协议,不同厂商生产的控制设备可以连成工业网络,进行集中控制。modbus协议能实现控制器互相之间、控制器经网络和设备之间进行通信。modbus协议是请求响应模式(应答),即控制器向设备发起访问请求,然后设备进行响应。 modbus协议也是主从通信,所以请求只能由主机发起,从设...原创 2020-01-09 21:12:46 · 15201 阅读 · 23 评论 -
STM32系统时钟简介
系统定时器SysTick系统定时器属于CM3的内核外设,而不是片上外设,即只要是使用CM3核的芯片都有这个功能。有关寄存器的定义和部分库函数都在core_CM3.h中定义和实现。定时器是用来计时的,与传统的软件模拟(while或for实现)计时相比,定时器在计时精度上有着明显的优势,并且还不占用CPU的资源,可以让CPU去处理别的事情。定时的原理:向重装载数值寄存器中写入需要定时的数值,然后配...原创 2019-12-31 14:10:08 · 1160 阅读 · 0 评论 -
STM32中断概述
NVIC介绍NVIC是嵌套中断控制器的英文简称,这个功能属于内核。STM32有8个系统异常和60个外部中断,绝大多数异常和中断的优先级都是可以编程的。有关系统异常和外部中断可在标准库stm32f10x.h这个头件查询。在IRQn_Type这个结构体里面包含了全部的异常声明。/** * @brief STM32F10x Interrupt Number Definition, accord...原创 2019-12-29 17:19:50 · 1204 阅读 · 0 评论 -
STM32标准库的介绍以及使用
初始STM32标准库因为基于cortex系列芯片采用的内核都是相同的,区别主要为核外的片上的差异(片上外设主要有芯片生产商来定)。这些差异却导致软件在同内核,不同外设的芯片上移植困难。为了解决不同芯片厂商生产的cortex微控制器软件的兼容性问题,ARM与芯片厂商建立了CMSIS标准。CMSIS层位于硬件层和用户层之间,提供了与芯片生产商无关的硬件抽象层,提供软件接口,疲敝了硬件的差异。CMS...原创 2019-12-27 14:13:08 · 8800 阅读 · 1 评论 -
初步认识STM32的GPIO
STM32作为现在主流的单片机,在很多场所都能见到它的身影(这里我就不细说了,别搞得好像我是个推销员似的~~)。M3中绝大部分的引脚都是GPIO引脚(除了电源、晶振、boot、下载、复位外)。所以GPIO还是需要熟悉下,毕竟也是最基础的东西啦。GPIO是通用输入输出端口的简称,简单来说就是M3可以控制这个引脚为输入或者是输出。M3的GPIO引脚与外部设备连接起来,可以实现与外部设备通讯、控制以及...原创 2019-12-26 18:16:21 · 279 阅读 · 0 评论