基于STM32F103芯片实现LED灯闪烁

基于STM32F103芯片实现LED灯闪烁

  • 前言
  • 一,寄存器配置
    • 1,时钟控制
    • 2,GPIO端口设置:
  • 二、实际操作
    • 1.具体代码
    • 2.keil5项目运行
    • 3.硬件的连接
    • 4.链接到 mcuisp 串口链接软件上
    • 5,LED灯闪烁
  • 总结
  • 参考文献

前言

stm32f103c8t6最小核心学习板包含了以下成分:

1.四方扁平封装的主要MCU – STM32F103C8T6。

2.重置开关–重置微控制器。

3.microUSB端口–用于串行通信和电源。

4.BOOT选择器跳线– BOOT0和BOOT1跳线,用于选择引导存储器。

5.两个LED –用户LED和电源LED。

6.8 MHz晶振– MCU的主时钟。

7.32.768KHz振荡器– RTC时钟。

8.SWD接口–用于使用ST-Link进行编程和调试。

9.3.3V稳压器(在底部)–将5V转换为3.3V,以为MCU供电。


提示:以下是本篇文章正文内容,下面案例可供参考

一,寄存器配置

1,时钟控制

时钟控制名字叫做RCC,属于AHB总线。

基于STM32F103芯片实现LED灯闪烁
首先对RCC寄存器定义

根据上图可知,想要使GPIOX端口时钟使能,就可以把RCC_APB2ENR的位X赋值为1,就可以开启该端口的时钟。

2,GPIO端口设置:

总所周知,stm32每一组GPIO端口都配置有7种寄存器

1.端口配置低寄存器GPIOx_CRL
2.端口配置高寄存器(GPIOx_CRH)
3.端口输入数据寄存器(GPIOx_IDR)
4.端口输出数据寄存器(GPIOx_ODR)
5.端口位设置/ 清除寄存器(GPIOx_BSRR)
6.端口位清除寄存器(GPIOx_BRR)
7.端口配置锁定寄存器(GPIOx_LCKR)

STM32中,用端口配置低寄存器(GPIOx_CRL)来配置引脚Px0-Px7, 用端口配置高寄存(GPIOx_CRH)来配置引脚Px8-Px15。

我在实验中使用了A0,B9,C14三个串行口,定义的寄存器分别是

偏移地址是0x04,意思是在基地址的基础上再加0x04,所以,对于GPIOB来说就是0x4001 0c04。如果配置PB0-PB7,那么需要的寄存器是低位的寄存器GPIOB_CRL,它的地址是0x4001 0c00。
  

基于STM32F103芯片实现LED灯闪烁

我们在这里使用的是推免输出。

二、实际操作

1.具体代码

2.keil5项目运行

1.新建项目名字为stm
2.芯片选择stm32f103c8

基于STM32F103芯片实现LED灯闪烁
4.
基于STM32F103芯片实现LED灯闪烁
5.运行
基于STM32F103芯片实现LED灯闪烁

4.链接到 mcuisp 串口链接软件上

将硬件的usb接口链接到电脑上,然后点击 开始编程

请添加图片描述

总结

这次实验对我们的学习是一次很大的历练,学到了更多 的stm的知识,也增加了动手能力,虽然遇到了挺多困难的,但是还是有很多的收获。

参考文献

https://blog.csdn.net/qq_43445076/article/details/88896383
https://blog.csdn.net/geek_monkey/article/details/86291377
https://blog.csdn.net/geek_monkey/article/details/86293880

来源:大了小个星星

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年9月20日
下一篇 2021年9月20日

相关推荐