标题: stm32基于定时器实现不同速度流水灯 [打印本页]

作者: 1634588522    时间: 2021-2-21 11:28
标题: stm32基于定时器实现不同速度流水灯
通过按键改变流水灯速度

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


  6. extern u16 num,count,flag;


  7. int main(void)
  8. {       
  9.         u8 t=0;          
  10.         delay_init();                     //延时函数初始化          
  11.         LED_Init();                                   //初始化与LED连接的硬件接口
  12.         KEY_Init();                  //初始化与按键连接的硬件接口
  13.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);// 设置中断优先级分组2
  14.         TIM3_Int_Init(4999,7199);//10Khz的计数频率,计数到5000为500ms  
  15.         LED1=0;        LED0 =1;                 //点亮LED
  16.         while(1)
  17.         {
  18.                 if(flag)
  19.                 {
  20.                         flag=0;
  21.                         LED0=!LED0;
  22.                         LED1=!LED1;
  23.                        
  24.                 }
  25.                 delay_ms(10);
  26.                 t=KEY_Scan(0);                //得到键值
  27.                 switch(t)
  28.                 {                                 
  29.                         case KEY0_PRES:
  30.                     count=2;
  31.                                 break;
  32.                         case KEY1_PRES:
  33.                                 count=6;
  34.                                 break;
  35.                         case WKUP_PRES:                               
  36.                                 LED0 =1;LED1 =1;
  37.                                 break;
  38.                         default:
  39.                                 delay_ms(10);       
  40.                 }
  41.         }                 
  42. }
复制代码

所有程序51hei提供下载:
按键定时器不同速度流水灯.7z (186.48 KB, 下载次数: 28)







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