新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 關(guān)于使用c8051fxxx單片機(jī)用戶常見疑問如下

關(guān)于使用c8051fxxx單片機(jī)用戶常見疑問如下

作者: 時(shí)間:2016-11-25 來源:網(wǎng)絡(luò) 收藏
1. 振蕩器
問:內(nèi)部時(shí)鐘振蕩器是不是不穩(wěn)定?是否可以用于產(chǎn)生波特率的時(shí)基?
答:不同器件的內(nèi)部時(shí)鐘振蕩器的精度是不同的(±20%)。隨電源電壓變化,它也將發(fā)生變化(6.5%/V)。但基本不隨溫度變化(<1%溫度變化范圍-40-+85℃)。由于不同器件內(nèi)部振蕩器的離散性較大,所以不能用于產(chǎn)生波特率,應(yīng)該外接標(biāo)準(zhǔn)晶體 (而C8051F300/301內(nèi)部振蕩器精度為±2%,可用于產(chǎn)生波特率) 。
問:片內(nèi)/外振蕩器如何配置?
答:正確步驟:
  1. 允許外部振蕩器;
  2. 等待1ms;
  3. 查詢XTLVLD 0->1
  4. 切換到外部振蕩器。
注意:振蕩器頻率的選擇,即OSCXCN寄存器的配置(外部振蕩器頻率控制位的設(shè)置)。
匯編和C的部分源代碼如下:
匯編:
mov OSCXCN, #67h       ;允許外部振蕩器頻率為 18.432MHz
clr A              ; 最少等待1ms
djnz acc, $           ; 等待 ~512us
djnz acc, $          ; 等待 ~512us
osc_wait:           ; 查詢 XTLVLD是否為1
mov a, OSCXCN
jnb acc.7, osc_wait
orl OSCICN, #08h       ; 選擇外部振蕩器作為系統(tǒng)時(shí)鐘源
orl OSCXCN, #80h        ; 使能丟失時(shí)鐘檢測(cè)器
C語言:
void SYSCLK_Init (void)
{
int i              ; //延時(shí)計(jì)數(shù)器
OSCXCN = 0x67         ; //啟動(dòng)外部振蕩器用 22.1184MHz 晶體
for (i=0; i < 256; i++)    ; // 最少等待>1ms
while (!(OSCXCN & 0x80))    ; // 等待晶體穩(wěn)定
OSCICN = 0x88         ; //選擇外部振蕩器作為系統(tǒng)時(shí)鐘源
                 //使能丟失時(shí)鐘檢測(cè)器
}
 


2. 模數(shù)轉(zhuǎn)換
問:從上電(或退出掉電模式)到ADC穩(wěn)定開始轉(zhuǎn)換需要多長(zhǎng)時(shí)間?
答:模擬建立時(shí)間也就是等待參考電平穩(wěn)定的時(shí)間。它取決于接在VREF引腳的電容容量。此電容越大VREF的噪音就越小,ADC轉(zhuǎn)換結(jié)果的噪音也就越小。如果用4.7uF電容,則穩(wěn)定時(shí)間大約為2ms,如果無旁路電容(不推薦),穩(wěn)定時(shí)間大約為10us。
注意:在開始轉(zhuǎn)化之前,需要一個(gè)1.5us的跟蹤時(shí)間,這也就決定了ADC多路轉(zhuǎn)換開關(guān)(MUX)的切換速度。
問:ADC的最大VREF電壓:
答:內(nèi)部參考:2.40±0.03V;
外部參考:VA+-0.3V。
問:ADC的最大輸入電壓及輸入阻抗?
答:ADC的最大輸入電壓為VREF。輸入電容為10pF;輸入阻抗等價(jià)于一個(gè)5kΩ電阻和一個(gè)10pF電容的串聯(lián)。
請(qǐng)參考應(yīng)用筆記AN019"計(jì)算開關(guān)電容ADC的建立時(shí)間"。
問:ADC可編程窗口檢測(cè)器有什么用途?
答:ADC可編程窗口檢測(cè)器在很多應(yīng)用中非常有用。它不停地將ADC輸出與用戶編程的限制量進(jìn)行比較,并在檢查到越限條件時(shí)通知系統(tǒng)控制器。這在中斷驅(qū)動(dòng)的系統(tǒng)中尤其有效。既可以節(jié)省代碼空間和CPU帶寬又能提供快速響應(yīng)的時(shí)間。
問:C8051F020/F021的內(nèi)部參考如何使用?
答:F020:如果ADC0、ADC1及DAC都使用內(nèi)部參考,將VREF連接到VREF0、VREF1、VREFD引腳,
   F021:將VREF連到VREFA引腳即可。  
 
3. 端口
問:器件IO口的吸收(sink)電流和源(source)電流是多少?
答:GPIO(通用IO)引腳當(dāng)電壓為0.6V時(shí)可以吸收8.5mA的電流。當(dāng)電壓為VDD-0.7V時(shí)的源電流為3mA。
問:在GPIO引腳上的弱上拉的值是多少?
答:當(dāng)VDD=3.0V時(shí),上拉值大約為100KΩ左右。
問:Silicon Lab C8051FXXX系列單片機(jī)的IO口與傳統(tǒng)8051單片機(jī)相比有什么區(qū)別?
答:①Cygnal C8051FXXX系列單片機(jī)的IO口全部為三態(tài)雙向口(而傳統(tǒng)8051單片機(jī)P1、P2、P3口為準(zhǔn)雙向口),內(nèi)部有弱上拉可禁止(傳統(tǒng)8051單片機(jī)固有),可配置為開漏輸出和推挽輸出(傳統(tǒng)8051單片機(jī)只有開漏輸出)。
  ②片內(nèi)數(shù)字資源要通過數(shù)據(jù)交叉開關(guān)(crossbar)按一定的優(yōu)先級(jí)配置到IO引腳(C8051F2XX系列除外,而傳統(tǒng)8051單片機(jī)不具備這一功能)。
問:Silicon Lab 8051FXXX系列單片機(jī)電源電壓全部為2.7-3.6V,那么是否有與5V系統(tǒng)接口的比較簡(jiǎn)單的解決方案?
答:所有IO口允許5V(極限值為5.8V)輸入,但是輸出為VDD電平。如果與5V系統(tǒng)接口,最簡(jiǎn)單的方法是在輸出端加上拉電阻,關(guān)鍵是上拉電阻的選擇。具體參考應(yīng)用筆記AN011"在5V系統(tǒng)中使用C8051FXXX"。
建議:如果可能,請(qǐng)盡量選用電壓供電兼容的芯片,這是一種最理想的選擇。
問:模擬引腳能否簡(jiǎn)單地用于數(shù)字I/O?
答:如果模擬引腳是獨(dú)立的是不可以的。但是如果模擬引腳和數(shù)字IO是復(fù)用的,是可以通過SFR的設(shè)置來完成配置。
問:C8051F020/022的p4-p7口和p0-p3口有什么不同?
答:P0-P3口復(fù)位時(shí)為通用口,可通過Crossbar(數(shù)據(jù)交叉開關(guān))寄存器按優(yōu)先級(jí)設(shè)置成第二功能。而P4-P7口是通用口,另外P4-P7寄存器不能位尋址。



關(guān)鍵詞: c8051f單片機(jī)常見疑

評(píng)論


技術(shù)專區(qū)

關(guān)閉