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