利用STM32的定时器捕捉的方式进行解码,解出来的键码显示在oled上。
单片机源程序如下:
- #include "led.h"
- #include "oled.h"
- #include "delay.h"
- #include "key.h"
- #include "sys.h"
- #include "lcd.h"
- #include "remote.h"
-
- u16 key,voule,times;
- int main(void)
- {
-
- delay_init(); //延时函数初始化
- NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置中断优先级分组为组2:2位抢占优先级,2位响应优先级
- LED_Init(); //LED端口初始化
- KEY_Init();
- Remote_Init(); //红外接收初始化
- OLED_Init();
- //Draw_Logo();
- OLED_Fill(0x00);
- LED0=1;
- OLED_ShowString1(0,0,"Key_code:");
- while(1)
- {
- key=Remote_Scan();
- if(key)
- {
- OLED_P8x16Num_8bit(85,0,key);
- voule=key;
- LED0=!LED0 ;
- times++;
- }
- else
- {
- OLED_P8x16Num_8bit(0,6,times);
- delay_ms(10);
- }
-
- }
- }
复制代码
所有资料51hei提供下载:
实验27 红外遥控实验.rar
(342.66 KB, 下载次数: 21)
|