没有合适的资源?快使用搜索试试~ 我知道了~
首页STM32单片机解码NEC红外控制器C语言程序
资源详情
资源评论
资源推荐

STM32单片机解码单片机解码NEC红外控制器红外控制器C语言程序语言程序
红外遥控器发射码值的协议有很多种,在百度文库里搜“史上最全的红外遥控器编码协议”,可以看到是有43种,
但是我们今天是解码NEC红外协议的,几乎所有的开发板带的小遥控器都是这个协议的,我是用的定时器配合
外部中断写的解码程序。
#include "ir_exti.h"
//利用外部中断和定时器进行红外解码
//在51上学习的
u8 irtime;//定时器时间累加
u8 irflag;//接收到第一个下降沿的标志
u8 irdate;//接收下降沿次数的累加
u8 irtable[33];//装每一次下降沿的时间
//u8 irdateok;
u8 irtable2[4];//解码出地址和数据 地址 地址反码 数据 数据反码
u8 irdatewokeok;//解出正确的数据就把此标志位置1
u8 repeat=0;//按住不放标志位
void TIMER2_INIT(u16 psc,u16 arr);
//战舰板子上面的红外信号端链接在PB9上面,我们把外部中断映射到PB9上即可
void IR_EXTI_INIT()
{
RCC->APB2ENR|=1<<3;//打开PB口时钟
GPIOB->CRH&=0XFFFFFF0F;//清除PB9的原有状态
GPIOB->CRH|=0X00000080;//设置PB9为输入
GPIOB->ODR|=1<<9; //设置PB9输出高电平,上拉
Ex_NVIC_Config(GPIO_B,9,1);//TRIM:触发模式,1,下降沿;2,上升沿;3,任意电平触发
MY_NVIC_Init(1,0,EXTI9_5_IRQChannel,2);
TIMER2_INIT(71,99);//产生0.1ms的中断
}
//定时器2初始化函数
//psc预分频系数,arr自动重装载寄存器
//APB1=36M 则TIM3=72M
//Tout= ((arr+1)*(psc+1))/Tclk
void TIMER2_INIT(u16 psc,u16 arr)
{
RCC->APB1ENR|=1<<0;//开启定时器2的时钟
TIM2->ARR=arr;
TIM2->PSC=psc;
TIM2->DIER|=1<<0;//允许更新中断



















weixin_38522636
- 粉丝: 3
- 资源: 913
上传资源 快速赚钱
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助

会员权益专享
最新资源
- 基于at89c51单片机的-智能开关设计毕业论文设计.doc
- 基于C#多机联合绘图软件的实现-毕业设计论文.doc
- XX畜牧有限公司信息化项目实施方案.doc
- 基于java的小型图书管理系统设计与实现毕设论文.doc
- 于基单片机的二氧化碳红外检测仪设计-学位论文.doc
- 毕业论文php12心里咨询网站.doc
- 全自动化立体停车库控制系统可行性研究报告.doc
- 毕业论文jsp2047房产中介租凭网ssh.docx
- 毕业论文jsp1950房屋租赁系统springmvc.doc
- 人力资源管理系统--項目計劃介紹.ppt
- 彩色图案背景的时尚商业计划书PPT模板
- 毕业论文jsp506法院网站(ssh).doc
- 毕业论文jsp322宿舍管理系统(ssh).doc
- 毕业论文jsp367考试阅卷系统(ssh).doc
- 基于web的文件服务器的设计与实现大学生毕业论文本科学位论文.doc
- 毕业论文140ssm田园乐农家院团建平台.docx
- 计算机辅助教学对英语词汇学习影响的文献综述.pptx
- 基于PHP的网上书店毕业设计.doc
- 基于单片机控制的交流调速系统设计论文(1)大学论文.doc
- 毕业论文ssm328视频点播系统.doc
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制

评论0