STM32简单的LED流水灯程序

发布者:Jinghua6666最新更新时间:2024-10-22 来源: cnblogs关键字:STM32  LED  流水灯程序 手机看文章 扫描二维码
随时随地手机看文章
  1. //0x4002 1000 - 0x4002 13FF 复位和时钟控制(RCC)

  2. #define RCC_BASE        0x40021000

  3. #define RCC_APB2ENR        (RCC_BASE+0x18)

  4. //LED接在GPIOF上,是APB2上的外设,是RCC_APB2ENR寄存器的第7位


  5. //APB20x4001 1c00 GPIO端口F

  6. #define GPIOF_BASE        0x40011c00

  7. #define GPIOF_CHL        (0x000+GPIOF_BASE)

  8. #define GPIOF_CHR        (0x004+GPIOF_BASE)

  9. #define GPIOF_IDR        (0x008+GPIOF_BASE)

  10. #define GPIOF_ODR         (0x00c+GPIOF_BASE)

  11. #define GPIOF_BSRR         (0x010+GPIOF_BASE)

  12. #define GPIOF_BRR        (0x014+GPIOF_BASE)

  13. #define GPIOF_LCKR        (0x014+GPIOF_BASE)


  14. void delay(int num)

  15. {

  16.     int i,j;

  17.     for(i=0;i

  18.         for(j=0;j<5000;j++)

  19.             ;    

  20. }


  21. int main(void)

  22. {

  23.     *(unsigned int *)RCC_APB2ENR=1<<7;//开gpiof时钟

  24.     //设置gpiof的管脚为开漏输出电平为0,外部电流灌入6,7,8,9管脚

  25.     //设置成开漏输出,频率无所谓,那么cny为0101,mode为0101

  26.     *(unsigned int *)GPIOF_CHL=0x55555555;

  27.     *((unsigned int *)GPIOF_CHR)=0x55555555;

  28.     *((unsigned int *)GPIOF_ODR)=0xffff;

  29.     while(1)

  30.     {

  31.         *((unsigned int *)GPIOF_BSRR)=1<<22;

  32.         delay(200);

  33.         *((unsigned int *)GPIOF_BSRR)=1<<23;

  34.         delay(200);

  35.         *((unsigned int *)GPIOF_BSRR)=1<<24;

  36.         delay(200);

  37.         *((unsigned int *)GPIOF_BSRR)=1<<25;

  38.         delay(200);

  39.         *((unsigned int *)GPIOF_ODR)=0xffff;

  40.         delay(200);

  41.     }    

  42. }


关键字:STM32  LED  流水灯程序 引用地址:STM32简单的LED流水灯程序

上一篇:STM32的IAP下载与设置
下一篇:difference for STM32 adc Regular and injected

小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved