标题: stm32红外控制风速源码 [打印本页]

作者: asdasdsd    时间: 2018-6-8 17:14
标题: stm32红外控制风速源码
A 实验红外控制风速

单片机源程序如下:
  1. #include "led.h"
  2. #include "delay.h"
  3. #include "sys.h"
  4. #include "pwm.h"
  5. #include "key.h"
  6. #include "remote.h"
  7. #include "usart.h"
  8. int main(void)
  9. {       
  10. //        u16 led0pwmval=300;   
  11. //        u8 dir=0;       
  12. //        u8 t=0;
  13. //        delay_init();                     //延时函数初始化          
  14. //        LED_Init();                          //初始化与LED连接的硬件接口
  15. //        KEY_Init();                  //初始化与按键连接的硬件接口
  16. //        LED0=0;       
  17. //    LED1=0;         //点亮LED
  18. //        TIM1_PWM_Init(899,0);//不分频。PWM频率=72000/(899+1)=80Khz
  19. //           while(1)
  20. //        {
  21. //                t=KEY_Scan(0);                //得到键值
  22. //                switch(t)
  23. //                {                                 
  24. //                        case KEY0_PRES:
  25. //                                led0pwmval=led0pwmval-100;
  26. //                        dir=0;
  27. //                                break;
  28. //                        case KEY1_PRES:
  29. //                                led0pwmval=led0pwmval+100;
  30. //                        dir=0;
  31. //                                break;

  32. //                        default:
  33. //                                delay_ms(10);       
  34. //                }
  35. //                                           
  36. //                TIM_SetCompare1(TIM1,led0pwmval);          
  37. //        }
  38. u8 key;
  39.         u8 t=0;       
  40.         u16 led0pwmval=0;
  41.         u8 dir=0;        
  42.         delay_init();                     //延时函数初始?
  43.         LED_Init();                                  //初始化与LED连接的硬件接口
  44.         LED0=0;
  45.         TIM1_PWM_Init(600,0);//不分频。PWM频率=72000/(899+1)=80Khz
  46.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);// 设置中断优先级分组2          
  47.         uart_init(9600);                 //串口初始化为9600
  48.        
  49.         Remote_Init();                        //红外接收初始化                                                                                                                  
  50.         while(1)
  51.         {
  52.                 key=Remote_Scan();       
  53.                  
  54.                          
  55.                         switch(key)
  56.                         {
  57.                                             
  58.                                 case 104:led0pwmval=260;dir=0;break;                  
  59.                                 case 152:led0pwmval=360;dir=0;break;          
  60.                                 case 176:led0pwmval=444;dir=0;break;            
  61.                                 case 48:led0pwmval=500;dir=0;break;                    
  62.                                 case 24:led0pwmval=600;dir=0;break;                    
  63.                                          
  64.                         }
  65.                 TIM_SetCompare1(TIM1,led0pwmval);
  66.         }
  67. }

复制代码

所有资料51hei提供下载:
A 实验红外控制风速.rar (286.42 KB, 下载次数: 16)







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