STM32红外解码

STM32红外解码

ID:37713768

大小:37.00 KB

页数:5页

时间:2019-05-29

STM32红外解码_第1页
STM32红外解码_第2页
STM32红外解码_第3页
STM32红外解码_第4页
STM32红外解码_第5页
资源描述:

《STM32红外解码》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、H文件//红外解码就是得注意消除抖动#ifndef_IR_h_#define_IR_h_#include"stm32f10x.h"voidIR_GPIO_Init(void);voidIR_EXTI_Init(void);voidIR_TIM_Init(void);voidIR_Init(void);voidEXTI1_IRQHandler(void);#endifC文件#include"IR.h"#include"LED.h"#include"delay.h"#include"lcd.h"u8Flag_Data=0;//移位变量u8AdressCode1=0;//地址码u8A

2、dressCode2=0;//地址反码u8OrderCode1=0;//指令码u8OrderCode2=0;//指令反码u8RepeatSen=0;//重发码voidIR_GPIO_Init(void){GPIO_InitTypeDefGPIO_InitStructure;RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);//开启IO时钟/*ConfigurePA.00pinasinputfloating*/GPIO_InitStructure.GPIO_Pin=GPIO_Pin_1;//设置IO模式GPIO_InitStr

3、ucture.GPIO_Mode=GPIO_Mode_IN_FLOATING;//必须要上拉GPIO_Init(GPIOA,&GPIO_InitStructure);/*EnableAFIOclock*/RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);//开启AFIO时钟}voidIR_EXTI_Init(void){EXTI_InitTypeDefEXTI_InitStructure;NVIC_InitTypeDefNVIC_InitStructure;/*ConnectEXTI0LinetoPA.00pin*/GPIO_

4、EXTILineConfig(GPIO_PortSourceGPIOA,GPIO_PinSource1);//设定外设中断线。/*ConfigureEXTI0line*/EXTI_InitStructure.EXTI_Line=EXTI_Line1;//设置中断类型EXTI_InitStructure.EXTI_Mode=EXTI_Mode_Interrupt;EXTI_InitStructure.EXTI_Trigger=EXTI_Trigger_Falling;//下降沿触发EXTI_InitStructure.EXTI_LineCmd=ENABLE;EXTI_Init(&

5、EXTI_InitStructure);/*EnableandsetEXTI0Interrupttothelowestpriority*/NVIC_InitStructure.NVIC_IRQChannel=EXTI1_IRQn;//设置中断优先级NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=0;NVIC_InitStructure.NVIC_IRQChannelSubPriority=10;NVIC_InitStructure.NVIC_IRQChannelCmd=ENABLE;NVIC_Init(&NVIC_Ini

6、tStructure);}voidIR_TIM_Init(void){TIM_TimeBaseInitTypeDefTIM_TimeBaseInitStruct;delay_init(72);RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2,ENABLE);//开启时钟TIM_TimeBaseInitStruct.TIM_Prescaler=720-1;//X-1,X就是分频。例如X=720.72M/720=100000.TIM_TimeBaseInitStruct.TIM_CounterMode=TIM_CounterMode_Up;//向

7、上计数模式。TIM_TimeBaseInitStruct.TIM_Period=60000;//COUNT的值。如果是乡下模式这是最开始的值。如果是向上模式,这是最大值。不能为零为0定时器不工作TIM_TimeBaseInitStruct.TIM_ClockDivision=TIM_CKD_DIV1;//时钟分频因子,这里是对数字滤波器以及TI的分频选择0。//TIM_TimeBaseInitStruct.TIM_RepetitionCounter这个变量是针对TIM1TIM8的。TIM_T

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。