OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2391|回复: 0

STM32F10寄存器版本跑马灯实验

[复制链接]

28

主题

28

帖子

0

精华

初级会员

Rank: 2

积分
116
金钱
116
注册时间
2019-10-16
在线时间
18 小时
发表于 2019-10-20 19:47:49 | 显示全部楼层 |阅读模式
本帖最后由 e芯凌 于 2019-11-10 22:20 编辑

整体操作思路:
1:使能IO口时钟。配置寄存器RCC_APB2ENR。
2:初始化IO口模式。配置寄存器GPIOx_CRH/CRL。
3:操作IO口,输出高低电平。配置寄存器GPIOX_ODR或者BSRR/BRR。

端口配置低寄存器(GPIOx_CRL) (x=A..E)

2.1.PNG


位31:30
27:26
23:22
19:18
15:14
11:10
7:6
3:2
CNFy[1:0]:端口x配置位(y = 0…7) (Port x configuration bits)
软件通过这些位配置相应的I/O端口,请参考表17端口位配置表。
在输入模式(MODE[1:0]=00):
00:模拟输入模式
01:浮空输入模式(复位后的状态)
10:上拉/下拉输入模式
11:保留
在输出模式(MODE[1:0]>00):
00:通用推挽输出模式
01:通用开漏输出模式
10:复用功能推挽输出模式
11:复用功能开漏输出模式
位29:28
25:24
21:20
17:16
13:12
9:8, 5:4
1:0
MODEy[1:0]:端口x的模式位(y = 0…7) (Port x mode bits)
软件通过这些位配置相应的I/O端口,请参考表17端口位配置表。
00:输入模式(复位后的状态)
01:输出模式,最大速度10MHz
10:输出模式,最大速度2MHz
11:输出模式,最大速度50MHz


APB2 外设时钟使能寄存器(RCC_APB2ENR)
位6 IOPEEN: IO端口E时钟使能 (I/O port E clock enable)
由软件置’1’或清’0’
0: IO端口E时钟关闭;
1: IO端口E时钟开启。

位3 IOPBEN: IO端口B时钟使能 (I/O port B clock enable)
由软件置’1’或清’0’
0: IO端口B时钟关闭;
1: IO端口B时钟开启。





lcd.h代码
  1. #ifndef __LED_H
  2. #define __LED_H

  3. #endif

  4. void LED_Init(void);
复制代码
main.c代码
  1. #include "stm32f10x.h"
  2. #include "delay.h"
  3. #include "led.h"

  4. int main()
  5. {

  6. delay_init();
  7. LED_Init();
  8. while(1)
  9. {
  10. GPIOB->ODR|=1<<5;
  11. GPIOE->ODR|=1<<5;
  12. delay_ms(500);


  13. GPIOB->ODR&=~(1<<5);

  14. GPIOE->ODR&=~(1<<5);
  15. delay_ms(500);

  16. }
  17. }
复制代码
lcd.c代码
  1. #include "led.h"
  2. #include "stm32f10x.h"

  3. void LED_Init(void)
  4. {
  5. RCC->APB2ENR|=1<<3;
  6. RCC->APB2ENR|=1<<6;

  7. GPIOB->CRL&=0xff0fffff;//CPIOB.5
  8. GPIOB->CRL|=0x00300000;
  9. GPIOB->ODR|=1<<5;

  10. GPIOE->CRL&=0xff0fffff;//GPIOE.6
  11. GPIOE->CRL|=0x00300000;
  12. GPIOE->ODR|=1<<5;

  13. }
复制代码

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-5 12:06

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表