PCA模塊和C8051單片機(jī)類似,最高占空比可到100,但是最小占空比卻無法到,因此,如果需要輸出低電平,需要將CCAPMn清0,并將管腳設(shè)為低,需要再次啟用PWM模塊,只需將CCAPMn賦值CCAPM1=0x42;
本文引用地址:http://www.ex-cimer.com/article/201611/320881.htm ADC模塊首先要上電,等待起穩(wěn)才能開始轉(zhuǎn)換,如果轉(zhuǎn)換頻繁,就不需要關(guān)閉ADC電源了。第二個(gè)要注意的是設(shè)置ADC_CONTR后要加4個(gè)空操作才能將其寫入寄存器中。
ADC轉(zhuǎn)化程序(查詢方式)
uchar GetADCResult(uchar ch)//ch 0~7
{//取高8bit值,STC的ADC更換通道后,第一次測量值仍然是改之前的,要舍棄
ADC_CONTR=0xe8|ch;//選擇通道,先或再賦值,因此ADC_CONTR被重新賦值了
_nop_();_nop_();_nop_();_nop_();
while ((ADC_CONTR & 0x10)==0); //Wait complete flag,==優(yōu)先級(jí)大于&,因此要加括號(hào)
ADC_CONTR&= ~0x10; //清除轉(zhuǎn)換結(jié)束標(biāo)志ADC_FLAG
return ADC_DATA; //Return ADC result
}
評(píng)論