STM32的中断系统 STM32具有十分强大的中断系统,将中断分为了两个类型:内核异常和外部中断。并将所有中断通过一个表编排起来,下面是stm32中断向量表的部分内容: 上图 3到6这个区域被标黑了,这个区域就是内核异常。内核异常不能够被打断,不能被设置优先级(也就是说优先级是凌驾于外部中断之上的) ...
分类:
其他好文 时间:
2018-08-14 14:45:50
阅读次数:
148
工欲善其事必先利其器! 这篇文章介绍各种IDE。 1. Visual Studio visual studio 可以开发和调试很多种应用程序,包括 嵌入式(stm32、NXP、Freescale 等,数量1000+) 1.1 visual stdio - 嵌入式 软件:VS + VisualGDB ...
分类:
其他好文 时间:
2018-08-14 14:35:12
阅读次数:
158
简介: CAN是Controller Area Network,是 ISO 国际标准化的串行通信协议。 CAN 控制器根据两根线上的电位差来判断总线电平。总线电平分为显性电平和隐性电平,二者必居其一。发送方通过使总线电平发生变化,将消息发送给接收方。 STM32 自带的是 bxCAN,即基本扩展 C ...
分类:
其他好文 时间:
2018-08-14 00:57:05
阅读次数:
166
STM32的时钟系统 相较于51单片机,stm32的时钟系统可以说是非常复杂了,我们现在看下面的一张图: 上图说明了时钟的走向,是从左至右的从时钟源一步步的分配给外设时钟。需要注意的是,上图左侧一共有四个时钟源,从上到下依次是: 高速内部时钟(HSI): 以内部RC振荡器产生,频率为8Mhz,但相较 ...
分类:
其他好文 时间:
2018-08-13 19:43:57
阅读次数:
186
最近将两年前买的STM32F103最小系统板拿出来准备学习,安装完MDK5后写了一个点亮LED程序,发现无法下载。查了下购买评论,原来这种板子发货时已经锁定了flash。鼓捣了2、3天,最后采取的办法是通过sram启动方式,来运行一个flash解锁程序,程序运行后就可以将板子恢复。在此将该过程记录下 ...
分类:
其他好文 时间:
2018-08-12 17:22:30
阅读次数:
461
在STM32的固件库和提供的例程中,到处都可以见到assert_param()的使用。如果打开任何一个例程中的stm32f10x_conf.h文件,就可以看到实际上assert_param是一个宏定义; 在固件库中,它的作用就是检测传递给函数的参数是否是有效的参数。 举例说明: assert_par ...
分类:
其他好文 时间:
2018-08-07 13:15:05
阅读次数:
271
主要原因,以前用的是J-LINK ,现在用的是ST-LINK 。MDK默认是J-LINK 。所以在改了下载器。 ...
分类:
其他好文 时间:
2018-08-06 14:36:17
阅读次数:
712
很多时候,我们使用串口或USB接收数据时,往往不知道PC端会发多长的数据下来, 为了解决这个不定数据接收问题,在此各提供一个解决思路。 串口数据不定接收: 由于STM32单片机带IDLE中断,所以利用这个中断,可以接收不定长字节的数据, 由于STM32属于ARM单片机,所以这篇文章的方法也适合其他的 ...
分类:
其他好文 时间:
2018-08-03 18:48:24
阅读次数:
490
在数字信号系统中,大部分传感器信号会被转换成电压信号,经由ADC转换成易于计算机存储,处理的数字编码,由计算机处理之后,DAC输出电压模拟信号以驱动器件,例如音频信号的采集和还原。 Stm32的DAC外设的数字输入信号的分辨率可为8位或12位,具有两个输出通道,每个通道都可以使用DMA,DAC能出错 ...
分类:
其他好文 时间:
2018-08-01 14:14:41
阅读次数:
1656
目标:利用TIM3结合普通GPIO实现一个1--100HZ的可控频率,误差在0.5HZ以内 1.在这里我是使用STM32CuBeMx建立的工程,工程建立过程就不细说了,这里主要讲解实现部分。 我使用的是STM32F07系列外部晶振为8MHz,CuBeMx建立的工程有一个好处就是可以减少很多初始化的步 ...
分类:
其他好文 时间:
2018-07-27 19:13:15
阅读次数:
851