EDA中的轉(zhuǎn)換后數(shù)據(jù)的BCD碼轉(zhuǎn)換處理
如表是在ADC0809的基準(zhǔn)電壓(Vref)為5.12 V時,模擬輸入電壓與輸出電壓的對應(yīng)關(guān)系表,其中最小電壓準(zhǔn)位是5/28=5/256=0.2V。
這樣,當(dāng)由ADC0809的D[7..0]收到的數(shù)據(jù)信號是10000110(即86H)時,則對照如表時,高4位1000是2.56 V,而低4位0110是0.12V,所以最后的電壓輸出結(jié)果是2.56V+0.12V=2.68V。
如表 ADCOSO9模擬輸入電壓與輸出電壓的對應(yīng)關(guān)系
為了方便后續(xù)的電壓數(shù)據(jù)顯示,我們應(yīng)將輸出電壓表示成12位的BCD碼形式。如上述的2.56V是0010 0101 0110,0.12 V是0000 0001 0010,所以相加的結(jié)果2.68 V是001001101000,因此必須設(shè)計一個12位的BCD碼加法程序。
如圖是2.56+0.18=2.74的二進(jìn)制的BCD加法示意圖。從圖中可以看出,二進(jìn)制BCD碼相加時,由最低位4位加 如圖 BCD加法示意圖起,且每4位相加的結(jié)果超過10時需作進(jìn)位操作。
如圖 BCD加法示意圖
因此實現(xiàn)本功能的程序段的設(shè)計思路是:在讀到ADC0809的D[7..0]轉(zhuǎn)換數(shù)據(jù)后,先用查表的指令算出高、低4位的兩個電壓值,并分別用12位的BCD碼表示;接著設(shè)計一個12位的BCD碼加法器,將得到的兩個12位的BCD碼相加即可。
來源:ks990次