《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于單片機(jī)的LCD數(shù)字電流表的設(shè)計(jì)與實(shí)現(xiàn)
基于單片機(jī)的LCD數(shù)字電流表的設(shè)計(jì)與實(shí)現(xiàn)
張玲麗
(武漢職業(yè)技術(shù)學(xué)院 電子信息工程學(xué)院,湖北 武漢 430074)
摘要: 本文中數(shù)字電流表的控制系統(tǒng)采用AT89S51單片機(jī),A/D轉(zhuǎn)換器采用ADC0809為主要硬件,實(shí)現(xiàn)數(shù)字電流表的硬件電路與軟件設(shè)計(jì)。該系統(tǒng)的數(shù)字電流表電路簡(jiǎn)單,所用的元件較少,成本低,調(diào)節(jié)工作可實(shí)現(xiàn)自動(dòng)化。數(shù)字電流表可以測(cè)量0~200 mA的8路輸入電流值,并在LCD液晶顯示屏上顯示出來(lái)。
Abstract:
Key words :

  摘  要: 本文中數(shù)字電流表的控制系統(tǒng)采用AT89S51單片機(jī)A/D轉(zhuǎn)換器采用ADC0809為主要硬件,實(shí)現(xiàn)數(shù)字電流表的硬件電路與軟件設(shè)計(jì)。該系統(tǒng)的數(shù)字電流表電路簡(jiǎn)單,所用的元件較少,成本低,調(diào)節(jié)工作可實(shí)現(xiàn)自動(dòng)化。數(shù)字電流表可以測(cè)量0~200 mA的8路輸入電流值,并在LCD液晶顯示屏上顯示出來(lái)。

  關(guān)鍵詞: 單片機(jī);數(shù)字電流表;A/D轉(zhuǎn)換器;液晶顯示屏

0 引言

  在現(xiàn)實(shí)中,根據(jù)測(cè)試系統(tǒng)的要求,往往需要采集被測(cè)對(duì)象的各種參數(shù),如電壓、電流等,這些參數(shù)的采集是至關(guān)重要的,它們直接影響到整個(gè)測(cè)試系統(tǒng)的測(cè)試精度。在有些應(yīng)用中,需要對(duì)電流進(jìn)行檢測(cè),必須先將其電流信號(hào)轉(zhuǎn)換為電壓信號(hào),然后才能實(shí)現(xiàn)A/D轉(zhuǎn)換。常用的轉(zhuǎn)換方法是在電路中加入精密電阻,由此將電流信號(hào)轉(zhuǎn)換為電壓信號(hào)[1]。這種方法的優(yōu)點(diǎn)是測(cè)量簡(jiǎn)單方便,但是這種方法當(dāng)電流很小時(shí),從電阻上取得的電壓值可能很小,影響測(cè)量精度,因而很難選擇一個(gè)合適的阻值;其次,所得到的電流檢測(cè)信號(hào)只有通過(guò)放大以后才能進(jìn)入電路中的比較器,從而增加了電路設(shè)計(jì)調(diào)試時(shí)的復(fù)雜度。因此,需要采用電流/電壓轉(zhuǎn)換芯片,并結(jié)合單片機(jī)以實(shí)現(xiàn)對(duì)電流信號(hào)的檢測(cè)。本文中采用精密電阻,克服了常規(guī)測(cè)量電流方法存在的測(cè)量范圍小、測(cè)量誤差大等缺點(diǎn),可提高測(cè)量精度,同時(shí)采用單片機(jī)可實(shí)現(xiàn)自動(dòng)檢測(cè)。

1 硬件電路設(shè)計(jì)

  本設(shè)計(jì)旨在設(shè)計(jì)一款測(cè)量范圍在0~200 mA、顯示精度在小數(shù)點(diǎn)前一位的基于AT89S51單片機(jī)帶液晶顯示功能的電流表,經(jīng)查閱多種相關(guān)資料,確定本設(shè)計(jì)的總體框圖如圖1所示。

001.jpg

  圖1所示電路工作過(guò)程:將需要檢測(cè)的電流信號(hào)經(jīng)過(guò)I/V變換變?yōu)殡妷盒盘?hào),將其輸出的電壓信號(hào)連接到ADC0809進(jìn)行A/D轉(zhuǎn)換,電壓信號(hào)經(jīng)過(guò)采樣后,輸出到單片機(jī),單片機(jī)控制中斷的過(guò)程以及數(shù)據(jù)的讀取過(guò)程,最后通過(guò)控制液晶顯示所讀取的數(shù)據(jù)。

  1.1 I/V變換電路部分

  對(duì)本設(shè)計(jì)來(lái)說(shuō),由于精度要求并不高,故用有源I/V即可滿足要求,有源I/V變換是利用有源器件——運(yùn)算放大器和電阻電容組成的,如圖2所示。

002.jpg

  該有源I/V變換電路利用同相放大電路,把電阻R1上的輸入電壓變成標(biāo)準(zhǔn)輸出電壓。該同相放大電路的放大倍數(shù)為:

  F(A}U6II44TMA`R%E9A((CC.png

  若取R1=20 Ω,R2=100 kΩ,R3=100 kΩ,R4=25 kΩ,R5=10 kΩ,則當(dāng)輸入電流為0~200 mA時(shí),對(duì)應(yīng)于0~5 V的電壓輸出。

  1.2 A/D轉(zhuǎn)換模塊

  基于成本、功耗、分辨率、模擬電壓轉(zhuǎn)換范圍等因素,此處選擇ADC0809芯片。ADC0809與8051單片機(jī)的硬件接口有3種形式,分別是查詢方式、中斷方式和延時(shí)等待方式。A/D轉(zhuǎn)換后得到的數(shù)據(jù)應(yīng)及時(shí)傳送給單片機(jī)進(jìn)行處理。數(shù)據(jù)傳送的關(guān)鍵問(wèn)題是如何確認(rèn)A/D轉(zhuǎn)換的完成,因?yàn)橹挥写_認(rèn)完成后,才能進(jìn)行傳送。在本設(shè)計(jì)中,選擇中斷方式,即把表明轉(zhuǎn)換完成的狀態(tài)信號(hào)(EOC)作為中斷請(qǐng)求信號(hào),以中斷方式進(jìn)行數(shù)據(jù)傳送。

  1.3 單片機(jī)模塊

  該電流表可測(cè)量0~200 mA的直流電壓,通過(guò)電位器調(diào)節(jié)產(chǎn)生,顯示位數(shù)3位[2],工作電壓5 V。通過(guò)A/D轉(zhuǎn)換芯片ADC0809把模擬信號(hào)轉(zhuǎn)換為數(shù)字量傳送到單片機(jī)的P3口,并在P2口把轉(zhuǎn)換的結(jié)果顯示出來(lái)。在仿真軟件Protesus[3]里選擇元器件后連接電流表總圖,如圖3所示。

003.jpg

  本設(shè)計(jì)選用的AT89S51是ATMEL公司推出的高性能8位微控制器,由于ADC0809無(wú)片內(nèi)時(shí)鐘,時(shí)鐘信號(hào)可由AT89S51的ALE信號(hào)經(jīng)D觸發(fā)器二分頻后獲得。ALE引腳的脈沖頻率是8051時(shí)鐘頻率的1/6。本設(shè)計(jì)中單片機(jī)時(shí)鐘頻率采用6 MHz,則ALE輸出的頻率是1 MHz,二分頻后為500 kHz,符合ADC0809對(duì)頻率的要求。

  1.4 顯示部分

  本電流表的顯示[4]選擇LCDl602型LCD,它具有電流小、功耗低、體積小、字跡清晰、美觀、方便、使用壽命長(zhǎng)、無(wú)電磁輻射等優(yōu)點(diǎn)。從圖3中可看出其與AT89S51的P0口相連,其DO~D7為8位雙向數(shù)據(jù)線,VSS為地電源,VDD接5 V正向電源,VEE為液晶顯示器對(duì)比度調(diào)整端,接正向電源時(shí)對(duì)比度最弱,而接地電源時(shí)對(duì)比度最高。該引腳通過(guò)一只1 kΩ的電位器來(lái)調(diào)整其對(duì)比度。RS為寄存器選擇引腳,RS為高電平時(shí)選用數(shù)據(jù)寄存器;RS為低電平時(shí)選用指令寄存器。RW為可讀寫(xiě)信號(hào)引腳,RW高電平時(shí)為讀操作;RW低電平時(shí)為寫(xiě)操作。當(dāng)RS和RW共同為低電平時(shí)則寫(xiě)入指令或者顯示地址;當(dāng)RS為低電平、RW為高電平時(shí)為讀忙信號(hào);當(dāng)RS為高電平、RW為低電平時(shí)為寫(xiě)人數(shù)據(jù)。E為使能端,當(dāng)E由高電平跳變?yōu)榈碗娖綍r(shí),LCD液晶模塊開(kāi)始執(zhí)行命令。

2 電流表軟件設(shè)計(jì)

  本電流表的主程序流程包括:系統(tǒng)初始化、中斷處理程序、數(shù)值轉(zhuǎn)換程序、顯示處理程序。較關(guān)鍵的是數(shù)據(jù)采集部分和顯示部分。

  2.1 數(shù)據(jù)采集部分

  本部分程序設(shè)計(jì)的思想如下:首先由ADC0809采集數(shù)據(jù),采集完成后單片機(jī)通過(guò)中斷將數(shù)據(jù)讀入,然后將所得十六進(jìn)制數(shù)轉(zhuǎn)換成十進(jìn)制數(shù),將此十進(jìn)制數(shù)的百、十、個(gè)位分別取出,在預(yù)先設(shè)置好的表中查出其所對(duì)應(yīng)的顯示指令并顯示出來(lái)。以下為數(shù)值轉(zhuǎn)換的主代碼[5]。

  codes=PORT;//將中斷值賦予codes

  codes1=(codes&0xf0)>>4;//取出codes的高4位

  codes0=codes&0x0f;//取出codes的低4位

  code_d=codes1*16+codes0;//將codes轉(zhuǎn)化為十進(jìn)制數(shù)

  bai=code_d/100;//將code_d的百位取出

  shi=code_d/10%10;//將code_d的十位取出

  ge=code_d%10;//將code_d的個(gè)位取出

  2.2 數(shù)值顯示程序

  這部分程序首先要將單位mA顯示出來(lái),因?yàn)檫@單位是不變的。要把測(cè)得的數(shù)值在液晶屏上顯示出來(lái)時(shí),此處調(diào)用一個(gè)getchar函數(shù)。在這個(gè)函數(shù)中,用了一個(gè)do{}while語(yǔ)句。在此語(yǔ)句的一開(kāi)頭首先測(cè)試液晶模塊是否空閑,若不空閑則等待其空閑,當(dāng)液晶空閑時(shí),執(zhí)行嵌套switch/case語(yǔ)句。由于要顯示三個(gè)數(shù)字,所以設(shè)定了一個(gè)變量i,當(dāng)i=0時(shí)顯示百位,當(dāng)i=1時(shí)顯示十位,當(dāng)i=2時(shí)顯示個(gè)位。顯示數(shù)字時(shí)可選擇查表法。先建立三個(gè)表,每一位對(duì)應(yīng)一個(gè)表。以下為顯示十位的例子。

  case 1:

  {

  PA=TABLE2[shi*2+t];

  t++;

  }break;

  顯示完成后,進(jìn)行適當(dāng)?shù)难訒r(shí)以保證顯示的穩(wěn)定性。

3 結(jié)論

  在本次設(shè)計(jì)中,通過(guò)使用Proteus繪制電路圖,用C語(yǔ)言編寫(xiě)程序,程序運(yùn)行完畢后,電壓表的顯示屏上就可以顯示出電流數(shù)值來(lái)。調(diào)節(jié)電位器,顯示數(shù)值就會(huì)發(fā)生變化。電壓表的最小顯示值是0 mA,最大顯示值是200 mA,這與設(shè)計(jì)目的一致,1 s內(nèi)大約可以測(cè)量2次電壓值。

參考文獻(xiàn)

  [1] 柳金龍.淺談數(shù)字電壓表的特點(diǎn)[J].中國(guó)計(jì)量,2004(8):43-44.

  [2] 王韜.3位半積分式A/D轉(zhuǎn)換DC電壓表[J].電子設(shè)計(jì)工程:電子世界,2002(2):44-45.

  [3] 周潤(rùn)景,張麗娜.劉映群.PROTEUS入門(mén)使用教程[M].北京:機(jī)械工業(yè)出版社,2007.

  [4] 馬俊,劉曉林.智能鍵盤(pán)字符輸入及LCD顯示系統(tǒng)設(shè)計(jì)[J].電子設(shè)計(jì)工程,2009,17(1):66-68.

  [5] 馬忠梅,籍順心,張凱,等.單片機(jī)的C語(yǔ)言應(yīng)用程序設(shè)計(jì)(第3版)[M].北京:北京航空航天大學(xué)出版社,2003.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
91久久久久久久久| 亚洲激情影院| 亚洲电影在线看| 国产专区欧美精品| 国产欧美在线播放| 国产精品一区在线播放| 国产精品劲爆视频| 国产精品久久久久久久久久妞妞| 欧美日韩亚洲一区二区三区四区 | 亚洲理伦在线| 亚洲精品乱码久久久久久黑人| 在线欧美三区| 亚洲电影免费在线观看| 亚洲国产成人高清精品| 亚洲国产综合91精品麻豆| 亚洲国产裸拍裸体视频在线观看乱了中文 | 欧美午夜精品久久久久久人妖| 欧美日韩亚洲综合在线| 欧美日韩午夜视频在线观看| 欧美日韩国产区一| 欧美日韩的一区二区| 欧美日韩综合在线免费观看| 国产精品美女久久久| 国产欧美日韩在线视频| 红桃视频成人| 91久久精品国产91久久| 亚洲最黄网站| 亚洲欧美另类中文字幕| 久久av一区二区| 亚洲三级色网| 亚洲无限av看| 久久久久国产一区二区三区四区| 美女网站久久| 欧美天堂亚洲电影院在线播放| 国产精品久久久久久超碰| 国产亚洲视频在线观看| 亚洲国产精选| 亚洲一级特黄| 亚洲高清av| 亚洲婷婷综合久久一本伊一区| 午夜视频一区在线观看| 久久综合亚洲社区| 欧美日韩色一区| 国产亚洲精品久久久久久| 亚洲第一在线综合网站| 亚洲视频电影在线| 亚洲福利视频二区| 亚洲网站在线| 久久久一区二区| 欧美日韩综合| 狠狠干成人综合网| 一区二区不卡在线视频 午夜欧美不卡在 | 国产精品sss| 国产综合网站| 99在线热播精品免费99热| 午夜欧美视频| 一本色道久久综合亚洲精品按摩| 性欧美1819性猛交| 亚洲日本va午夜在线电影| 久久精品视频免费播放| 日韩一级精品| 久久国产主播| 欧美日韩免费观看一区=区三区| 国产欧美一区二区三区在线老狼 | 欧美亚洲综合在线| 欧美高清视频| 国产日韩一区二区三区在线播放 | 久久性色av| 国产精品久久97| 91久久精品www人人做人人爽| 亚洲欧美成人精品| 欧美伊人久久久久久午夜久久久久| 亚洲天天影视| 亚洲精品黄色| 久久精品国产亚洲aⅴ| 欧美日韩国产大片| 激情成人av| 亚洲男人av电影| 9i看片成人免费高清| 久久亚洲精选| 国产久一道中文一区| 日韩一区二区精品视频| 亚洲黄色在线| 久久久99精品免费观看不卡| 国产精品久久久久久av下载红粉 | 午夜久久99| 亚洲一本视频| 欧美高清视频一区二区| 国内偷自视频区视频综合| 亚洲欧美国产精品桃花| 亚洲视频中文| 欧美精品一区二区三区久久久竹菊| 精品动漫3d一区二区三区免费 | 午夜精品一区二区在线观看| 亚洲午夜国产成人av电影男同| 欧美大片免费看| 在线观看91久久久久久| 久久成人一区| 久久激情五月丁香伊人| 国产精品人人做人人爽| 一区二区三区久久精品| 一区二区成人精品 | 欧美少妇一区二区| 亚洲国产欧美在线人成| 亚洲国产日韩在线| 久久人人爽爽爽人久久久| 国产农村妇女毛片精品久久麻豆 | 久久一区二区三区av| 国产日韩精品视频一区二区三区| 亚洲视频国产视频| 亚洲视频网在线直播| 欧美日韩国产区| 亚洲美女一区| 一区二区三区久久网| 欧美理论电影在线播放| 亚洲国内自拍| 亚洲精品中文字幕在线观看| 欧美成人午夜激情视频| 亚洲电影观看| 日韩视频免费观看| 欧美激情第10页| 亚洲人午夜精品免费| 亚洲伦理在线免费看| 欧美美女bbbb| 日韩写真视频在线观看| 中文国产一区| 国产精品久久一卡二卡| 亚洲尤物视频在线| 久久国产免费| 在线日本高清免费不卡| 亚洲精品乱码久久久久久黑人| 欧美国产日韩一区二区三区| 亚洲精品一区二区在线观看| 亚洲视频自拍偷拍| 国产精品欧美久久久久无广告| 亚洲一区二区三区四区中文| 欧美在线日韩在线| 激情久久久久| 亚洲美女少妇无套啪啪呻吟| 欧美日韩一卡| 亚洲欧美日韩精品久久| 久久精品国产99精品国产亚洲性色| 韩日欧美一区| 亚洲美女淫视频| 国产精品久久久久久影视 | 亚洲第一福利在线观看| 欧美成人a视频| 99国产精品视频免费观看一公开| 亚洲欧美激情诱惑| 国产有码一区二区| 亚洲精品视频啊美女在线直播| 欧美日韩一区二区国产| 亚洲欧美日韩精品久久久| 美国十次成人| 一区二区三区日韩欧美精品| 久久精品国产999大香线蕉| 亚洲福利电影| 亚洲欧美清纯在线制服| 国产综合久久久久久| 日韩一二三在线视频播| 国产麻豆精品视频| 亚洲日本国产| 国产精品蜜臀在线观看| 欧美在线www| 欧美日韩免费一区二区三区视频| 亚洲欧美国产另类| 欧美精品国产精品| 小黄鸭精品密入口导航| 欧美精品一区二区视频| 欧美一级视频精品观看| 欧美日韩mp4| 欧美一区二区成人| 欧美日韩国产影院| 欧美在线播放视频| 欧美三日本三级三级在线播放| 欧美一区在线看| 欧美午夜一区| 亚洲国语精品自产拍在线观看| 国产精品xxxav免费视频| 亚洲国产视频直播| 国产精品资源在线观看| 亚洲免费电影在线观看| 国产日本欧美视频| 中文一区二区| 亚洲电影网站| 久久av一区二区| 一本色道久久综合亚洲精品不卡 | 国产精品v欧美精品v日韩| 亚洲国产精品第一区二区三区 | 国产日韩欧美一区| 在线视频精品一区| 一区二区三区在线免费播放| 午夜精品国产精品大乳美女| 亚洲人成啪啪网站| 久久在线免费观看视频| 亚洲欧美精品在线| 欧美午夜一区二区福利视频| 亚洲精品久久久一区二区三区| 国产视频精品免费播放| 亚洲自拍偷拍色片视频|