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.

主站蜘蛛池模板: 中文字幕在线不卡视频| 久久精品aⅴ无码中文字幕 | 2020国产精品视频| 免费观看男人免费桶女人视频| 国产精品亚洲日韩AⅤ在线观看| 精品视频一区二区观看| 人妻熟妇日韩AV在线播放| 天天综合网亚洲网站| 久久人与动人物A级毛片| 亚洲人在线| 天天躁夜夜躁狠狠躁图片| 国产美女一级毛片| 国产精品自在在线午夜区app| 97精品国产高清久久久久蜜芽 | 欧美中文字幕无线码视频| 国产小视频免费| 青青草原国产免费av观看| 亚洲综合九九| 1级黄色毛片| 欧美久久网| 欧美国产成人在线| 国产第一页屁屁影院| 老色鬼久久亚洲AV综合| 国产精品欧美在线观看| 久久婷婷五月综合色一区二区| 国产成人亚洲精品无码电影| 国产浮力第一页永久地址| 中文字幕丝袜一区二区| 欧美色伊人| 亚洲三级影院| 无码人中文字幕| 精品综合久久久久久97超人该| 亚洲无线国产观看| 无码日韩视频| 国产成年无码AⅤ片在线| 久久精品视频一| 香蕉精品在线| 麻豆精品在线| 国产综合在线观看视频| 日本日韩欧美| 免费人成黄页在线观看国产| 99久久亚洲综合精品TS| 亚洲国产高清精品线久久| 操国产美女| 亚洲男人在线天堂| 毛片免费网址| 亚洲第一页在线观看| 国产亚洲视频在线观看| 成人一区在线| 欧美视频在线播放观看免费福利资源| 青青草原国产一区二区| 亚洲中文在线看视频一区| 国产精品亚洲va在线观看| 久久久久青草线综合超碰| 亚洲熟女偷拍| 国产成人高清精品免费软件 | 亚国产欧美在线人成| 性视频久久| 国产成人精品亚洲日本对白优播| 青青青视频蜜桃一区二区| 国产区人妖精品人妖精品视频| 99中文字幕亚洲一区二区| 久久久久国色AV免费观看性色| 国产美女无遮挡免费视频| 免费女人18毛片a级毛片视频| 永久天堂网Av| a欧美在线| 91蜜芽尤物福利在线观看| 四虎成人免费毛片| 2019国产在线| 久久伊人久久亚洲综合| 欧美成人第一页| 久久不卡精品| 国产精品无码AⅤ在线观看播放| 亚洲国语自产一区第二页| 国产va在线观看| AV无码一区二区三区四区| 色老头综合网| 欧洲成人在线观看| 日本黄色不卡视频| 九九热视频精品在线| 91九色国产在线|