找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2121|回復: 0
收起左側

stm mini32串口打印對外加低頻脈沖信號(5~20HZ)計數(shù)

[復制鏈接]
ID:302895 發(fā)表于 2018-4-7 14:46 | 顯示全部樓層 |閱讀模式
#include "sys.h"
#include "usart.h"        
#include "delay.h"   
#include "led.h"
#include "key.h"         

//TIM3,外部計數(shù)模式
void TIM3_CH2_Excnt_Init(u16 arr,u16 psc)
{   
    RCC->APB1ENR|=1<<1;    //TIM3 時鐘使能  
    RCC->APB2ENR|=1<<2;        //使能PORTA時鐘   

    GPIOA->CRL&=0X0FFFFFFF;      //PA7 清除之前設置   
    GPIOA->CRL|=0X80000000;      //PA7 輸入   
    GPIOA->ODR|=1<<7;          //PA7 上拉
   


    TIM3->ARR=arr;    //設定計數(shù)器自動重裝值   
    TIM3->PSC=psc;    //預分頻器  

    TIM3->CCMR1|=1<<8;  //CC2S=01  選擇輸入端 IC2映射到TI2上
    TIM3->CCMR1|=0<<12;     //IC2F=0000 配置輸入濾波器 不濾波

    TIM3->CCER|=1<<5;   //CC1P=0   下降沿計數(shù)
    TIM3->SMCR|=6<<4;   //觸發(fā)選擇:濾波后的定時器輸入2(TI2FP2)
    TIM3->SMCR|=7<<0;   //外部時鐘模式1
    TIM3->CR1|=1<<0;    //啟動計數(shù)器,CEN=1
}


int main(void)
{   
    u32 oldcnt=0;   
    Stm32_Clock_Init(9);     //系統(tǒng)時鐘設置
    uart_init(72,9600);      //串口初始化為9600
    delay_init(72);          //延時初始化  
    TIM3_CH2_Excnt_Init(0XFFFF,0);  //外部計數(shù),最大值0xffff
    while(1)
    {
   
  delay_ms(1000);   
    delay_ms(1000);
    delay_ms(1000);
    delay_ms(1000);
    delay_ms(1000);
    delay_ms(1000);

            if(oldcnt!=TIM3->CNT)
            {
            oldcnt=TIM3->CNT;
            printf("cnt:%d\r\n",oldcnt);
            }
    }

}

串口打印對外加低頻脈沖信號(5~20HZ)計數(shù).zip

253.78 KB, 下載次數(shù): 6, 下載積分: 黑幣 -5

評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表