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.

主站蜘蛛池模板: 国内视频精品| 麻豆精品在线播放| 国产激情在线视频| 国产av无码日韩av无码网站| 秋霞一区二区三区| 国产精品yjizz视频网一二区| 国产成人免费手机在线观看视频| 18禁高潮出水呻吟娇喘蜜芽| a毛片在线| 综合久久久久久久综合网| 无码日韩视频| 国产剧情伊人| 欧美日韩免费在线视频| 久草性视频| 日韩少妇激情一区二区| 中文字幕 欧美日韩| 好紧太爽了视频免费无码| 久久久久亚洲精品成人网| 日本黄网在线观看| 亚洲国产精品无码AV| 91精品综合| 情侣午夜国产在线一区无码| 又黄又湿又爽的视频| 天堂av综合网| 亚洲日韩国产精品无码专区| 亚洲中文无码h在线观看| 国产精品久线在线观看| 欧美国产视频| 日韩小视频在线观看| 国产精欧美一区二区三区| 五月天久久婷婷| 国产精品开放后亚洲| 白浆视频在线观看| 国产精品第三页在线看| 国产一区亚洲一区| 天天综合网站| 国产亚洲欧美在线人成aaaa| 高清免费毛片| 日本亚洲国产一区二区三区| 亚洲第一黄色网| 精品综合久久久久久97超人该| 欧美v在线| 国产黄视频网站| www.亚洲国产| 在线免费亚洲无码视频| 国产二级毛片| 一个色综合久久| 最新国产高清在线| A级毛片无码久久精品免费| 2020久久国产综合精品swag| 人妻无码AⅤ中文字| 国产人成网线在线播放va| 天天色天天操综合网| 亚洲综合二区| 午夜久久影院| 亚洲免费播放| 久久精品只有这里有| 精品少妇人妻一区二区| 亚洲第一中文字幕| 色悠久久久久久久综合网伊人| 亚洲国产成人在线| 亚洲av无码牛牛影视在线二区| 日韩精品成人在线| 国产91高清视频| 欧美伦理一区| 狠狠躁天天躁夜夜躁婷婷| 91成人在线观看| 亚洲天堂啪啪| 国产成人高清在线精品| 国产福利免费视频| 久久婷婷综合色一区二区| 久青草网站| 久久精品国产国语对白| 91精品国产综合久久不国产大片| 国产黄视频网站| 国产二级毛片| 五月婷婷中文字幕| 欧洲精品视频在线观看| 2020极品精品国产| 青草视频在线观看国产| 无套av在线| 国产高清在线精品一区二区三区 |