![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
STM32学习
文章平均质量分 85
Strive--顾
一日之计在于晨,一生之计在于勤。
展开
-
STM32——中断
在《STM32F10xxx Cortex-M3编程手册》书中对终端进行了简单的描述如下:如果软件未配置任何优先级,则具有可配置优先级的所有异常的优先级为0。可配置的优先级值的范围为0-255。 这意味着具有固定负优先级值的Reset,HardFault和NMI异常总是具有比任何其他异常更高的优先级。例如,将较高优先级值分配给IRQ [0],将较低优先级值分配给IRQ [原创 2017-05-29 23:10:06 · 947 阅读 · 0 评论 -
SPI总线协议介绍
一、技术性能 SPI接口是Motorola 首先提出的全双工三线同步串行外围接口,采用主从模式(Master Slave)架构;支持多slave模式应用,一般仅支持单Master。时钟由Master控制,在时钟移位脉冲下,数据按位传输,高位在前,低位在后(MSB first);SPI接口有2根单向数据线,为全双工通信,目前应用中的数据速率可达几Mbps的水平。总线结构如下图所示。原创 2017-07-16 16:50:00 · 406 阅读 · 0 评论 -
指纹识别系统
这星期基于STM32F1系列做了一个指纹识别系统,主要有:12864进行屏幕内容显示,动手做了一个4X3的独立按键板用来按键输入,指纹模块与32单片机进行串口通信,环境为Keil uVision5。其中涉及有串口通信,中断操作,eeprom存储,12864显示,以及串口的使能初始化知识内容。原创 2017-06-14 21:09:48 · 2204 阅读 · 2 评论 -
STM32F1x系列——Flash 模拟 EEPROM
STM32F10x芯片本身没有集成EEPROM,替代方案是用片上Flash来模拟EEPROM。Flash与EEPROM的区别主要是:一、EEPROM可以按位擦写,而Flash只能按块(页)擦除;二、Flash的擦除寿命约1 万次,较EEPROM低一个量级。ST网站有个Flash模拟EEPROM的范例:AN2594: EEPROM emulation in STM32F10x microcont原创 2017-06-12 17:26:44 · 7212 阅读 · 0 评论 -
STM32F1x系列——12864
12864的引脚图: 由图可知PSB一开始要拉高,可以接到电源上,VCC接5v电源,VSS接地,要是12864产生背光,将BLA接5v电源,BLK接地。其余引脚可以自定义接到STM32的IO上。 在接STM32的IO后,程序中应首先要对IO进行初始化,进行端口使能等操作,12864有其自带的中文字库,在程序中对字库初始化,同时写好传送数据指令的函数,输出显示内容原创 2017-06-08 14:48:29 · 2488 阅读 · 1 评论 -
STM32F1x系列——外部中断
STM32的每个IO都可以作为外部中断输入。 STM32的中断控制器支持19个外部中断/事件的请求:线0~15:对应外部IO口的输入中断;线16:连接到PVD输出;线17:连接到RTC闹钟事件 ;线18:连接到USB唤醒事件。每个外部中断线可以独立地配置触发方式(上升沿,下降沿或者双边沿触发),触发/屏蔽,专用的状态位。 外部中断常用的库函数:(1)void GPI原创 2017-06-04 16:45:31 · 1662 阅读 · 0 评论 -
STM32F1x系列——GPIO操作
GPIO 即通用输入输出口。凡事都要熟悉,熟能生巧。一定要掌握MDK软件的工程操作方法。对于GPIO的操作。Project里面要有以下几个文件夹(开发之前需要包含相应的库文件,这里默认已经包含)STEP BY STEP(以按键和LED灯为例):1.在USER文件夹里新建对应功能的C文件和H文件(这里对应 Key.c Key.h LED.c LED.h原创 2017-05-28 21:33:43 · 3343 阅读 · 0 评论 -
STM32F1x系列——串口通信
一 在STM32F1x系列串口通信实验中,常用的寄存器有:(1)USART_SR 状态寄存器 (2)USART_DR 数据寄存器 (3)USART_BRR 波特率寄存器 (4) USART_CR 使能位 二 串口操作相关的库函数(省略入口参数):(1)void USART_Init() ; //串口初始化:波特率,数据字长,奇偶校验,硬件流原创 2017-06-04 00:28:09 · 1159 阅读 · 2 评论 -
STM32F1x系列——按键输入实验
今天学习了STM32F1x系列的按键输入实验,具体上分为三个步骤:(1)使能按键对应IO口时钟,调用函数:RCC_APB2PeriphClockCmd()(2)初始化IO模式:上拉/下拉输入。调用函数:GPIO_Init()(3)扫描IO口电平(库函数/寄存器/位操作) 主要说一下其中的按键扫描,思路图如下:(1)按键扫描(支持连续按)的一般思路代码:u8原创 2017-06-02 18:31:22 · 3273 阅读 · 0 评论 -
STM32F1x系列——跑马灯实验-库函数
今天根据网上的教程实现了STM32F1系列单片机的跑马灯实验,首先主要分为三个步骤:(1)使能IO口时钟,调用函数RCC_APB2PeriphClockCmd();不同的IO口,调用的使能时钟不一样(2)初始化IO口模式。调用函数GPIO_Init();(3)操作IO口,输出高低电平。GPIO_SetBits();GPIO_ResetBits(); 新建一个样板原创 2017-06-02 00:17:56 · 1393 阅读 · 0 评论 -
STM32F1x系列——定时器中断
一 通用定时器的工作过程如下图: 二 计数器模式:(1)向上计数模式:计数器从0计数到自动加载值,然后重新从0开始计数并且产生一个计数器溢出事件(2)向下计数模式:计数器从自动装入的值开始向下计数到0,然后从自动装入的值重新开始,并产生一个计数器向下溢出的事件(3)中央对齐模式(向上/向下计数):计数器从0开始计数到自动装入的值-1,产生一个计数器溢出事件原创 2017-06-04 22:56:16 · 6506 阅读 · 0 评论 -
IIC 通讯协议
IIC总线: 一般串行数据通讯都有时钟和数据之分,有异步和同步之别。有单线,双线和三线等. I2C肯定是2线的(不算地线). I2C协议确实很科学,比3/4线的SPI要好,当然线多通讯速率相对就快了. I2C的原则是: 在SCL=1(高电平)时,SDA千万别忽悠!!!否则,SDA下跳则"判罚"为"起始原创 2017-07-16 17:02:12 · 673 阅读 · 0 评论