新手上路
- 积分
- 22
- 金钱
- 22
- 注册时间
- 2020-9-22
- 在线时间
- 5 小时
|
5金钱
- #include "led.h"
- #include "stm32f10x.h"
- //初始化PB5和PE5为输出口.并使能这两个口的时钟
- //LED IO初始化
- void LED_Init(void){
- //B、E两端口时钟初始化
- //APB2ENR外设时钟使能寄存器,位2-位6是IOA-E的时钟使能
- RCC -> APB2ENR |= 1<<3;
- RCC -> APB2ENR |= 1<<6;
- //配置相应两端口的输出方式和最大速度
- //(00)通用推挽输出,(11)最大速度50MHZ
- GPIOB -> CRL &= 0xFF0FFFFF;
- GPIOB -> CRL |= 0x00300000;
- //配置PB输出寄存器中的端口,位5是P5
- GPIOB -> ODR |= 1<<5;
- GPIOE -> CRL &= 0xFF0FFFFF;
- GPIOE -> CRL |= 0x00300000;
- //配置PE输出寄存器中的端口,位5是P5
- GPIOE -> ODR |= 1<<5;
- }
复制代码 以上是led.c文件- #ifndef __LED_H
- #define __LED_H
- void LED_Init(void);//łőĘźťŻ
- #endif
复制代码 以上是led.h文件
- #include "stm32f10x.h"
- #include "delay.h"
- #include "led.h"
- #define True 1
- int main(void){
- //初始化
- LED_Init();
- delay_init();
- while(True){
- //输出寄存器中写入1
- GPIOB -> ODR |= 1<<5;
- GPIOE -> ODR |= 1<<5;
- delay_ms(500);
- //输出寄存器中写入0(~)
- GPIOB -> ODR &= ~(0<<5);
- GPIOE -> ODR &= ~(0<<5);
- delay_ms(500);
- }
- }
复制代码 以上是主函数
|
|