日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 單片機 > 單片機
[導讀]下面,以“16位定時器0”為例,做一個實驗,在“16位定時器0”的捕獲引腳上,獲取脈沖的個數(shù)。“16位定時器0”的捕獲引腳即P0.2腳,在Ration開發(fā)板上,可以將P0.2引腳與P1.9腳相連,因為P1.9腳是按鍵KEY1的輸入引腳,

下面,以“16位定時器0”為例,做一個實驗,在“16位定時器0”的捕獲引腳上,獲取脈沖的個數(shù)?!?6位定時器0”的捕獲引腳即P0.2腳,在Ration開發(fā)板上,可以將P0.2引腳與P1.9腳相連,因為P1.9腳是按鍵KEY1的輸入引腳,所以,只要按一下按鍵,計數(shù)就會增加1。

新建一個工程,結(jié)構(gòu)如下圖所示:

在timer.h文件中,加入T16B0_cnt_init()函數(shù)聲明,如下圖所示:

#ifndef __NXPLPC11xx_TIME_H__

#define __NXPLPC11xx_TIME_H__

extern void T16B0_init(void);

extern void T16B0_delay_ms(uint16_t ms);

extern void T16B0_delay_us(uint16_t us);

extern void T16B0_cnt_init(void);

#endif

timer.c文件中,加入T16B0_cnt_init()函數(shù)的定義,如下圖所示:

void T16B0_cnt_init(void)

{

LPC_SYSCON->SYSAHBCLKCTRL |= (1<<16); // 使能IOCON時鐘

LPC_IOCON->PIO0_2 &= ~0x07;

LPC_IOCON->PIO0_2 |= 0x02; /* CT16B0 CAP0 */

LPC_SYSCON->SYSAHBCLKCTRL &= ~(1<<16); // 禁能IOCON時鐘

LPC_SYSCON->SYSAHBCLKCTRL |= (1<<7); //使能TIM16B0時鐘

LPC_TMR16B0->TCR = 0x02; //復位定時器(bit1:寫1復位)

LPC_TMR16B0->CTCR = 0x02; // 計數(shù)器模式 引腳CT16B0_CAP0下降沿計數(shù)

LPC_TMR16B0->TCR = 0x01; //啟動定時器:TCR[0]=1;

}

第3~6行,目的是為了把P0.2腳設置成CT16B0CAP0功能,即16位定時器0的捕獲引腳,改變引腳功能,就需要打開IOCON模塊的時鐘,所以給SYSAHBCLKCTRL寄存器的bit16寫1,使能IOCON時鐘。引腳功能設置好以后,IOCON模塊就沒有用了,所以把它的時鐘再關閉,還能降低單片機的功耗。

第9行,給CTCR寄存器寫0x02,把定時器設置為計數(shù)模式,并設置CAP0接收下降沿信號。

CTCR:計數(shù)控制寄存器

位符號值描述復位值1:0CTM
定時/計數(shù)模式。000x0定時模式:每個PCLK的上升沿0x1計數(shù)模式:TC在CAP引腳上的上升沿遞增0x2計數(shù)模式:TC在CAP引腳上的下降沿遞增0x3計數(shù)模式:TC在CAP引腳上的雙邊沿遞增3:2CIS
計數(shù)輸入引腳選擇000x0CT32Bn_CAP00x1保留0x2保留0x3保留31:4

保留位,不能給這些位寫1–

CTCR寄存器用來決定定時器是做定時還是計數(shù),并且可以設置上升沿、下降沿和雙邊沿計數(shù)。

在main.c文件中,輸入以下代碼:

#include “l(fā)pc11xx.h”

#include “timer.h”

#include “uart.h”

int main()

{

uint16_t temp1,temp2;

UART_init(9600);

T16B0_cnt_init();

temp1 = LPC_TMR16B0->TC;

while(1)

{

temp2 = LPC_TMR16B0->TC;

if(temp2!=temp1)

{

temp1 = LPC_TMR16B0->TC;

UART_send_byte(temp1);

}

}

}

main函數(shù)實現(xiàn)的功能是,如果發(fā)現(xiàn)計數(shù)器遞增,就把現(xiàn)在記下的數(shù)發(fā)到串口,打開串口調(diào)試助手,選好串口號,波特率設置為9600,按動開發(fā)板上的按鍵KEY1,即可看到效果。


本站聲明: 本文章由作者或相關機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關閉