ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

CSDN-markdown编辑器

2021-04-04 14:58:06  阅读:235  来源: 互联网

标签:markdown USART GPIOx 寄存器 按键 编辑器 CSDN 串口 时钟


单片机

单片机

  1. List item

一、学习内容和笔记

1、时钟了解

一、STM32有5个时钟源:HSI、HSE、LSI、LSE、PLL。
1、HSI是高速内部时钟,RC振荡器,频率为8MHz,精度不高。
2、HSE是高速外部时钟,可接石英/陶瓷谐振器,或者接外部时钟源,频率范围为4MHz~ 16MHz。
3、LSI是低速内部时钟,RC振荡器,频率为40kHz, 提供低功耗时钟、WDG
4、LSE是低速外部时钟,接频率32.768kHz的石英晶体。 RTC
5、PLL为锁相环倍频输出,其时钟输入源可选择为HSI/2、HSE或者HSE/2 。倍频可选择为2~16倍,但是其输出频率最大不得超过72MHz。
二、系统时钟SYSCLK可来源于三个时钟源:
1、HSI振荡器时钟
2、HSE振荡器时钟
3、PLL时钟
3.STM32可以选择一一个时钟信号输出到MCO脚(PA8)上,可以选择为PLL输出的2分频、HSI、HSE、或者系统时钟
4.任何一个外设在使用之前,必须首先使能其相应的时钟。(我对时钟的理解是:单片机是靠时针来走程序的,只有写好程序之后,在时钟的安排下,单片机运行。)
在这里插入图片描述
几个重要的时钟:
1、SYSCLK(系统时钟)
2、AHB总线时钟
3、APB1总线时钟(低速):速度最高36MHz
4、APB2总线时钟(高速):速度最高72MHz
5、PLL时钟

2、跑马灯实验

(学习之前回顾GPIO基础知识。
是每组I/O口含下面7个寄存器,也就是7个寄存器一共可以控制一组GPIO的16个IO口。
GPIOx_ CRL :端口配置低寄存器
GPIOx_ CRH:端口配置高寄存器
GPIOx_ IDR:端口输入寄存器
GPIOx_ ODR:端口输出寄存器
GPIOx_ BSRR:端口位设置/清除寄存器
GPIOx_ BRR :端口位清除寄存器
GPIOx_ LCKR:端口配置锁存寄存器)

选择GPIO的工作模式,调用函数,我感觉主要是熟悉步骤,快速找到要用的函数。
选择工作模式,调用函数,我感觉主要是熟悉步骤。

3、按键

感觉和51差不多,代码也差不多。
KEY_Scan 函数,是用来扫描这 3 个 IO 口是否有按键按下。该函数的按键扫描是有优先级的,最优先的是 KEY0,第二优先的是 KEY1,最后是 WK_UP 按键。该函数有返回值,如果有按键按下,则返回非0值,如果没有或者按键不正确,则返回 0。(运行看现象的时候按WK_UP键可以控制多种亮灭形式,之后查资料找到的。)
在这里插入图片描述

4、串口

理论

串口设置的一般步骤可以总结为如下几个步骤:
1、串口时钟使能,GPIO 时钟使能(串口是挂载在 APB2 下面的外设,所以使能函数为:RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1);)
2、串口复位(复位的是在函数 USART_DeInit()中完成:
void USART_DeInit(USART_TypeDef* USARTx);//串口复位)
3、GPIO 端口模式设置
4、串口参数初始化(串口初始化通过 USART_Init()函数实现voidUSART_Init(USART_TypeDefUSARTx,USART_InitTypeDef USART_InitStruct);)
5、开启中断并且初始化 NVIC(如果需要开启中断才需要这个步骤)
6、使能串口
7、编写中断处理函数

二、学习时间

1、回顾部分、学习部分

回顾跑马灯,学习按键,串口,串口还在没学完。还很懵。

标签:markdown,USART,GPIOx,寄存器,按键,编辑器,CSDN,串口,时钟
来源: https://blog.csdn.net/Csjxxxhhh/article/details/115428632

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有