999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

“余數(shù)拆分”算法在簡(jiǎn)易數(shù)字電壓表中的應(yīng)用

2014-09-15 17:40:34李麗郭建勤
現(xiàn)代電子技術(shù) 2014年18期

李麗+郭建勤

摘 要: 為了使單片機(jī)在采用匯編語(yǔ)言設(shè)計(jì)簡(jiǎn)易數(shù)字電壓表的小數(shù)部分處理過(guò)程中減少利用的寄存器數(shù)量及編程復(fù)雜度,采用“余數(shù)拆分”算法。方法不需要做16位的除法運(yùn)算,仍采用8位的寄存器即可以獲得所要求精度的小數(shù)位數(shù)。對(duì)該算法在簡(jiǎn)易數(shù)字電壓表中的應(yīng)用進(jìn)行了原理分析,同時(shí)進(jìn)行了軟件設(shè)計(jì),并通過(guò)Proteus仿真來(lái)驗(yàn)證該處理方法的可行性。該算法使得所需要的硬件資源減少、編程簡(jiǎn)單,值得應(yīng)用與推廣。

關(guān)鍵詞: “余數(shù)拆分”算法; 數(shù)字電壓表; AT89C51; ADC0809

中圖分類號(hào): TN911?34; TP336 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 1004?373X(2014)18?0030?02

Application of remainder split algorithm in simple digital voltmeter

LI Li1, GUO Jian?qin2

(1. Shandong Labor Vocational and Technical College, Jinan 250022, China; 2. Shandong College of Electronic Technology, Jinan 250014, China)

Abstract: In order to reduce the number of registers used by MCU and programming complexity in the decimal part processing in the simple digital voltmeter designed with assembly language, the remainder split algorithm was adopted, which does not need to do 16?place division operation, but still uses the 8?bit register to obtain the decimal digits of the required accuracy. The principle analysis of algorithm application in simple digital voltage meter is conducted. The software design was made. The feasibility of the processing method was verified by Proteus simulation. The algorithm makes the required hardware resources reduced and the programming simple. It is worth of application and promotion.

Keywords: remainder split algorithm; digital voltmeter; AT89C51; ADC0809

在電子測(cè)量中,數(shù)字電壓表中小數(shù)位的處理直接影響數(shù)據(jù)的精確度[1],電子工程師們常采用ADC0809及C語(yǔ)言實(shí)現(xiàn)數(shù)字電壓表的顯示[2],常用的處理A/D轉(zhuǎn)換后的數(shù)顯電壓值的方法是通過(guò)[U=UrefN255]計(jì)算得出[3]。其中:U為實(shí)際轉(zhuǎn)換出來(lái)的電壓值;[Uref]為ADC0809的基準(zhǔn)電壓,通常取5 V;N為A/D轉(zhuǎn)換的數(shù)字值。利用該公式來(lái)獲取數(shù)值的優(yōu)點(diǎn)是思路簡(jiǎn)單,非常適合采用C語(yǔ)言來(lái)實(shí)現(xiàn)[4?5]。但是當(dāng)采用執(zhí)行速度快的匯編語(yǔ)言設(shè)計(jì)和AT89C51單片機(jī)時(shí),由于[Uref]N的值可能會(huì)大于8位寄存器的最大值255,這時(shí)要完成上述的除法運(yùn)算的話,則需要多個(gè)8位的寄存器來(lái)實(shí)現(xiàn),使所利用的硬件資源增多、編程復(fù)雜化。本文主要是針對(duì)簡(jiǎn)易數(shù)字電壓表中小數(shù)部分的處理方法作一研究,采用AT89C51單片機(jī)及ADC0809實(shí)現(xiàn),測(cè)量范圍在0~5 V之間,采用匯編語(yǔ)言設(shè)計(jì),并通過(guò)Proteus仿真來(lái)驗(yàn)證該處理方法的可行性。本文提出一種算法,在此稱為“余數(shù)拆分”法,此方法不需要做16位的除法運(yùn)算,仍采用8位的寄存器即可以獲得所要求精度的小數(shù)位數(shù)。

1 “余數(shù)拆分”算法

設(shè)電壓測(cè)量范圍為0~5 V,某一電壓經(jīng)ADC0809實(shí)現(xiàn)A/D轉(zhuǎn)換后的數(shù)字值為data,則要重顯該電壓值(包括整數(shù)位n和小數(shù)位)時(shí),所采用的處理方法如下:

(1) 先進(jìn)行如下運(yùn)算:

[data51=商(即為整數(shù)位n)…… 余數(shù)a(以此獲取第一位小數(shù))]

式中:除數(shù)51=8位寄存器的最大[值最]大電壓值=[2555。]

(2) 小數(shù)位的獲取。小數(shù)點(diǎn)后第1位小數(shù)要由 [10a5]取商而得到。當(dāng)a≤25時(shí),由于10a≤250﹤255,即可直接用8位的寄存器來(lái)完成該除法運(yùn)算。而當(dāng)26≤a﹤51時(shí),則10a≥260,要完成[10a5],被除數(shù)需要2個(gè)8位的寄存器,使得程序的編寫(xiě)復(fù)雜。此時(shí)可對(duì)余數(shù)a作如下拆分:

[a=25+b] (1)

式中:26≤a﹤51,b﹤26。

則:

[10a51=1025+b51=250+10b51 =255+10b-551=5+10b-551] (2)

在式中由于b﹤26,則(10b-5)﹤255,即可以直接用8位的寄存器來(lái)完成“[10b-551]”的運(yùn)算。利用[10b-551]的商再加上5就可得到第1位小數(shù)。要想得到第2位小數(shù),則再對(duì)[10b-551]運(yùn)算后的余數(shù)按式(1)做拆分,按式(2)來(lái)獲取第2位小數(shù)。依次類推,不管獲得小數(shù)點(diǎn)后多少位的精度,8位的寄存器都可以完成。

2 “余數(shù)拆分”算法在簡(jiǎn)易數(shù)字電壓表中的應(yīng)用

采用AT89C51單片機(jī)、ADC0809模/數(shù)轉(zhuǎn)換器,根據(jù)“余數(shù)拆分”算法,精度保留小數(shù)點(diǎn)后3位、采用能夠直接控制硬件且實(shí)時(shí)性強(qiáng)[6?7]的匯編語(yǔ)言進(jìn)行軟件設(shè)計(jì)。流程圖如圖1所示。

圖1 軟件流程圖

3 Proteus仿真

作為當(dāng)今世界最受歡迎的EDA仿真軟件,Proteus仿真是一種嵌入式系統(tǒng)仿真與開(kāi)發(fā)平臺(tái),由英國(guó)Labcenter公司研發(fā)[8?9]。它支持單片機(jī)系統(tǒng)的硬件電路仿真并提供軟件調(diào)試功能[10],仿真形象生動(dòng),接近現(xiàn)實(shí)環(huán)境,省去了現(xiàn)場(chǎng)安裝調(diào)試硬件的環(huán)節(jié),省時(shí)、有效[11?12] 。

Proteus仿真電路圖設(shè)計(jì)與顯示如圖2所示。在該仿真電路中,當(dāng)電位器的觸頭處于圖中所示位置時(shí),經(jīng)過(guò)ADC0809轉(zhuǎn)換后得到的數(shù)字值為11111110B,則利用上述公式得到的保留3位小數(shù)的電壓值應(yīng)是2.490 V,而仿真顯示的數(shù)值即為2.490 V,如圖2所示,說(shuō)明該算法準(zhǔn)確度高。

圖2 Protues仿真驗(yàn)證圖

4 結(jié) 重

在測(cè)量范圍為0~5 V、采用匯編語(yǔ)言設(shè)計(jì)及ADC0809的簡(jiǎn)易數(shù)字電壓表中,應(yīng)用“余數(shù)拆分”算法可以有效地避免16位的除法運(yùn)算,減少利用的寄存器數(shù)量及編程的復(fù)雜度,只利用8位的寄存器就可以得到小數(shù)點(diǎn)后所要求的精度的位數(shù)。編程簡(jiǎn)單,值得應(yīng)用與推廣。

參考文獻(xiàn)

[1] 宋鳳娟,孫君,李國(guó)忠.基于89C51單片機(jī)的數(shù)字電壓表設(shè)計(jì)[J].制造業(yè)自動(dòng)化,2007(2):25?27.

[2] 楊建成.基于單片機(jī)的數(shù)字電壓表的設(shè)計(jì)與仿真[J].現(xiàn)代電子技術(shù),2012,35(21):170?172.

[3] 楊志忠.數(shù)字電子技術(shù)[M].4版.北京:高等教育出版社,2013.

[4] 金春林.AVR系列單片機(jī)C語(yǔ)言編程與應(yīng)用實(shí)例[M].北京:清華大學(xué)出版社,2003.

[5] 胡輝,李葉紫,胡力平.單片機(jī)原理與應(yīng)用[M].北京:中國(guó)水利水電出版社,2007.

[6] 郭曉偉.匯編語(yǔ)言的優(yōu)越性及實(shí)用性[J].中國(guó)科技信息,2006(3):65?66.

[7] 黎遠(yuǎn)松.匯編語(yǔ)言程序設(shè)計(jì)技術(shù)研究[J].成都大學(xué)學(xué)報(bào):自然科學(xué)版,2006(1):66?69.

[8] 周潤(rùn)景.基于Protes的電路及單片機(jī)系統(tǒng)設(shè)計(jì)與仿真[M].北京:北京航空航天大學(xué)出版社,2006.

[9] 王瑾.基于Protes的數(shù)字電壓表仿真設(shè)計(jì)[J].電子設(shè)計(jì)工程,2013,21(1):122?124.

[10] 王瑞萍.基于Protes的單片機(jī)虛擬開(kāi)發(fā)環(huán)境[J].現(xiàn)代電子技術(shù),2009,32(8):155?157.

[11] 陳少航,李山,苗亮亮,等.基于Protes的單片機(jī)應(yīng)用系統(tǒng)的設(shè)計(jì)與仿真[J].現(xiàn)代電子技術(shù),2007,30(6):43?45.

[12] 鄧鵬.Protes虛擬仿真在單片機(jī)實(shí)驗(yàn)教學(xué)中的應(yīng)用研究[J].現(xiàn)代電子技術(shù),2012,35(16):27?29.

2 “余數(shù)拆分”算法在簡(jiǎn)易數(shù)字電壓表中的應(yīng)用

采用AT89C51單片機(jī)、ADC0809模/數(shù)轉(zhuǎn)換器,根據(jù)“余數(shù)拆分”算法,精度保留小數(shù)點(diǎn)后3位、采用能夠直接控制硬件且實(shí)時(shí)性強(qiáng)[6?7]的匯編語(yǔ)言進(jìn)行軟件設(shè)計(jì)。流程圖如圖1所示。

圖1 軟件流程圖

3 Proteus仿真

作為當(dāng)今世界最受歡迎的EDA仿真軟件,Proteus仿真是一種嵌入式系統(tǒng)仿真與開(kāi)發(fā)平臺(tái),由英國(guó)Labcenter公司研發(fā)[8?9]。它支持單片機(jī)系統(tǒng)的硬件電路仿真并提供軟件調(diào)試功能[10],仿真形象生動(dòng),接近現(xiàn)實(shí)環(huán)境,省去了現(xiàn)場(chǎng)安裝調(diào)試硬件的環(huán)節(jié),省時(shí)、有效[11?12] 。

Proteus仿真電路圖設(shè)計(jì)與顯示如圖2所示。在該仿真電路中,當(dāng)電位器的觸頭處于圖中所示位置時(shí),經(jīng)過(guò)ADC0809轉(zhuǎn)換后得到的數(shù)字值為11111110B,則利用上述公式得到的保留3位小數(shù)的電壓值應(yīng)是2.490 V,而仿真顯示的數(shù)值即為2.490 V,如圖2所示,說(shuō)明該算法準(zhǔn)確度高。

圖2 Protues仿真驗(yàn)證圖

4 結(jié) 重

在測(cè)量范圍為0~5 V、采用匯編語(yǔ)言設(shè)計(jì)及ADC0809的簡(jiǎn)易數(shù)字電壓表中,應(yīng)用“余數(shù)拆分”算法可以有效地避免16位的除法運(yùn)算,減少利用的寄存器數(shù)量及編程的復(fù)雜度,只利用8位的寄存器就可以得到小數(shù)點(diǎn)后所要求的精度的位數(shù)。編程簡(jiǎn)單,值得應(yīng)用與推廣。

參考文獻(xiàn)

[1] 宋鳳娟,孫君,李國(guó)忠.基于89C51單片機(jī)的數(shù)字電壓表設(shè)計(jì)[J].制造業(yè)自動(dòng)化,2007(2):25?27.

[2] 楊建成.基于單片機(jī)的數(shù)字電壓表的設(shè)計(jì)與仿真[J].現(xiàn)代電子技術(shù),2012,35(21):170?172.

[3] 楊志忠.數(shù)字電子技術(shù)[M].4版.北京:高等教育出版社,2013.

[4] 金春林.AVR系列單片機(jī)C語(yǔ)言編程與應(yīng)用實(shí)例[M].北京:清華大學(xué)出版社,2003.

[5] 胡輝,李葉紫,胡力平.單片機(jī)原理與應(yīng)用[M].北京:中國(guó)水利水電出版社,2007.

[6] 郭曉偉.匯編語(yǔ)言的優(yōu)越性及實(shí)用性[J].中國(guó)科技信息,2006(3):65?66.

[7] 黎遠(yuǎn)松.匯編語(yǔ)言程序設(shè)計(jì)技術(shù)研究[J].成都大學(xué)學(xué)報(bào):自然科學(xué)版,2006(1):66?69.

[8] 周潤(rùn)景.基于Protes的電路及單片機(jī)系統(tǒng)設(shè)計(jì)與仿真[M].北京:北京航空航天大學(xué)出版社,2006.

[9] 王瑾.基于Protes的數(shù)字電壓表仿真設(shè)計(jì)[J].電子設(shè)計(jì)工程,2013,21(1):122?124.

[10] 王瑞萍.基于Protes的單片機(jī)虛擬開(kāi)發(fā)環(huán)境[J].現(xiàn)代電子技術(shù),2009,32(8):155?157.

[11] 陳少航,李山,苗亮亮,等.基于Protes的單片機(jī)應(yīng)用系統(tǒng)的設(shè)計(jì)與仿真[J].現(xiàn)代電子技術(shù),2007,30(6):43?45.

[12] 鄧鵬.Protes虛擬仿真在單片機(jī)實(shí)驗(yàn)教學(xué)中的應(yīng)用研究[J].現(xiàn)代電子技術(shù),2012,35(16):27?29.

2 “余數(shù)拆分”算法在簡(jiǎn)易數(shù)字電壓表中的應(yīng)用

采用AT89C51單片機(jī)、ADC0809模/數(shù)轉(zhuǎn)換器,根據(jù)“余數(shù)拆分”算法,精度保留小數(shù)點(diǎn)后3位、采用能夠直接控制硬件且實(shí)時(shí)性強(qiáng)[6?7]的匯編語(yǔ)言進(jìn)行軟件設(shè)計(jì)。流程圖如圖1所示。

圖1 軟件流程圖

3 Proteus仿真

作為當(dāng)今世界最受歡迎的EDA仿真軟件,Proteus仿真是一種嵌入式系統(tǒng)仿真與開(kāi)發(fā)平臺(tái),由英國(guó)Labcenter公司研發(fā)[8?9]。它支持單片機(jī)系統(tǒng)的硬件電路仿真并提供軟件調(diào)試功能[10],仿真形象生動(dòng),接近現(xiàn)實(shí)環(huán)境,省去了現(xiàn)場(chǎng)安裝調(diào)試硬件的環(huán)節(jié),省時(shí)、有效[11?12] 。

Proteus仿真電路圖設(shè)計(jì)與顯示如圖2所示。在該仿真電路中,當(dāng)電位器的觸頭處于圖中所示位置時(shí),經(jīng)過(guò)ADC0809轉(zhuǎn)換后得到的數(shù)字值為11111110B,則利用上述公式得到的保留3位小數(shù)的電壓值應(yīng)是2.490 V,而仿真顯示的數(shù)值即為2.490 V,如圖2所示,說(shuō)明該算法準(zhǔn)確度高。

圖2 Protues仿真驗(yàn)證圖

4 結(jié) 重

在測(cè)量范圍為0~5 V、采用匯編語(yǔ)言設(shè)計(jì)及ADC0809的簡(jiǎn)易數(shù)字電壓表中,應(yīng)用“余數(shù)拆分”算法可以有效地避免16位的除法運(yùn)算,減少利用的寄存器數(shù)量及編程的復(fù)雜度,只利用8位的寄存器就可以得到小數(shù)點(diǎn)后所要求的精度的位數(shù)。編程簡(jiǎn)單,值得應(yīng)用與推廣。

參考文獻(xiàn)

[1] 宋鳳娟,孫君,李國(guó)忠.基于89C51單片機(jī)的數(shù)字電壓表設(shè)計(jì)[J].制造業(yè)自動(dòng)化,2007(2):25?27.

[2] 楊建成.基于單片機(jī)的數(shù)字電壓表的設(shè)計(jì)與仿真[J].現(xiàn)代電子技術(shù),2012,35(21):170?172.

[3] 楊志忠.數(shù)字電子技術(shù)[M].4版.北京:高等教育出版社,2013.

[4] 金春林.AVR系列單片機(jī)C語(yǔ)言編程與應(yīng)用實(shí)例[M].北京:清華大學(xué)出版社,2003.

[5] 胡輝,李葉紫,胡力平.單片機(jī)原理與應(yīng)用[M].北京:中國(guó)水利水電出版社,2007.

[6] 郭曉偉.匯編語(yǔ)言的優(yōu)越性及實(shí)用性[J].中國(guó)科技信息,2006(3):65?66.

[7] 黎遠(yuǎn)松.匯編語(yǔ)言程序設(shè)計(jì)技術(shù)研究[J].成都大學(xué)學(xué)報(bào):自然科學(xué)版,2006(1):66?69.

[8] 周潤(rùn)景.基于Protes的電路及單片機(jī)系統(tǒng)設(shè)計(jì)與仿真[M].北京:北京航空航天大學(xué)出版社,2006.

[9] 王瑾.基于Protes的數(shù)字電壓表仿真設(shè)計(jì)[J].電子設(shè)計(jì)工程,2013,21(1):122?124.

[10] 王瑞萍.基于Protes的單片機(jī)虛擬開(kāi)發(fā)環(huán)境[J].現(xiàn)代電子技術(shù),2009,32(8):155?157.

[11] 陳少航,李山,苗亮亮,等.基于Protes的單片機(jī)應(yīng)用系統(tǒng)的設(shè)計(jì)與仿真[J].現(xiàn)代電子技術(shù),2007,30(6):43?45.

[12] 鄧鵬.Protes虛擬仿真在單片機(jī)實(shí)驗(yàn)教學(xué)中的應(yīng)用研究[J].現(xiàn)代電子技術(shù),2012,35(16):27?29.

主站蜘蛛池模板: 一级一级一片免费| 国产伦片中文免费观看| 亚洲人成电影在线播放| 国产sm重味一区二区三区| 亚洲高清日韩heyzo| 成年人福利视频| 3344在线观看无码| 欧美成人免费午夜全| 试看120秒男女啪啪免费| 亚洲福利网址| 日日噜噜夜夜狠狠视频| 日韩在线中文| 99精品伊人久久久大香线蕉 | 91色在线观看| 久久伊人操| 欧美精品另类| 青青青国产视频手机| 成人亚洲国产| 国产手机在线ΑⅤ片无码观看| 成人亚洲国产| 亚洲国产天堂久久综合226114 | 国产av无码日韩av无码网站| 91色老久久精品偷偷蜜臀| 久久夜色精品国产嚕嚕亚洲av| 亚洲成人精品久久| 国产网站黄| 成AV人片一区二区三区久久| 国产精品久久久久久影院| 久久久久亚洲精品无码网站| 亚洲色偷偷偷鲁综合| 亚洲成人一区二区三区| 欧美黄色a| 国产成人精品一区二区三区| 亚洲乱码在线播放| 亚洲国产av无码综合原创国产| 国产成人乱无码视频| 91麻豆精品国产91久久久久| 国产AV无码专区亚洲A∨毛片| 亚洲精品天堂自在久久77| 亚洲第一网站男人都懂| 99热最新在线| 日韩av资源在线| 五月婷婷伊人网| 国产又粗又猛又爽| 欧美一区精品| 日韩中文无码av超清| 搞黄网站免费观看| 欧美日韩在线亚洲国产人| 亚洲欧美在线综合一区二区三区| 久久精品电影| 亚洲精品自产拍在线观看APP| 国产一区亚洲一区| 亚洲第七页| 成人第一页| 亚洲人成网18禁| 91亚瑟视频| 国产精品对白刺激| 欧美性爱精品一区二区三区 | 性做久久久久久久免费看| 丰满人妻一区二区三区视频| 日韩精品毛片人妻AV不卡| 成人一级黄色毛片| 欧美亚洲另类在线观看| 亚洲无码视频喷水| 亚洲精品在线91| 波多野结衣中文字幕一区| 97久久精品人人| 怡春院欧美一区二区三区免费| 亚洲国产高清精品线久久| 成人永久免费A∨一级在线播放| 黄色网址免费在线| 成年人久久黄色网站| 亚洲AV一二三区无码AV蜜桃| 亚洲成人福利网站| 成人国产一区二区三区| 国产乱子伦视频在线播放| 日韩欧美中文字幕一本| 3D动漫精品啪啪一区二区下载| 久久性视频| 久久96热在精品国产高清| 91丨九色丨首页在线播放| 欧美在线视频不卡第一页|