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

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]開發(fā)板上的LED1接在了PD3上,而PD3復(fù)用功能是TIM2_CC2,正好可以用來測試PWM功能。當(dāng)然板上的另外2個(gè)LED也可以用,LED2對(duì)應(yīng)PD2/TIM3_CC1,LED3對(duì)應(yīng)PD0/TIM3_CC2。本例程通過電位器來調(diào)整LED1的亮度。#i nclude

開發(fā)板上的LED1接在了PD3上,而PD3復(fù)用功能是TIM2_CC2,正好可以用來測試PWM功能。當(dāng)然板上的另外2個(gè)LED也可以用,LED2對(duì)應(yīng)PD2/TIM3_CC1,LED3對(duì)應(yīng)PD0/TIM3_CC2。本例程通過電位器來調(diào)整LED1的亮度。

#i nclude

void CLK_init(void)
{
CLK_CKDIVR = 0x08; // 16M內(nèi)部RC經(jīng)2分頻后系統(tǒng)時(shí)鐘為8M
}

void GPIO_init(void)
{
PD_DDR = 0x08; // 配置PD端口的方向寄存器PD3輸出
PD_CR1 = 0x08; // 設(shè)置PD3為推挽輸出
}

void TIM2_init(void)
{
TIM2_CCMR2 = 0x70; // PWM 模式 2
TIM2_CCER1 = 0x30; // CC2配置為輸出
TIM2_ARRH = 0x03; // 配置PWM分辨率為10位,ARR=0x3FF
TIM2_ARRL = 0xFF; // PWM頻率=8M/0x03FF=7820Hz
TIM2_CR1 = 0x01; // 計(jì)數(shù)器使能,開始計(jì)數(shù)
}

void ADC_init(void)
{
ADC_CSR = 0x03; // ADC輸入引腳AIN3
ADC_CR1 = 0x01; // ADC開啟
}

Run(void)
{
unsigned int value;
ADC_CSR &= ~0x80; // 清除EOC轉(zhuǎn)換結(jié)束標(biāo)志
ADC_CR1 |= 0x01; // 開始單次轉(zhuǎn)換
while(!(ADC_CSR&0x80)); // 等待單次轉(zhuǎn)換完成
value = ((int)ADC_DRH<<2); // 先讀高8位,默認(rèn)設(shè)置數(shù)據(jù)左對(duì)齊
value |= ADC_DRL; // 再讀低8位
TIM2_CCR2H = (unsigned char)(value>>8); // 更新CC2比較寄存器
TIM2_CCR2L = (unsigned char)(value);
}

void init_devices(void)
{
asm("sim");
CLK_init();
GPIO_init();
TIM2_init();
ADC_init();
asm("rim");
}

void main( void )
{
init_devices();

while(1) Run();
}

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