STM32
文章平均质量分 74
liyaoyao_yy
这个作者很懒,什么都没留下…
展开
-
STM32的通用定时器
STM32 的定时器功能十分强大,有 TIME1 和 TIME8 等高级定时器,也有 TIME2~TIME5 等通用定时器,还有 TIME6 和TIME7 等基本定时器。STM32 的通用定时器是一个通过可编程预分频器(PSC)驱动的 16 位自动装载计数器(CNT)构成。STM32 的通用定时器可以被用于:测量输入信号的脉冲长度(输入捕获)或者产生输出波形(输出比较和 PWM)等。转载 2015-08-24 10:43:56 · 998 阅读 · 0 评论 -
STM32官方固件库简介
ST(意法半导体)为了方便用户开发程序,提供了一套丰富的 STM32 固件库。固件库就是函数的集合,固件库函数的作用是向下负责与寄存器直接打交道,向上提供用户函数调用的接口(API) 。固件库将这些寄存器底层操作都封装起来,提供一整套接口(API)供开发者调用,大多数场合下,你不需要去知道操作的是哪个寄存器,你只需要知道调用哪些函数即可。ARM 公司为了能让不同的芯片公司生产的 Corte转载 2015-08-24 11:20:05 · 3673 阅读 · 0 评论 -
Cortex-M3处理器的舞台
ST(意法半导体)为了方便用户开发程序,提供了一套丰富的 STM32 固件库。固件库就是函数的集合,固件库函数的作用是向下负责与寄存器直接打交道,向上提供用户函数调用的接口(API) 。固件库将这些寄存器底层操作都封装起来,提供一整套接口(API)供开发者调用,大多数场合下,你不需要去知道操作的是哪个寄存器,你只需要知道调用哪些函数即可。ARM 公司为了能让不同的芯片公司生产的 Corte转载 2015-08-24 11:21:17 · 564 阅读 · 0 评论 -
STM32独立看门狗
STM32 的独立看门狗由内部专门的 40Khz 低速时钟驱动,即使主时钟发生故障,它也仍然有效。看门狗的原理:单片机系统在外界的干扰下会出现程序跑飞的现象导致出现死循环,看门狗电路就是为了避免这种情况的发生。看门狗的作用就是在一定时间内(通过定时计数器实现)没有接收喂狗信号(表示 MCU 已经挂了),便实现处理器的自动复位重启(发送复位信号) 。在键值寄存器(IWDG_KR)中写转载 2015-08-24 10:48:12 · 696 阅读 · 0 评论 -
STM32外部中断
STM32 IO 口中断的一些基础概念。STM32 的每个 IO 都可以作为外部中断的中断输入口,这点也是 STM32 的强大之处。STM32F103 的中断控制器支持 19 个外部中断/事件请求。每个中断设有状态位,每个中断/事件都有独立的触发和屏蔽设置。STM32F103 的19 个外部中断为:线 0~15:对应外部 IO 口的输入中断。线 16:连接到 PVD 输出。转载 2015-08-24 10:53:43 · 556 阅读 · 0 评论 -
STM32的ADC简介
STM32 拥有 1~3 个 ADC (STM32F101/102 系列只有 1 个 ADC) ,这些 ADC 可以独立使用,也可以使用双重模式(提高采样率)。STM32 的 ADC 是 12 位逐次逼近型的模拟数字转换器。它有 18 个通道,可测量 16 个外部和 2 个内部信号源。各通道的 A/D 转换可以单次、连续、扫描或间断模式执行。 ADC 的结果可以左对齐或右对齐方式存储在 16 位数转载 2015-08-24 11:28:41 · 5542 阅读 · 1 评论 -
STM32 CAN
CAN 是 Controller Area Network 的缩写(以下称为 CAN),是 ISO 国际标准化的串行通信协议。在当前的汽车产业中,出于对安全性、舒适性、方便性、低公害、低成本的要求,各种各样的电子控制系统被开发了出来。由于这些系统之间通信所用的数据类型及对可靠性的要求不尽相同,由多条总线构成的情况很多,线束的数量也随之增加。为适应“减少线束的数量”、“通过多个 LAN,进行大量转载 2015-08-24 11:32:23 · 879 阅读 · 0 评论 -
STM32的ADC的DMA方式
之前了解了ADC的单独使用,由于AD的采样和处理对CPU的消耗较大,单独使用AD会对CPU 的很有要求void Adc_Init(void){ ADC_InitTypeDef ADC_InitStructure; GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA原创 2015-09-08 17:01:48 · 1643 阅读 · 0 评论 -
STM32时钟系统
众所周知,时钟系统是 CPU 的脉搏,就像人的心跳一样。所以时钟系统的重要性就不言而喻了。 STM32 的时钟系统比较复杂,不像简单的 51 单片机一个系统时钟就可以解决一切。于是有人要问,采用一个系统时钟不是很简单吗?为什么 STM32 要有多个时钟源呢? 因为首先STM32 本身非常复杂,外设非常的多,但是并不是所有外设都需要系统时钟这么高的频率,比如看门狗以及 RTC 只需要几十 k转载 2015-08-24 11:18:11 · 599 阅读 · 0 评论 -
STM32串口简介
串口作为 MCU 的重要外部接口,同时也是软件开发重要的调试手段, 其重要性不言而喻。STM32 的串口资源相当丰富的,功能也相当强劲。ALIENTEK 战舰 STM32 开发板所使用的 STM32F103ZET6 最多可提供 5 路串口,有分数波特率发生器、支持同步单线通信和半双工单线通讯、支持 LIN、 支持调制解调器操作、 智能卡协议和 IrDA SIR ENDEC 规范、具有 DMA等。转载 2015-08-24 10:54:42 · 1869 阅读 · 0 评论 -
STM32窗口看门狗
窗口看门狗(WWDG)通常被用来监测由外部干扰或不可预见的逻辑条件造成的应用程序背离正常的运行序列而产生的软件故障。除非递减计数器的值在 T6 位 (WWDG->CR 的第六位)变成 0 前被刷新,看门狗电路在达到预置的时间周期时,会产生一个 MCU 复位。在递减计数器达到窗口配置寄存器(WWDG->CFR)数值之前,如果 7 位的递减计数器数值(在控制寄存器中)被刷新, 那么也将产生一个 M转载 2015-08-24 10:46:43 · 785 阅读 · 0 评论 -
STM32定时器输入捕获
通用定时器作为输入捕获的使用。我们将用 TIM5 的通道 1 (PA0)来做输入捕获,捕获 PA0 上高电平的脉宽(用 WK_UP 按键输入高电平),通过串口打印高电平脉宽时间输入捕获简介输入捕获模式可以用来测量脉冲宽度或者测量频率。 STM32 的定时器,除了 TIM6 和 TIM7,其他定时器都有输入捕获功能。STM32 的输入捕获,简单的说就是通过检测 TIMx_CH转载 2015-08-24 10:39:31 · 3021 阅读 · 0 评论 -
STM32定时器PWM输出
脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术。简单一点,就是对脉冲宽度的控制。STM32 的定时器除了 TIM6 和 7。其他的定时器都可以用来产生 PWM 输出。其中高级定时器 TIM1 和 TIM8 可以同时产生多达 7 路的 PWM 输出。而通用定时器也能同时产生多转载 2015-08-24 10:40:54 · 1757 阅读 · 0 评论 -
STM32的DAC
STM32 的 DAC 模块(数字/模拟转换模块)是 12 位数字输入,电压输出型的DAC。DAC 可以配置为 8 位或 12 位模式,也可以与 DMA 控制器配合使用。DAC工作在 12 位模式时,数据可以设置成左对齐或右对齐。DAC 模块有 2 个输出通道,每个通道都有单独的转换器。在双DAC 模式下,2 个通道可以独立地进行转换,也可以同时进行转换并同步地更新 2 个通道的输出。DAC 可以转载 2015-08-24 11:29:39 · 2369 阅读 · 0 评论 -
STM32的RTC实时时钟
STM32 的实时时钟(RTC)是一个独立的定时器。STM32 的 RTC 模块拥有一组连续计数的计数器,在相应软件配置下,可提供时钟日历的功能。修改计数器的值可以重新设置系统当前的时间和日期。RTC 模块和时钟配置系统(RCC_BDCR 寄存器)是在后备区域,即在系统复位或从待机模式唤醒后 RTC 的设置和时间维持不变。但是在系统复位后,会自动禁止访问后备寄存器和 RTC,以防止对后备区转载 2015-08-24 11:26:44 · 2245 阅读 · 0 评论 -
STM32中断优先级
CM3 内核支持 256 个中断,其中包含了 16 个内核中断和 240 个外部中断,并且具有 256级的可编程中断设置。但 STM32 并没有使用 CM3 内核的全部东西,而是只用了它的一部分。STM32 有 84 个中断,包括 16 个内核中断和 68 个可屏蔽中断,具有 16 级可编程的中断优先级。而我们常用的就是这 68 个可屏蔽中断,但是 STM32 的 68 个可屏蔽中断,在 STM3转载 2015-08-24 11:17:16 · 631 阅读 · 0 评论 -
STM32系统架构
这里所讲的 STM32 系统架构主要针对的 STM32F103 这些非互联型芯片STM32 主系统主要由四个驱动单元和四个被动单元构成。四个驱动单元是:内核 DCode 总线; 系统总线;通用 DMA1;通用 DMA2;四被动单元是:AHB 到 APB 的桥:连接所有的 APB 设备;内部 FlASH 闪存;内部 SRAM;FSMC;下面我们具体转载 2015-08-24 11:18:55 · 2568 阅读 · 0 评论 -
STM32的GPIO
控制 STM32 开发板上的两个 LED 实现一个类似跑马灯的效果,在固件库中,GPIO 端口操作对应的库函数函数以及相关定义在文件stm32f10x_gpio.h 和 stm32f10x_gpio.c 中。STM32 的 IO 口相比 51 而言要复杂得多,所以使用起来也困难很多。 首先 STM32 的 IO 口可以由软件配置成如下 8 种模式:1、输入浮空2、输入上拉转载 2015-08-24 11:24:39 · 568 阅读 · 0 评论 -
STM32 SPI
SPI 是英语 Serial Peripheral interface 的缩写,顾名思义就是串行外围设备接口。是 Motorola首先在其 MC68HCXX 系列处理器上定义的。 SPI 接口主要应用在 EEPROM, FLASH,实时时钟,AD 转换器,还有数字信号处理器和数字信号解码器之间。SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时转载 2015-08-24 11:31:16 · 1256 阅读 · 0 评论 -
串口中断接收方式详细比较
串口调试,以前也调过,只是没这么深入的琢磨过,最近又在弄,感觉串口很基本,也很有学问,要是出现BUG可能导致系统奔溃。。。现在贴出来,欢迎拍砖指正!!! 本例程通过PC机的串口调试助手将数据发送至STM32,STM32通过SP3232芯片采用中断接收方式完成,然后接收数据后将所接收的数据又发送至PC机,具体下面详谈。。。 实例一: void USART1_IRQHandler(u转载 2015-10-08 09:38:19 · 1731 阅读 · 0 评论