|
輸入捕獲實驗
單片機源程序如下:- /*******************************************************************************
- --------------------------------------------------------------------------------
- * 實 驗 名 : 輸入捕獲實驗
- * 實驗說明 :
- * 連接方式 :
- * 注 意 : 輸入捕獲驅(qū)動在input.c內(nèi)
- *******************************************************************************/
- #include "system.h"
- #include "SysTick.h"
- #include "led.h"
- #include "usart.h"
- #include "input.h"
- /*******************************************************************************
- * 函 數(shù) 名 : main
- * 函數(shù)功能 : 主函數(shù)
- * 輸 入 : 無
- * 輸 出 : 無
- *******************************************************************************/
- int main()
- {
- u8 i=0;
- long long indata=0;
-
- SysTick_Init(168);
- NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //中斷優(yōu)先級分組 分2組
- LED_Init();
- USART1_Init(9600);
- TIM5_CH1_Input_Init(0xffffffff,83); //以1M頻率計數(shù)
-
- while(1)
- {
- if(TIM5_CH1_CAPTURE_STA&0x80) //成功捕獲
- {
- indata=TIM5_CH1_CAPTURE_STA&0x3f;
- indata*=0xffffffff; //溢出次數(shù)乘以一次的計數(shù)次數(shù)時間 us
- indata+=TIM5_CH1_CAPTURE_VAL;//加上高電平捕獲的時間
- printf("高電平持續(xù)時間:%lld us\r\n",indata); //總的高電平時間
- TIM5_CH1_CAPTURE_STA=0; //開始下一次捕獲
- }
-
- i++;
- if(i%20==0)
- {
- led1=!led1;
- }
- delay_ms(10);
- }
- }
復(fù)制代碼 Keil代碼下載:
輸入捕獲實驗.7z
(330.95 KB, 下載次數(shù): 32)
2021-11-15 17:12 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|
|