![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
STM32单片机
生命随心所欲,但不能随波逐流
骐骥一跃,不能十步;驽马十驾,功在不舍
展开
-
外部中断EXTI
原文参考:一,STM32中断介绍相比简单的51单片机,STM32的每个IO口都可以作为外部中断输入STM32中断控制器支持19个外部中断/事件请求: 线0-15:外部IO口输入中断 线16:连接到PVD输出 线17:连接到RTC闹钟事件 线18:连接到USB唤醒事件每个外部中断线可配置独立的触发方式,触发/屏蔽.专用状态位...原创 2019-10-23 10:28:55 · 2125 阅读 · 0 评论 -
STM32的端口复用功能RCC_APB2Periph_AFIO
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOE | RCC_APB2Periph_AFIO,ENABLE);端口复用意思就是,这个I/O端口被使用了,但是这个I/O口可能包含USART,IIC等功能我现在需要用,通过I/O口复用,可以在另外一个I/O口使用USART,IIC等功能。I/O口不是随意复用,而是有专门的映射关系,如下图:STM32...原创 2019-10-21 15:44:51 · 24494 阅读 · 0 评论 -
STM32中嵌套向量中断控制器的使用
举例:例如A与B两个中断,设置他们的中断分组为2,可以看到抢占优先级和相应优先级位数都是2位。那么A和B的抢占优先级与相应优先级都是0-3,因为是两位可以是00 01 10 11,即0,1,2,3.如果数值越小,那么优先级越高,抢占优先级高的可以打断低的,但是如果在抢占优先级相同情况下,响应优先级高的就不能打断低的,只有在同时发生情况下,谁的响应优先级越高,谁就先执行。程序设置如...原创 2019-10-19 16:29:07 · 641 阅读 · 0 评论 -
什么是ROM、PROM、EPROM、EEPROM、FALSH、SRAM、DRAM、SDRAM、DDR SDRAM?
前言之前一直对各种ROM、RAM比较模糊,尤其看到ROM、PROM、EPROM、EEPROM、FALSH、SRAM、DRAM、SDRAM、DDR SDRAM这么多简称,更是晕成狗了,本文好好的总结下上述的半导体存储器,也算了却心中的懵逼之惑。简称(1)ROM类ROM:Read Only Memory,只读存储器;PROM:Programmable Read Only Memory,可编...转载 2019-10-15 09:40:51 · 1025 阅读 · 0 评论 -
STM32中SRAM与ROM,PROM,EPROM,EEPROM区别
SRAM:为stm32中的运行存储,断电则丢失。在微机的发展初期,BIOS都存放在ROM(Read Only Memory,只读存储器)中。ROM:内部的资料是在ROM的制造工序中,在工厂里用特殊的方法被烧录进去的,其中的内容只能读不能改,一旦烧录进去,用户只能验证写入的资料是否正确,不能再作任何修改。如果发现资料有任何错误,则只有舍弃不用,重新订做一份。ROM是在生产线上生产的,由于...原创 2019-10-15 08:49:46 · 2347 阅读 · 0 评论 -
kiel 5中添加固件库的方式
前一篇博文有固件库的下载介绍,这里介绍固件库具体的添加方式1.新建文件夹,里面包含四个空的文件夹2.CMSIS中需要添加的文件,用两幅图表示,包含具体路径,一共5个函数3. Startup需要添加的函数有8个,如图4. Lib下需要添加2个文件夹,inc与src5. User文件夹下包含4个函数文件夹函数添加完成以后,需要在KIEL 5中进行添加...原创 2019-10-12 16:19:56 · 12110 阅读 · 1 评论 -
STM32中固件库的下载
需要下载固件库的芯片:STM32F103VCT6方法1:直接进入:https://www.st.com/en/embedded-software/stm32-standard-peripheral-libraries.html方法2:如下1.首先打开ST公司的主页:https://www.st.com/content/st_com/en.html2.然后在选择微处理器下的STM...原创 2019-10-12 12:05:06 · 1314 阅读 · 1 评论 -
STM32F103芯片的系统架构
1.APB1=36MHZ APB2=72MHZ在单片机外设8MHZ的晶振,经过PLL倍频锁相环,可以将8MHZ的晶振转换成72MHZ而72MHZ的晶振也可以分频为其它频率,提供给APB1与APB2进行使用另外外设的8MHZ晶振也可以直接进行分频操作。...原创 2019-10-11 15:08:59 · 2566 阅读 · 0 评论 -
TTL肖特基触发器是什么?
TTL肖特基触发器其实可以理解为用肖特基管构成的施密特触发器作用简单说就是将相对缓慢变化的模拟信号变成矩形信号,便于后面读取。这里有一个阈值电压的概念,比如从低到高达到多少才会导通,从高到底多少才会关闭...原创 2019-10-11 13:57:20 · 10564 阅读 · 0 评论 -
STM32中GPIO口的I/O口硬件特性
每个GPIO口都包含:1.GPIO_BSRR 32位的置位复位寄存器2.GPIO_BRR 16位的复位寄存器3.GPIO_CRL 32位的低位配置寄存器4.GPIO_CRH 32位的高位配置寄存器5.GPIO_IDR 查看引脚电平状态用的寄存器6.GPIO_ODR 引脚电平输出的寄存器。7.GPIO_LCKR 32位锁定寄...原创 2019-10-11 13:40:58 · 589 阅读 · 0 评论 -
STM32单片机的复用推挽输出与复用开漏输出的区别
复用开漏输出、复用推挽输出:可以理解为GPIO口被用作第二功能时的配置情况(即并非作为通用IO口使用) 最后总结下使用情况: 在STM32中选用IO模式 (1) 浮空输入_IN_FLOATING ——浮空输入,可以做KEY识别,RX1 (2)带上拉输入_IPU——IO内部上拉电阻输入 (3)带下拉输入_IPD—— IO内部下拉电阻输入 (4) 模拟输入_AIN ——应用ADC模拟输...原创 2019-10-11 11:56:01 · 5915 阅读 · 0 评论 -
KIEL 5如何烧录程序到STM32芯片
选用的烧录设备为:J-LINKSTM32芯片型号:STM32F103VCT6 内存256K,设备系列的命名规则可以找到相关信息stm32与jlink需要连接四根线SWDIO,SWCLK,VCC,GND在AD原理图中可以看到接下来配置KEIL 5中信息点击进入选择J-LINK,然后进入设定的界面,选择芯片的存储类型选择erase sector(...原创 2019-10-10 16:35:53 · 29855 阅读 · 2 评论 -
stm32的推挽输出以及开漏输出的区别
左图:为推挽输出,out为单片机对外的输出,这两个三极管,上面是NPN管,下面是PNP管,NPN管是基极加高电平导通,PNP管是基极加低电压导通。当比较器(黄色三角形)为高电平时,上面的NPN管导通,而下面的PNP管截止,out输出一个高电平当比较器(黄色三角形)为低电平时,上面的NPN管截止,而下面的PNP管导通,OUT输出一个低电平右图开漏输出,先理解集电极开漏输出...原创 2019-10-10 14:20:00 · 1980 阅读 · 0 评论 -
STM32的IO口模式配置即GPIO口的设定
四种输入模式上拉输入:通过内部的上拉电阻将一个不确定的信号通过一个电阻拉到高电平。 下拉输入:把电压拉到GND。与上拉原理相似。 浮空输入:引脚内部什么都不接,处于浮空模式下,电平状态是不确定的。外部信号输入什么,IO口就是什么状态。 模拟输入:接收到的是连续的模拟信号,一般用于AD转换。四种输出模式推挽输出:可以输出高低电平,连接数字器件。在stm32中推挽电路由两个MOS管组成...原创 2019-10-10 10:39:48 · 1880 阅读 · 0 评论 -
STM32与jink连接烧录程序
文章参考:https://blog.csdn.net/qq_36015876/article/details/87916947stm系列下载方式:stm8 swim(4线)下载模式stm32 swd(4线)下载模式1)Jlink一款调试ARM CPU的调试设备,JTAG和swd是该设备调试CPU的两种工作方式;两种方式的调试效果差不多,但是JTAG所需要的线要多一些,稳定性和速度要快...原创 2019-10-10 09:40:46 · 2858 阅读 · 0 评论 -
SRAM与DRAM区别
SRAM表示:静态随机存取存储器(StaticRandom-AccessMemory,SRAM)是随机存取存储器的一种。所谓的“静态”,是指这种存储器只要保持通电,里面储存的数据就可以恒常保持。DRAM表示:动态随机存取存储器(DRAM)里面所储存的数据就需要周期性地更新。但是当电力供应停止时,SRAM储存的数据还是会消失(被称为volatile memory)这与在断电后还能储存...原创 2019-09-28 20:00:20 · 1200 阅读 · 0 评论 -
RCC时钟与RTC时钟区别
1.RCC是STM32的时钟控制器,可开启或关闭各总线的时钟,在使用各外设功能必须先开启其对应的时钟,没有这个时钟内部的各器件就不能运行。2.RTC是STM32内部集成的一个简单的时钟(计时用),如果不用就关闭,用的话先要通过RCC配置其时钟源,可看作是一个外设器件3.为什么单片机有多重不同频率的时钟呢? STM32本身十分复杂,外设非常多但我们实际使用的时...原创 2019-09-29 13:57:28 · 5752 阅读 · 0 评论 -
解释#define RCC ((RCC_TypeDef *) RCC_BASE)
解释#define RCC ((RCC_TypeDef *) RCC_BASE)http://www.51hei.com/bbs/dpj-24813-1.html(出处: 单片机论坛)#define RCC((RCC_TypeDef *) RCC_BASE)RCC_TypeDef是一个定义的结构体RCC_BASE是一个unsigned long(32位数值)简化后是:(int...转载 2019-09-29 14:33:28 · 431 阅读 · 0 评论 -
stm32时钟详细说明
在STM32中,有五个时钟源,为HSI、HSE、LSI、LSE、PLL。 其实是四个时钟源,如下图所示(灰蓝色),PLL是由锁相环电路倍频得到PLL时钟。①、HSI是高速内部时钟,RC振荡器,频率为8MHz。②、HSE是高速外部时钟,可接石英/陶瓷谐振器,或者接外部时钟源,频率范围为4MHz~16MHz。③、LSI是低速内部时钟,RC振荡器,频率为40kHz。④、LSE是低速外...原创 2019-09-29 16:44:05 · 561 阅读 · 0 评论 -
prescaler预分频与PLL倍频区别
分频与倍频区别:"分频"是说通过分频电路,将输入信号的频率进行降低后再输出.经过处理后,输出的信号频率如果是输入信号频率的1/2,叫2分频率;1/3,叫3分频;1/n,叫n分频;分频电路一般可以用数字电路来完成.2-4分频电路,可以用D或者JK触发器来实现.比如2分频原理就是让输入信号有两个脉冲时,输出端才出现一个脉冲,那么假如说输入信号为1000Hz,也就是输入信号每秒种有1000个脉冲,按...原创 2019-09-30 09:25:31 · 1599 阅读 · 0 评论 -
STM32引脚
原创 2019-09-30 11:48:05 · 2638 阅读 · 0 评论 -
STM32单片机GPIO的配置
1.GPIO_Mode_AIN 模拟输入 ADC输入模拟信号时,专用的模拟输入模式2.GPIO_Mode_IN_FLOATING浮空输入 3.GPIO_Mode_IPD下拉输入4.GPIO_Mode_IPU 上拉输入5.GPIO_Mode_Out_OD 开漏输出6.GPIO_Mode_Out_PP 推挽输出7.GPIO_Mode_AF_O...原创 2019-09-30 13:38:01 · 829 阅读 · 0 评论 -
stm32单片机user文件下stm32fX_it.c库文件作用?
用来处理单片机在运行过程中的一些错误,如硬件读取错误,信息错误,总线通信错误。原创 2019-10-07 15:12:18 · 1131 阅读 · 0 评论 -
单片机底层硬件与应用程序的联系
1.单片机使用下载的固件库,即底层驱动程序2.功能配置寄存器是直接与硬件相互联系的,例如汇编语言便可直接操纵功能配置寄存器原创 2019-10-09 13:08:14 · 1196 阅读 · 0 评论 -
Stm32程序各文件夹功能
CMSIS:内核驱动程序Lib:内部功能的基本函数库startup:单片机启动程序user:用户程序(包括主函数)basic:内部功能的驱动程序Hardware:外部硬件的驱动程序...原创 2019-10-09 13:58:15 · 2201 阅读 · 0 评论 -
STM32F103VCT6芯片如何配置preprocessor symbols(预处理符号)即定义芯片类型
当添加固件库后,preprocessor symbols下的define:此处的意思是确定你的芯片类型,在Stm32f10x.h头文件中可以找到。在软件中打开此头文件。因为芯片的型号不同,以及存储容量的大小等区别,需要选择合适的类型。我所选用的是STM32F103VCT6芯片。...原创 2019-10-09 16:24:56 · 2252 阅读 · 0 评论 -
电源符号:VCC、VDD、VEE、VSS、VBAT各表示什么意思?
下面是stm32vet6的引脚图:电路设计以及PCB制作中,经常碰见电源符号:VCC、VDD、VEE、VSS、VBAT,他们具有什么样的关系那? 一、解释 (1)VCC:C=circuit 表示电路的意思, 即接入电路的电压 (2)VDD:D=device 表示器件的意思, 即器件内部的工作电压; (3)VSS:S=series 表示公共连接的意思,通常指电路公共接地端电压...转载 2019-10-10 09:25:42 · 4617 阅读 · 0 评论 -
基于ARM内核的芯片基本结构知识点
总线:包含控制总线,数据总线,地址总线DMA:直接内存存取,DMA传输时,由CPU将总线给予DMA掌管GPIO:单片机上的引脚,可以由单片机设置成输入或输出UART:异步收发传输器,可以异步收取或发送信号,类似于高低电平转换器,可实现全双工通信I2C:双向两线制同步串行总线,一根数据线(SDA),一根时钟线(SCL),同步串行使用的时钟为同一个。SPI:串行同步协议,由一个主设...原创 2019-05-29 13:41:43 · 1645 阅读 · 0 评论