-
大小: 3.69MB文件类型: .rar金币: 1下载: 0 次发布日期: 2023-08-13
- 语言: 其他
- 标签:
资源简介
CPU采用的是STM32F103C8T6-红外遥控解码程序,解码后的遥控按键值通过串口打印到PC机终端,代码清晰简单,大部份代码都有注释。
代码片段和文件信息
#include “adc.h“
#include “SysTick.h“
/*******************************************************************************
* 函 数 名 : ADCx_Init
* 函数功能 : ADC初始化
* 输 入 : 无
* 输 出 : 无
*******************************************************************************/
void ADCx_Init(void)
{
GPIO_InitTypeDef GPIO_InitStructure; //定义结构体变量
ADC_InitTypeDef ADC_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_GPIOA|RCC_APB2Periph_ADC1ENABLE);
RCC_ADCCLKConfig(RCC_PCLK2_Div6);//设置ADC分频因子6 72M/6=12ADC最大时间不能超过14M
//PA1 作为模拟通道输入引脚 //GPIO_Pin_0按键占用//GPIO_Pin_4-DA占用
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN; //模拟输入引脚//
GPIO_Init(GPIOA &GPIO_InitStructure);
ADC_InitStructure.ADC_Mode = ADC_Mode_Independent;//DC1和ADC2工作在独立模式
ADC_InitStructure.ADC_ScanConvMode = DISABLE;//非扫描模式单通道
ADC_InitStructure.ADC_ContinuousConvMode = DISABLE;//关闭连续转换
ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None;//禁止触发检测,使用软件触发
ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;//ADC数据右对齐
ADC_InitStructure.ADC_NbrOfChannel = 1;//1个转换在规则序列中 也就是只转换规则序列1
ADC_Init(ADC1 &ADC_InitStructure);//ADC初始化
ADC_Cmd(ADC1 ENABLE);//开启AD转换器
ADC_ResetCalibration(ADC1);//重置指定的ADC的校准寄存器
while(ADC_GetResetCalibrationStatus(ADC1));//获取ADC重置校准寄存器的状态
ADC_StartCalibration(ADC1);//开始指定ADC的校准状态
while(ADC_GetCalibrationStatus(ADC1));//获取指定ADC的校准程序
ADC_SoftwareStartConvCmd(ADC1 ENABLE);//使能或者失能指定的ADC的软件转换启动功能
}
/*******************************************************************************
* 函 数 名 : Get_ADC_Value
* 函数功能 : 获取通道ch的转换值,取times次然后平均
* 输 入 : ch:通道编号
times :获取次数
* 输 出 : 通道ch的times次转换结果平均值
*******************************************************************************/
u16 Get_ADC_Value(u8 chu8 times)
{
u32 temp_val=0;
u8 t;
//设置指定ADC的规则组通道,一个序列,采样时间
ADC_RegularChannelConfig(ADC1 ch 1 ADC_SampleTime_239Cycles5); //ADC1ADC通道239.5个周期提高采样时间可以提高精确度
for(t=0;t {
ADC_SoftwareStartConvCmd(ADC1 ENABLE);//使能指定的ADC1的软件转换启动功能
while(!ADC_GetFlagStatus(ADC1 ADC_FLAG_EOC ));//等待转换结束
temp_val+=ADC_GetConversionValue(ADC1);
//delay_ms(5);
}
return temp_val/times;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2664 2019-09-13 11:53 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\APP\adc\adc.c
文件 128 2016-09-10 09:53 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\APP\adc\adc.h
文件 829 2019-10-17 20:30 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\APP\beep\beep.c
文件 580 2019-10-17 15:18 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\APP\beep\beep.h
文件 1303 2017-05-19 15:13 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\APP\dac\dac.c
文件 114 2016-09-12 15:48 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\APP\dac\dac.h
文件 2142 2019-10-19 15:38 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\APP\exti\exti.c
文件 97 2019-10-19 15:21 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\APP\exti\exti.h
文件 4827 2019-10-20 14:00 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\APP\hwjm\hwjm.c
文件 423 2019-10-20 14:00 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\APP\hwjm\hwjm.h
文件 793 2019-09-12 18:55 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\APP\key\key.c
文件 374 2019-09-12 19:13 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\APP\key\key.h
文件 771 2019-10-17 19:36 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\APP\led\led.c
文件 478 2019-10-17 19:44 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\APP\led\led.h
文件 1661 2019-09-12 21:47 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\APP\pwm\pwm.c
文件 103 2019-09-12 21:49 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\APP\pwm\pwm.h
文件 2302 2019-10-19 09:02 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\APP\smg\smg.c
文件 721 2019-09-13 13:55 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\APP\smg\smg.h
文件 3282 2019-10-18 23:35 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\APP\stm32_flash\stm32_flash.c
文件 1097 2019-10-12 22:16 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\APP\stm32_flash\stm32_flash.h
文件 2132 2019-10-19 15:42 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\APP\time\time.c
文件 101 2019-10-17 19:01 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\APP\time\time.h
文件 399 2019-01-07 18:53 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\keilkilll.bat
文件 17273 2019-01-07 18:57 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\Libraries\CMSIS\core_cm3.c
文件 85714 2019-01-07 18:57 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\Libraries\CMSIS\core_cm3.h
文件 15503 2011-03-10 10:52 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\Libraries\CMSIS\startup_stm32f10x_hd.s
文件 12567 2014-03-21 11:30 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\Libraries\CMSIS\startup_stm32f10x_ld.s
文件 12765 2011-03-10 10:52 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\Libraries\CMSIS\startup_stm32f10x_md.s
文件 36557 2019-01-07 18:57 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\Libraries\CMSIS\system_stm32f10x.c
文件 2085 2019-01-07 18:57 STM32红外遥控解码程序解码后的按键值通过串口打印到PC机终端\Libraries\CMSIS\system_stm32f10x.h
............此处省略176个文件信息
- 上一篇:基于人脸识别考勤系统的设计与实现
- 下一篇:时间序列分析 王振龙 pdf
评论
共有 条评论