标题: STM32之LED流水灯左移/右移程序 [打印本页]

作者: jubaolun    时间: 2017-8-24 15:53
标题: STM32之LED流水灯左移/右移程序
STM32之流水灯。
◆实验目的:
    学习GPIO作为输出的使用
   
◆硬件资源:
    1,LED  PB口(0~15)
   
◆实验现象:
    本实验通过代码控制STM32开发板上的16个LED左移/右移闪烁,实现流水灯的效果。

STM32单片机源程序如下:
  1. #include "sys.h"
  2. #include "delay.h"
  3. #include "usart.h"
  4. #include "led.h"





  5. //*******************下面注释掉的代码是通过 直接操作寄存器 方式实现IO口控制**************************************
  6. int main(void)
  7. {
  8.         u8 i;
  9.         delay_init();                  //初始化延时函数
  10.         LED_Init();                        //初始化LED端口
  11.         while(1)
  12.         {

  13.                  GPIOB->BSRR=GPIO_Pin_All;//LED0灭
  14.                 for(i=0;i<17;i++)
  15.                 {
  16.                        
  17.                         delay_ms(100);
  18.                         GPIOB->BRR=(GPIO_Pin_0<<i);//LED左移1位
  19.                 }
  20.                 GPIOB->BSRR=GPIO_Pin_All;//LED0灭
  21.                 for(i=0;i<17;i++)
  22.                 {
  23.                        
  24.                         delay_ms(100);
  25.                         GPIOB->BRR=(GPIO_Pin_15>>i);//LED0右移1位
  26.                 }
  27.                
  28.                
  29.          }
  30. }
  31. //**************************************************************************************************

复制代码

所有资料51hei提供下载:
LED左移右移.rar (1.98 MB, 下载次数: 81)



作者: 长得好看    时间: 2017-12-7 11:18
想要让灭的灯左右移动,一个灭其余亮该怎么改
作者: wuxishun    时间: 2018-1-22 08:40
反接就可以了




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1