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.

主站蜘蛛池模板: 国产91在线|日本| 亚洲国产无码有码| 91精品最新国内在线播放| 视频一区视频二区日韩专区| 97在线免费视频| 一级看片免费视频| 久久午夜夜伦鲁鲁片不卡| P尤物久久99国产综合精品| 久视频免费精品6| 欧洲亚洲欧美国产日本高清| 无码精品一区二区久久久| 91精品专区| 日韩小视频在线播放| 999精品色在线观看| 国产毛片高清一级国语| 欧美日韩第二页| 国产第一页屁屁影院| 伊人精品成人久久综合| 欧洲高清无码在线| 亚洲视频a| 五月婷婷综合网| 韩国v欧美v亚洲v日本v| 国产毛片片精品天天看视频| 性网站在线观看| 伊人久久综在合线亚洲2019| 亚洲人成电影在线播放| 91综合色区亚洲熟妇p| 91午夜福利在线观看精品| 国产在线观看第二页| 国产欧美日韩视频怡春院| 992tv国产人成在线观看| 欧美在线伊人| 国产日韩精品欧美一区喷| 国产一区二区三区免费观看| 综合色亚洲| 国产96在线 | 欧美亚洲国产一区| 午夜一区二区三区| 国产成人三级在线观看视频| 666精品国产精品亚洲| 久久精品国产亚洲麻豆| 999精品色在线观看| aⅴ免费在线观看| 欧美三级日韩三级| 美女免费精品高清毛片在线视| 视频在线观看一区二区| 四虎综合网| 丝袜高跟美脚国产1区| 97综合久久| 中字无码精油按摩中出视频| 婷婷六月综合网| 99中文字幕亚洲一区二区| 亚洲成人网在线观看| 亚洲无码久久久久| 日本在线免费网站| 国产一级毛片yw| 日本亚洲成高清一区二区三区| 久青草网站| 久久99国产综合精品1| 国产成人av一区二区三区| 美女黄网十八禁免费看| 欧美亚洲综合免费精品高清在线观看| 欧美专区在线观看| 精品国产一区91在线| 亚洲婷婷在线视频| 久无码久无码av无码| 亚洲一级色| 极品性荡少妇一区二区色欲| 97精品国产高清久久久久蜜芽| 日本三级欧美三级| 亚洲五月激情网| 人妻中文久热无码丝袜| 国产另类乱子伦精品免费女| 伊人久综合| 国产成人亚洲毛片| 四虎成人在线视频| 一区二区在线视频免费观看| 日韩精品中文字幕一区三区| 国产v精品成人免费视频71pao| 中文字幕波多野不卡一区| 婷婷开心中文字幕| 免费国产在线精品一区|