×
单片机 > 单片机程序设计 > 详情

STM32F103C8T6学习笔记_跑马灯

发布时间:2020-05-19 发布时间:
|

1、跑马灯


     IO口的设置


     推挽输出    GPIO_Mode_Out_PP     输出高、低电平,连接数字器件(管脚负载能力强、开关速度快)


    led.c怎么写?


#include"led.h"

void LED_Init(void)

{

   GPIO_InitTypeDef   GPIO_InitStructure;                  //定义结构体变量

   RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);    //时钟使能

   GPIO_InitStructure.GPIO_Pin=GPIO_Pin_0;                 //哪个端口?

   GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;          //推挽输出

   GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;         //速度

   GPIO_Init(GPIOB, &GPIO_InitStructure);                  //初始化

   GPIO_SetBits(GPIOB,GPIO_Pin_0);                         //置位 点亮

 

}

     led.h怎么写?


#ifndef __LED_H

#define __LED_H 

#include "sys.h"

#define LED0 PBout(0)   //主要的

void LED_Init(void);

#endif

   main()怎么写?

int main(void)

 

delay_init();                 //延时函数初始化(函数声明)  

LED_Init();         //LED函数初始化(函数声明)

while(1)

{

GPIO_ResetBits(GPIOB,GPIO_Pin_5);  //(复位函数)   0   低   亮

GPIO_SetBits(GPIOE,GPIO_Pin_5);    //(置位函数)   1   高   灭

delay_ms(300);     //(延时300ms)   停顿300ms

GPIO_SetBits(GPIOB,GPIO_Pin_5);   // 重复复位              灭

GPIO_ResetBits(GPIOE,GPIO_Pin_5);  // 重复置位              亮

delay_ms(300);                     //延时300ms

}




『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
ARM 汇编的必知必会