資源簡介
使用STM32F103同時驅(qū)動三個超聲波模塊,并用串口屏顯示每個超聲波模塊探測的距離

代碼片段和文件信息
#include?“input.h“
u8?TIM4CH1_CAPTURE_STA;?//輸入捕獲狀態(tài)?
u16?TIM4CH1_CAPTURE_LAST_VAL;//上一次輸入捕獲值
u16?TIM4CH1_CAPTURE_VAL;//輸入捕獲值
u8?TIM4CH2_CAPTURE_STA;?//輸入捕獲狀態(tài)?
u16?TIM4CH2_CAPTURE_LAST_VAL;//上一次輸入捕獲值
u16?TIM4CH2_CAPTURE_VAL;//輸入捕獲值
u8?TIM4CH3_CAPTURE_STA;?//輸入捕獲狀態(tài)?
u16?TIM4CH3_CAPTURE_LAST_VAL;//上一次輸入捕獲值
u16?TIM4CH3_CAPTURE_VAL;//輸入捕獲值
/*******************************************************************************
*?函?數(shù)?名?????????:?input_init
*?函數(shù)功能 ???:?輸入捕獲配置初始化 ???定時器4通道123輸入捕獲配置?
*?輸????入?????????:?無
*?輸????出?????????:?無
*******************************************************************************/
void?input_init()
{
TIM_TimebaseInitTypeDef?TIM_TimebaseInitStructure;//聲明一個結(jié)構(gòu)體變量,用來初始化定時器
TIM_ICInitTypeDef?TIM4_ICInitStructure;
NVIC_InitTypeDef?NVIC_InitStructure;
/*?開啟定時器5時鐘?*/
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4ENABLE); ?//使能TIM4時鐘
TIM_ClearITPendingBit(TIM4TIM_IT_Update|TIM_IT_CC1|TIM_IT_CC2|TIM_IT_CC3);?//清除中斷和捕獲標(biāo)志位
TIM_TimebaseInitStructure.TIM_Period?=?0xffff; ?//設(shè)定計數(shù)器自動重裝值?
TIM_TimebaseInitStructure.TIM_Prescaler?=?0;???//以1Mhz的頻率計數(shù)?一次即是1us
TIM_TimebaseInitStructure.TIM_ClockDivision?=?TIM_CKD_DIV1; ??//設(shè)置時鐘分割:TDTS?=?Tck_tim
TIM_TimebaseInitStructure.TIM_CounterMode?=?TIM_CounterMode_Up; ?//TIM向上計數(shù)模式
TIM_TimebaseInit(TIM4&TIM_TimebaseInitStructure);//根據(jù)TIM_TimebaseInitStruct中指定的參數(shù)初始化TIMx的時間基數(shù)單位
TIM4_ICInitStructure.TIM_Channel?=?TIM_Channel_1;?//選擇輸入端?IC1映射到TI1上?
TIM4_ICInitStructure.TIM_ICPolarity?=?TIM_ICPolarity_Rising;?//上升沿捕獲?
TIM4_ICInitStructure.TIM_ICSelection?=?TIM_ICSelection_DirectTI;?//映射到TI1上?
TIM4_ICInitStructure.TIM_ICPrescaler?=?TIM_ICPSC_DIV1;?//配置輸入分頻不分頻?
TIM4_ICInitStructure.TIM_ICFilter?=?0x00;?//IC1F=0000?配置輸入濾波器?不濾波?
TIM_ICInit(TIM4?&TIM4_ICInitStructure);?//初始化TIM4輸入捕獲通道1
TIM4_ICInitStructure.TIM_Channel?=?TIM_Channel_2;?//選擇輸入端?IC1映射到TI1上?
TIM_ICInit(TIM4?&TIM4_ICInitStructure);?//初始化TIM4輸入捕獲通道1
TIM4_ICInitStructure.TIM_Channel?=?TIM_Channel_3;?//選擇輸入端?IC1映射到TI1上?
TIM_ICInit(TIM4?&TIM4_ICInitStructure);?//初始化TIM4輸入捕獲通道1
//中斷分組初始化
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);
NVIC_InitStructure.NVIC_IRQChannel=TIM4_IRQn; //打開TIM4的全局中斷
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=0; //搶占優(yōu)先級為0
NVIC_InitStructure.NVIC_IRQChannelSubPriority=1;?//響應(yīng)優(yōu)先級為1
NVIC_InitStructure.NVIC_IRQChannelCmd?=?ENABLE; ??//使能
NVIC_Init(&NVIC_InitStructure);
TIM_Cmd(TIM4ENABLE);?//使能或者失能TIMx外設(shè)
TIM_ITConfig(TIM4?TIM_IT_Update|TIM_IT_CC1|TIM_IT_CC2|TIM_IT_CC3?ENABLE?); //使能或者失能指定的TIM中斷
}
void?HC_SR04_init() ???//
{
GPIO_InitTypeDef?GPIO_InitStructure; ??//聲明一個結(jié)構(gòu)體變量,用來初始化GPIO
SystemInit();
/*?開啟GPIO時鐘?*/
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOBENABLE);
/*??配置GPIO的模式和IO口?*/
GPIO_InitStructure.GPIO_Pin=Echo1|Echo2|Echo3; ???//選擇你要設(shè)置的IO口
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IPD;//上拉輸入??
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz; ???//設(shè)置傳輸速率
GPIO_Init(GPIOB&GPIO_
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????8494??2018-03-12?15:58??工程模板\APP\input\input.c
?????文件????????797??2017-09-06?09:11??工程模板\APP\input\input.h
?????文件???????3169??2018-03-12?15:59??工程模板\APP\printf\printf.c
?????文件????????246??2017-08-06?19:40??工程模板\APP\printf\printf.h
?????文件???????2025??2015-05-29?17:20??工程模板\APP\PWM\pwm.c
?????文件?????????94??2014-12-13?15:09??工程模板\APP\PWM\pwm.h
?????文件???????1314??2015-05-28?11:25??工程模板\APP\SysTick\systick.c
?????文件????????121??2014-12-09?16:09??工程模板\APP\SysTick\systick.h
?????文件???????6956??2015-12-10?17:06??工程模板\DebugConfig\Target_1_STM32F103ZE.dbgconf
?????文件????????497??2015-06-08?10:30??工程模板\Jli
?????文件????????285??2014-12-11?16:01??工程模板\Jli
?????文件????????399??2011-04-23?10:24??工程模板\keilkilll.bat
?????文件??????17273??2010-06-07?10:25??工程模板\Libraries\CMSIS\CM3\CoreSupport\core_cm3.c
?????文件??????85714??2011-02-09?14:59??工程模板\Libraries\CMSIS\CM3\CoreSupport\core_cm3.h
?????文件??????15766??2011-03-10?10:52??工程模板\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm\startup_stm32f10x_cl.s
?????文件??????15503??2011-03-10?10:52??工程模板\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm\startup_stm32f10x_hd.s
?????文件??????15692??2011-03-10?10:52??工程模板\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm\startup_stm32f10x_hd_vl.s
?????文件??????12376??2011-03-10?10:52??工程模板\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm\startup_stm32f10x_ld.s
?????文件??????13656??2011-03-10?10:52??工程模板\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm\startup_stm32f10x_ld_vl.s
?????文件??????12765??2011-03-10?10:52??工程模板\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm\startup_stm32f10x_md.s
?????文件??????14073??2011-03-10?10:51??工程模板\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm\startup_stm32f10x_md_vl.s
?????文件??????15955??2011-03-10?10:51??工程模板\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm\startup_stm32f10x_xl.s
?????文件??????13072??2011-03-10?10:52??工程模板\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\gcc_ride7\startup_stm32f10x_cl.s
?????文件??????13160??2011-03-10?10:52??工程模板\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\gcc_ride7\startup_stm32f10x_hd.s
?????文件??????12482??2011-03-10?10:52??工程模板\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\gcc_ride7\startup_stm32f10x_hd_vl.s
?????文件???????9814??2011-03-10?10:52??工程模板\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\gcc_ride7\startup_stm32f10x_ld.s
?????文件??????10562??2011-03-10?10:52??工程模板\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\gcc_ride7\startup_stm32f10x_ld_vl.s
?????文件??????10269??2011-03-10?10:52??工程模板\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\gcc_ride7\startup_stm32f10x_md.s
?????文件??????11058??2011-03-10?10:52??工程模板\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\gcc_ride7\startup_stm32f10x_md_vl.s
?????文件??????13261??2011-03-10?10:52??工程模板\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\gcc_ride7\startup_stm32f10x_xl.s
............此處省略112個文件信息
- 上一篇:CC2530+HCSR04超聲波測距
- 下一篇:LavVIEW打地鼠小程序
評論
共有 條評論