




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、鄭州輕工業(yè)學(xué)院鄭州輕工業(yè)學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 題 目 基于單片機(jī)的電子秤設(shè)計(jì) 學(xué)生姓名 專業(yè)班級(jí) 電子信息工程10-01班 學(xué) 號(hào) 院 (系) 電氣信息工程學(xué)院 指導(dǎo)教師 完成時(shí)間 鄭州輕工業(yè)學(xué)院電氣信息工程學(xué)院本科畢業(yè)設(shè)計(jì)任務(wù)書題目題目 基于單片機(jī)的電子秤設(shè)計(jì)設(shè)計(jì) 專業(yè)專業(yè) 電子信息工程 學(xué)號(hào)學(xué)號(hào) 姓名姓名 主要內(nèi)容:主要內(nèi)容:電子秤在工業(yè)和生活中應(yīng)用廣泛。本課題要求采用 STC89C52 單片機(jī),設(shè)計(jì)制作一款電子秤。選用顯示方案,設(shè)計(jì)顯示系統(tǒng)及鍵盤電路,完成人機(jī)交互界面;選用合適的傳感器,設(shè)計(jì)采樣網(wǎng)絡(luò);設(shè)計(jì)合適的算法,對(duì)采集到的數(shù)據(jù)進(jìn)行噪聲過濾,加入調(diào)零功能,校準(zhǔn)電子稱。要求完成系統(tǒng)的
2、軟硬件設(shè)計(jì)、安裝調(diào)試、數(shù)據(jù)測量及分析、論文撰寫?;疽螅夯疽螅?.設(shè)計(jì)完成電阻應(yīng)變式傳感器與單片機(jī)接口電路等電路的連接;2.設(shè)計(jì)壓力檢測,模數(shù)轉(zhuǎn)換,報(bào)警等程序;3.完成相應(yīng)的實(shí)驗(yàn)項(xiàng)目例程的設(shè)計(jì)、調(diào)試,仿真等;4.完成相關(guān)的文檔整理、資料整理等工作。參考書籍:參考書籍:1 何立民主編.單片機(jī)應(yīng)用技術(shù)選編.北京:北京航空航天大學(xué)出版社,1998.2 李華.MCU-51 系列單片機(jī)實(shí)用接口技術(shù).北京:北京航空航天大學(xué)出版社,1993.3 張毅剛,彭喜元.新編 MCS-51 單片機(jī)應(yīng)用設(shè)計(jì).哈爾濱:哈爾濱工業(yè)大學(xué)出版社,2003, 10. 完完 成成 期期 限:限: 2 20 01 14 4.
3、.0 03 3 2 20 01 14 4. .0 06 6 指指導(dǎo)導(dǎo)教教師師簽簽章章: 專業(yè)負(fù)責(zé)人簽章:專業(yè)負(fù)責(zé)人簽章: 20142014 年年 3 3 月月 1 1 日日基于單片機(jī)的電子秤設(shè)計(jì)摘 要電子秤是將檢測與轉(zhuǎn)換技術(shù)、計(jì)算機(jī)技術(shù)、信息處理技術(shù)等技術(shù)綜合一體,與我們?nèi)粘I钕⑾⑾嚓P(guān)的現(xiàn)代新型稱重儀器。本課題為基于單片機(jī)的電子秤設(shè)計(jì),硬件上采用 STC89C52 單片機(jī)作為主控制芯片,使用應(yīng)變式壓力傳感器進(jìn)行信號(hào)采集,然后以 INA128 專用放大器進(jìn)行信號(hào)放大,然后進(jìn)行模數(shù)轉(zhuǎn)換,并經(jīng)由單片機(jī)結(jié)合鍵盤輸入電路,最終將運(yùn)算結(jié)果顯示在 LCD1602 液晶屏上。軟件采用模塊式設(shè)計(jì),邏輯結(jié)構(gòu)簡單
4、清晰。設(shè)計(jì)的電子秤可以顯示物體重量和所需金額,并可以由按鍵進(jìn)行操作,基本上達(dá)到設(shè)計(jì)要求。關(guān)鍵詞 電子秤 稱重傳感器 模數(shù)轉(zhuǎn)換 STC89C52ELECTRONIC DESIGN BASED ON SINGLE CHIP MICROCOMPUTERABSTRACTElectronic scale is the detection and conversion technology, computer technology, information processing technology such as integration, is closely related to our daily
5、life of a modern new weighing apparatus.This topic for the electronic scale design based on single chip microcomputer, hardware on the STC89C52 single-chip microcomputer as the main control chip,Using strain type pressure sensor signal acquisition, and then by special amplifier INA128 signal amplifi
6、cation, and then to convert the modulus,And through the single chip microcomputer keyboard input circuit, will eventually result in LCD1602 LCD display.Software adopts modular design, logic structure is simple and clear.Design of the electronic scale can display the object weight and the amount need
7、ed, and can be operated by buttons, basically meet the design requirements.KEY WORDS Electronic scale Weighing sensor Analogue-to-digital conversion STC89C52目 錄中文摘要.I英文摘要.II 1 緒論 .1 2 總體方案設(shè)計(jì) .2 設(shè)計(jì)整體方案 .2 主控制器方案 .2 稱重傳感器選型 .5 放大器選型 .7 模數(shù)轉(zhuǎn)換器選型 .8 2.6 鍵盤部分的方案.10 顯示部分選型 .11 過載報(bào)警部分的方案 .11 3 硬件設(shè)計(jì) .13 系統(tǒng)設(shè)計(jì)
8、的總體思路 .13 單片機(jī) STC89C52 最小系統(tǒng) .13 3.3 放大電路.14 模數(shù)轉(zhuǎn)換器與單片機(jī)接口電路 .15 顯示電路與單片機(jī)接口電路 .16 鍵盤電路與單片機(jī)接口電路 .17 報(bào)警電路 .18 4 系統(tǒng)軟件設(shè)計(jì).19 編程語言的選擇 .19 主程序的設(shè)計(jì) .20 子程序的設(shè)計(jì) .21 模數(shù)轉(zhuǎn)換子程序的設(shè)計(jì).21 鍵盤掃描子程序的設(shè)計(jì).22 顯示子程序的設(shè)計(jì).23 價(jià)格計(jì)算子程序的設(shè)計(jì).24 報(bào)警子程序的設(shè)計(jì).25 5 系統(tǒng)調(diào)試 .27 軟件設(shè)計(jì)調(diào)試 .27 程序編寫軟件.27 仿真軟件.27 硬件調(diào)試 .28 6 總結(jié)與展望 .30致謝 .31參考文獻(xiàn) .32附錄 1 系統(tǒng)原理
9、圖 .33附錄 2 仿真圖 .34附錄 3 實(shí)物圖 .35附錄 4 程序清單 .361緒論電子秤是日常生活中常用的稱重工具,廣泛應(yīng)用于大中型商場、超市、物流配送中心。電子秤在結(jié)構(gòu)及原理上取代了以杠桿平衡為原理的傳統(tǒng)機(jī)械式稱量工具。相與傳統(tǒng)的機(jī)械式稱量工具相比,電子秤具有稱量精度高、應(yīng)用范圍廣、裝機(jī)體積小、易于操作使用等優(yōu)點(diǎn),在外形布局、結(jié)構(gòu)、工作原理和材料上都是全新的計(jì)量衡器。電子秤的設(shè)計(jì)是通過壓力傳感器采集到被測物體的重量并將其轉(zhuǎn)換成電壓信號(hào),模擬電壓信號(hào)經(jīng)放大后經(jīng) A/D 轉(zhuǎn)換電路轉(zhuǎn)換成數(shù)字量被送入到單片機(jī)微控制器中,再經(jīng)過單片機(jī)控制譯碼顯示器,從而顯示出被測物體的重量。 目前電子秤不僅要
10、向高精度、高可靠的方向發(fā)展,而且更需向多功能的方向發(fā)展。目前電子秤的附加功能主要有以下幾種:1.電子秤附加了計(jì)算機(jī)信息補(bǔ)償裝置,可以進(jìn)行自診斷、自校正和多種補(bǔ)償計(jì)算和處理。2.附加特殊的數(shù)據(jù)處理功能。3.具有皮重、凈重顯示等特種功能。電子秤有些已具備了動(dòng)物稱量模式,即通過進(jìn)行算術(shù)平均、積分處理和自動(dòng)調(diào)零等方法,消除上述的誤差。目前的電子秤有附加多種計(jì)算和數(shù)據(jù)處理功能,可以滿足多種使用的要求。今后,隨著電子高科技的飛速發(fā)展,電子秤技術(shù)的發(fā)展必定會(huì)日新月異。同時(shí),功能更加齊全的高精度、高智能的先進(jìn)電子秤將會(huì)不斷問世,其應(yīng)用范圍也會(huì)更加拓寬。本文主要是設(shè)計(jì)的內(nèi)容是簡易電子秤,它用單片機(jī)作為處理核心,
11、信號(hào)由壓力傳感器感受后經(jīng)放大器放大和模數(shù)轉(zhuǎn)換后輸入到單片機(jī)處理,同時(shí)該電子秤具有LCD 顯示和鍵盤輸入。該電子秤具體實(shí)現(xiàn)的功能是能夠測量一定質(zhì)量內(nèi)物體的質(zhì)量,能夠利用鍵盤輸入價(jià)格,具有清零,可以計(jì)算總價(jià),并能通過 LCD 直接顯示出來,超過所測重量時(shí)能夠報(bào)警。2總體方案設(shè)計(jì)設(shè)計(jì)整體方案電子秤設(shè)計(jì)的整體方案是:壓力傳感器采集到因壓力變化而產(chǎn)生的電信號(hào),但是一般這樣的電信號(hào)很小,所以需要利用放大電路將其放大,放大后的電信號(hào)通過A/D 轉(zhuǎn)換器轉(zhuǎn)換為數(shù)字信號(hào)后送入到微處理器中處理,經(jīng)過微處理器處理后的輸出信號(hào)通過控制顯示器顯示出來。同時(shí)還需要使用鍵盤對(duì)物品單價(jià)等信息輸?shù)轿⑻幚砥鲀?nèi)部,還需要有過載報(bào)警裝
12、置。其整體設(shè)計(jì)方案 如圖 2-1 所示:放大電路傳感器A/D 轉(zhuǎn)換器報(bào)警電路主控制器LCD 顯示鍵盤輸入圖 2-1 電子秤整體設(shè)計(jì)方案圖主控制器方案 主控制器是電子秤的核心部分,它需要接受轉(zhuǎn)換后的傳感器信號(hào),同時(shí)也能掃描接受到鍵盤的輸入信號(hào),計(jì)算價(jià)格后控制顯示器的輸出,當(dāng)超過稱重量量程時(shí)還要控制報(bào)警裝置報(bào)警。STC89C521是 STC 公司生產(chǎn)的一種低功耗、高性能CMOS8 位微控制器,具有 8K 在系統(tǒng)可編程 Flash存儲(chǔ)器。STC89C52 使用經(jīng)典的 MCS-51 內(nèi)核,但做了很多的改進(jìn)使得芯片具有傳統(tǒng) 51 單片機(jī)不具備的功能。在單芯片上,擁有靈巧的 8 位 CPU 和在系統(tǒng)可編程
13、 Flash,使得 STC89C52 為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。 具有以下標(biāo)準(zhǔn)功能: 8k 字節(jié) Flash,512 字節(jié) RAM, 32 位 I/O 口線, 圖 2-2 STC89C52 引腳圖看門狗定時(shí)器,內(nèi)置 4KB EEPROM,MAX810 復(fù)位電路,3 個(gè) 16 位定時(shí)器/計(jì)數(shù)器,4 個(gè)外部中斷,一個(gè) 7 向量 4 級(jí)中斷結(jié)構(gòu)(兼容傳統(tǒng) 51 的 5 向量 2 級(jí)中斷結(jié)構(gòu)) ,全雙工串行口。另外 STC89X52 可降至 0Hz 靜態(tài)邏輯操作,支持 2 種軟件可選擇節(jié)電模式??臻e模式下,CPU 停止工作,允許 RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。
14、掉電保護(hù)方式下,RAM 內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。最高運(yùn)作頻率 35MHz,6T/12T 可選2。STC89C52 參數(shù):1. 增強(qiáng)型 8051 單片機(jī),6 時(shí)鐘/機(jī)器周期和 12 時(shí)鐘/機(jī)器周期可以任意選擇,指令代碼完全兼容傳統(tǒng) 8051.2. 工作電壓:5.5V3.3V(5V 單片機(jī))/3.8V2.0V(3V 單片機(jī))3. 工作頻率范圍:040MHz,相當(dāng)于普通8051 的080MHz,實(shí)際工作 頻率可達(dá)48MHz4. 用戶應(yīng)用程序空間為8K 字節(jié) 5. 片上集成512 字節(jié) RAM 圖2-3 STC89C52實(shí)物圖6. 通用 I/O 口(
15、32 個(gè)) ,復(fù)位后為:P0/P1/P2/P3 是準(zhǔn)雙向口/弱上拉, P0 口是漏極開路輸出,作為總線擴(kuò)展用時(shí),不用加上拉電阻,作為 I/O 口用時(shí),需加上拉電阻。7. ISP(在系統(tǒng)可編程)/IAP(在應(yīng)用可編程) ,無需專用編程器,無 需專用仿真器,可通過串口(RxD/P3.0,TxD/P3.1)直接下載用戶程 序,數(shù)秒即可完成一片8. 具有 EEPROM 功能9. 具有看門狗功能10. 共3 個(gè)16 位定時(shí)器/計(jì)數(shù)器。即定時(shí)器 T0、T1、T211. 外部中斷4 路,下降沿中斷或低電平觸發(fā)電路,Power Down 模式可 由外部中斷低電平觸發(fā)中斷方式喚醒12. 通用異步串行口(UART
16、) ,還可用定時(shí)器軟件實(shí)現(xiàn)多個(gè) UART13. 工作溫度范圍:-40+85(工業(yè)級(jí))/075(商業(yè)級(jí))14. PDIP 封裝3 STC89C52 具體介紹如下7: 主電源引腳(2 根)VCC(Pin40):電源輸入,接5V 電源GND(Pin20):接地線外接晶振引腳(2 根)XTAL1(Pin19):片內(nèi)振蕩電路的輸入端XTAL2(Pin20):片內(nèi)振蕩電路的輸出端控制引腳(4 根)RST/VPP(Pin9):復(fù)位引腳,引腳上出現(xiàn) 2 個(gè)機(jī)器周期的高電平將使單片機(jī)復(fù)位。ALE/PROG(Pin30):地址鎖存允許信號(hào)PSEN(Pin29):外部存儲(chǔ)器讀選通信號(hào)EA/VPP(Pin31):程序
17、存儲(chǔ)器的內(nèi)外部選通,接低電平從外部程序存儲(chǔ)器讀指令,如果接高電平則從內(nèi)部程序存儲(chǔ)器讀指令。可編程輸入/輸出引腳(32 根)STC89C52 單片機(jī)有 4 組 8 位的可編程 I/O 口,分別位 P0、P1、P2、P3 口,每個(gè)口有 8 位(8 根引腳),共 32 根。P1 口(Pin1Pin8):8 位準(zhǔn)雙向 I/O 口線,名稱為 P1.0P1.7 P2 口(Pin21Pin28):8 位準(zhǔn)雙向 I/O 口線,名稱為 P2.0P2.7 16表 2-1 STC89C52 主要功能主要功能特性兼容 MCS51 指令系統(tǒng)8K 可反復(fù)擦寫 Flash ROM32 個(gè)雙向 I/O 口256x8bit 內(nèi)
18、部 RAM3 個(gè) 16 位可編程定時(shí)/計(jì)數(shù)器中斷時(shí)鐘頻率 0-24MHz2 個(gè)串行中斷可編程 UART 串行通道2 個(gè)外部中斷源共 6 個(gè)中斷源2 個(gè)讀寫中斷口線3 級(jí)加密位低功耗空閑和掉電模式軟件設(shè)置睡眠和喚醒功能稱重傳感器選型稱重傳感器按轉(zhuǎn)換方法分為光電式、電磁力式、液壓式、電容式、陀螺儀式、磁極變形式、振動(dòng)式、電阻應(yīng)變式等 8 類,我選擇應(yīng)用最廣泛的電阻應(yīng)變式傳感器。電阻應(yīng)變式稱重傳感器是利用電阻應(yīng)變片發(fā)生變形時(shí)其電阻也隨之發(fā)生變化的原理工作的,根據(jù)傳感器理論可知,設(shè)長為 L、截面積為 S、電阻率為 的電阻絲,已知其阻值為: (2-1) SLR 當(dāng)電阻絲兩端有機(jī)械應(yīng)力 F 時(shí),、L、S
19、都會(huì)發(fā)生變化,從而導(dǎo)致電阻發(fā)生變化。這種應(yīng)變片式傳感器是基于材料的電阻應(yīng)變效應(yīng),電阻應(yīng)變片即可單獨(dú)作為傳感器使用,又能作為敏感元件結(jié)合彈性元件構(gòu)成力學(xué)量傳感器。電阻應(yīng)變片把機(jī)械應(yīng)變信號(hào)轉(zhuǎn)換為R/R 后,由于應(yīng)變量及相應(yīng)電阻變化一般都很微小,難以直接精確測量,且不便處理。因此,要采用轉(zhuǎn)換電路把應(yīng)變片的R/R 變化轉(zhuǎn)換成電壓或電流變化。其轉(zhuǎn)換電路常用測量電橋4。如圖 2-2 所示為常見的直流供電的平衡差動(dòng)測量電橋:R1-R1R2+R2R4+R4R3-R3EinEout圖 2-4 直流供電的平衡差動(dòng)測量電橋圖中,為供橋電源電壓,當(dāng)初始有時(shí),則電橋輸出電壓或電流為零,這時(shí)電橋處于平衡狀態(tài)。其測量原理:
20、用應(yīng)變片測量時(shí),將其粘貼在彈性體上。當(dāng)彈性體受力變形時(shí),應(yīng)變片的敏感柵也隨同變形,其電阻值發(fā)生相應(yīng)變化8,通過轉(zhuǎn)換電路轉(zhuǎn)換為電壓或電流的變化。由于內(nèi)部線路采用惠更斯電橋,當(dāng)彈性體承受載荷產(chǎn)生變形時(shí),輸出信號(hào)電壓可由下式給出: (2-24R1R2R3R4EEin( 24)R1R2R3R4RRoutRR2) 本文的目的是設(shè)計(jì)一簡易電子秤,最大稱重約為 2.5 千克,重量誤差不大于0.01 千克;考慮到與其相配置的各種電路的設(shè)計(jì)的難易程度和設(shè)計(jì)性價(jià)比,最終選擇了 CZAF-605 電阻應(yīng)變式稱重傳感器8,其稱重規(guī)模為 5kg。表 2-2 傳感器參數(shù)額定負(fù)荷5(kg)額定輸出非線性0.05 %F.S滯
21、后重復(fù)性蠕變輸出溫度影響零點(diǎn)溫度影響零點(diǎn)平衡0.1000 mV/V輸入阻抗111510% 輸出阻抗100010% 絕緣阻抗1000 M安全過載率極限過載率工作溫度范圍-2060 推薦工作電壓5V最大工作電壓10V材質(zhì)鋁合金防護(hù)等級(jí)IP65電纜0.8180臺(tái)面尺寸160160 mm接線方式紅:電源+,黑:電源-,綠:信號(hào)+,白:信號(hào)-圖2-5 傳感器內(nèi)部結(jié)構(gòu)圖當(dāng)垂直正壓力 P 作用于梁上時(shí),梁產(chǎn)生形變,電阻應(yīng)變片 R1,R2受壓彎拉伸,阻值增加;R3,R4受壓縮,阻值減小;電橋失去平衡,產(chǎn)生不平衡電壓,與作用在傳感器上載荷 P 成正比,從而將非電量轉(zhuǎn)化成為電量輸出5。工作原理如下圖2-6所示:圖
22、2-6 傳感器工作原理放大器選型壓力傳感器感受重力轉(zhuǎn)換后輸出的信號(hào)一般電平較低;經(jīng)由電橋等電路變換后的信號(hào)亦難以直接用來顯示、記錄、控制或進(jìn)行模數(shù)轉(zhuǎn)換。為此,測量電路中需要模擬放大環(huán)節(jié)。這一環(huán)節(jié)目前主要依靠由集成運(yùn)算放大器的基本元件構(gòu)成具有各種特性的放大器來完成。所采用的傳感器輸出電壓振幅范圍 05mV。而模數(shù)轉(zhuǎn)換的輸入電壓要求為05V,因此放大環(huán)節(jié)至少 1000 倍的增益,此處我們需要放大 1000 倍。根據(jù)本設(shè)計(jì)的實(shí)際情況增列出了兩種方案。方案一:由高精度低漂移運(yùn)算放大器構(gòu)成差動(dòng)放大器。 差動(dòng)放大器具有高輸入阻抗,增益高的特點(diǎn),可以利用普通運(yùn)放 ( 如 OP07) 做成一個(gè)差動(dòng)放大器,其內(nèi)
23、部電路圖如圖 2-7 所示。圖 2-7 差動(dòng)放大器內(nèi)部電路電阻 R1、R2 電容 C1、C2、C3、C4 用于濾除前級(jí)的噪聲,C1、C2 為普通小電容,可以濾除高頻干擾,C3、C4 為大的電解電容,主要用于濾除低頻噪聲6。優(yōu)點(diǎn):輸入級(jí)加入射隨放大器,增大了輸入阻抗,中間級(jí)為差動(dòng)放大電路,滑動(dòng)變阻器 R6 可以調(diào)節(jié)輸出零點(diǎn),最后一級(jí)可以用于微調(diào)放大倍數(shù),使輸出滿足滿量程要求。輸出級(jí)為反向放大器,所以輸出電阻不是很大,比較符合應(yīng)用要求。缺點(diǎn):此電路要求 R3、R4 相等,誤差將會(huì)影響輸出精度,難度較大。實(shí)際測量,每一級(jí)運(yùn)放都會(huì)引入較大噪聲,對(duì)精度影響較大。 方案二:采用專用儀表放大器12,如:IN
24、A128,INA129 等。 此類芯片內(nèi)部采用差動(dòng)輸入,共模抑制比高,差模輸入阻抗大,增益高,精度也非常好,且外部接口簡單。 以 INA128 為例,引腳圖如 2-8 所示: INA128 特點(diǎn): 低偏置電壓 最大 50V 低溫度漂移 最大 0.5V/C 低輸入偏置電流 最大 5nA 高共模抵制 CMR 最小 120dB 輸入保護(hù)至40V 圖 2-8 INA128 引腳圖 寬電源電壓范圍 2.25 至 18V 低靜態(tài)電流 700A 8 引腳塑料 DIP 和 SO-8 封裝放大器增益 G=1+50k/Rg,通過改變 Rg 的大小來改變放大器的增益。因?yàn)榉糯蟮谋稊?shù)是 1000,所以大致選用 50
25、歐姆的電阻就可以了。 基于以上分析,采用專用儀表放大器能跟好的滿足要求,我最終選擇了 INA128。 模數(shù)轉(zhuǎn)換器選型稱重傳感器采集的壓力信號(hào)是模擬量,單片機(jī)系統(tǒng)內(nèi)部運(yùn)算時(shí)用的都是數(shù)字量,即 0 和 1,因此對(duì)于單片機(jī)而言我們無法直接操作模擬量,必須將模擬量轉(zhuǎn)換為數(shù)字量。這就需要在單片機(jī)前段加上模數(shù)轉(zhuǎn)換器,模數(shù)轉(zhuǎn)換器就是將輸入的模擬信號(hào)轉(zhuǎn)換成數(shù)字信號(hào)9。而模數(shù)轉(zhuǎn)換器的數(shù)字信號(hào)提供給微處理器處理。現(xiàn)在模數(shù)轉(zhuǎn)換的基本方法有十幾種,常用的有計(jì)數(shù)法、逐次比較法、雙斜積分法和并行轉(zhuǎn)換法。由于逐次比較法模數(shù)轉(zhuǎn)換具有速度快、分辨率高等特點(diǎn),而且采用這種方法的 ADC 芯片成本較低,所以我們選用逐次比較型模數(shù)轉(zhuǎn)
26、換集成芯片 ADC0832,ADC0832 是美國國家半導(dǎo)體公司生產(chǎn)的一種 8 位分辨率、雙通道模數(shù)轉(zhuǎn)換芯片,其輸入輸出電平與 TTL/CMOS 相兼容,電源供電時(shí)輸入電壓在 05V 之間,工作頻率為250KHZ 轉(zhuǎn)換時(shí)間為 32S,一般功耗僅為 15mW;由于它體積小,兼容性,性價(jià)比高而深受單片機(jī)愛好者及企業(yè)歡迎,其目前已經(jīng)有很高的普及率。ADC0832 特點(diǎn): 8 位分辨率; 雙通道 A/D 轉(zhuǎn)換; 輸入輸出電平與 TTL/CMOS 相兼容; 5V 電源供電時(shí)輸入電壓在 05V 之間; 工作頻率為 250KHZ,轉(zhuǎn)換時(shí)間為 32S; 一般功耗僅為 15mW; 8P、14PDIP(雙列直插)
27、 、PICC 多種封裝; 商用級(jí)芯片溫寬為 0C to +70C,工業(yè)級(jí)芯片溫寬為40C to +85C;芯片接口說明: CS_ 片選使能,低電平芯片使能。 CH0 模擬輸入通道 0,或作為 IN+/-使用。 CH1 模擬輸入通道 1,或作為 IN+/-使用。圖 2-9 AD0832 雙列直插式封裝引腳圖 GND 芯片參考 0 電位(地) 。 DI 數(shù)據(jù)信號(hào)輸入,選擇通道控制。 DO 數(shù)據(jù)信號(hào)輸出,轉(zhuǎn)換數(shù)據(jù)輸出。 CLK 芯片時(shí)鐘輸入。 Vcc/REF 電源輸入及參考電壓輸入(復(fù)用) 。 ADC0832 為 8 位分辨率 A/D 轉(zhuǎn)換芯片,其最高分辨可達(dá) 256 級(jí),可以適應(yīng)一般的模擬量轉(zhuǎn)換要
28、求。其內(nèi)部電源輸入與參考電壓的復(fù)用,使得芯片的模擬電壓輸入在 05V 之間。芯片轉(zhuǎn)換時(shí)間僅為 32S,據(jù)有雙數(shù)據(jù)輸出可作為數(shù)據(jù)校驗(yàn),以減少數(shù)據(jù)誤差,轉(zhuǎn)換速度快且穩(wěn)定性能強(qiáng)。獨(dú)立的芯片使能輸入,使多器件掛接和處理器控制變的更加方便。通過 DI 數(shù)據(jù)輸入端,可以輕易的實(shí)現(xiàn)通道功能的選擇。鍵盤部分的方案鍵盤輸入是人機(jī)交互界面中重要的組成部分,它是系統(tǒng)接受用戶指令的直接途徑。鍵盤是由若干個(gè)按鍵開關(guān)組成,鍵的多少根據(jù)單片機(jī)應(yīng)用系統(tǒng)的用途而定。鍵盤由許多鍵組成,每一個(gè)鍵相當(dāng)于一個(gè)機(jī)械開關(guān)觸點(diǎn),當(dāng)鍵按下時(shí),觸點(diǎn)閉合,當(dāng)鍵松開時(shí),觸點(diǎn)斷開。單片機(jī)接收到按鍵的觸點(diǎn)信號(hào)后作相應(yīng)的功能處理。因此,相對(duì)于單片機(jī)系統(tǒng)來
29、說鍵盤接口信號(hào)是輸入信號(hào)。鍵盤部分有兩個(gè)可行的方案,第一是采用 34 的矩陣鍵盤結(jié)構(gòu)的鍵盤接口電路,第二是采用 44 的矩陣鍵盤結(jié)構(gòu)的鍵盤接口電路15。由于電子秤需要設(shè)置單價(jià)(十個(gè)數(shù)字鍵) ,還具有確認(rèn)、清零等功能,總共需設(shè)置 13 個(gè)鍵(包括一個(gè)復(fù)位鍵) ,其中復(fù)位可以單獨(dú)拿出來。所以我們采用 34 的矩陣鍵盤結(jié)構(gòu)的鍵盤接口電路。34 矩陣式鍵盤的特點(diǎn)是把檢測線分成兩組,一組為行線,一組列線,按鍵放在行線和列線的交叉點(diǎn)上。圖 2-6 給出了一個(gè) 34 的矩陣鍵盤結(jié)構(gòu)的鍵盤接口電路,圖中的每一個(gè)按鍵都通過不同的行線和列線與主機(jī)相連這。34 矩陣式鍵盤共可以安裝 12 個(gè)鍵,但只需要 7 條測試
30、線。圖 2-10 34 矩陣式鍵盤圖顯示部分選型數(shù)據(jù)顯示是電子秤的一項(xiàng)重要功能,是人機(jī)交換的主要組成部分,它可以將測量電路測得的數(shù)據(jù)經(jīng)過微處理器處理后直觀的顯示出來。數(shù)據(jù)顯示部分可以有以下兩種方案供選擇:一是 LED 數(shù)碼管顯示,二是 LCD 液晶。LED 顯示每一個(gè)數(shù)碼管只能顯示一個(gè)數(shù)字,電子秤系統(tǒng)需要許多數(shù)碼管,會(huì)使線路變得復(fù)雜化。LCD 液晶顯示器是一種極低功耗顯示器,其能夠多行顯示,并且能夠顯示漢字或英文字母,應(yīng)用于電子秤中能夠更人性化,更容易操作。所以最終選擇了兩行顯示的LCD1602,LCD1602 的引腳圖如 2-11 所示。圖 2-11 液晶顯示器 LCD1602過載報(bào)警部分的
31、方案智能儀器一般都具有報(bào)警和通訊功能,報(bào)警主要用于系統(tǒng)運(yùn)行出錯(cuò)、當(dāng)測量的數(shù)據(jù)超過儀表量程或者是超過用戶設(shè)置的上下限時(shí)為提醒用戶而設(shè)置。在本系統(tǒng)中,設(shè)置報(bào)警的目的就是在超出電子秤測量范圍時(shí),發(fā)出聲光報(bào)警信號(hào),提示用戶,防止損壞儀器。超限報(bào)警電路是由單片機(jī)的 I/O 口來控制的,當(dāng)稱重物體重量超過系統(tǒng)設(shè)計(jì)所允許的重量時(shí),通過程序使單片機(jī)的 I/O 值為高電平,從而三極管導(dǎo)通,使蜂鳴器SPEAKER 發(fā)出報(bào)警聲,同時(shí)使二極管發(fā)光。3硬件設(shè)計(jì)3.1 系統(tǒng)設(shè)計(jì)的總體思路 物體放在壓力傳感器上,傳感器發(fā)生形變,阻抗就發(fā)生變化,產(chǎn)生一個(gè)變化的模擬信號(hào),該信號(hào)需要有放大電路放大后輸入到模數(shù)轉(zhuǎn)換器,轉(zhuǎn)換為數(shù)字信
32、號(hào)后輸入到微處理器處理。微處理器根據(jù)鍵盤命令以及程序?qū)⒔Y(jié)果輸出到顯示器,直到顯示結(jié)果。如下圖所示 3-1 所示。壓力傳感器放大電路模數(shù)轉(zhuǎn)換微處理器鍵 盤x = x = x = x = x = x = x = x = x = x = x = x = x = x = x = x = LCD 顯示x = x = x = x = x = x = x = x = x = x = x = x = x = x = x = x = 圖 3-1 硬件設(shè)計(jì)的總體思路單片機(jī) STC89C52 最小系統(tǒng)圖 3-2 STC89C52 最小系統(tǒng)圖STC89C52 是片內(nèi)有 ROM/EPROM 的單片機(jī),其最小系統(tǒng)簡單、可
33、靠,僅由時(shí)鐘電路、復(fù)位電路、電源電路構(gòu)成11。1、時(shí)鐘電路STC89C52 雖然有內(nèi)部振蕩電路,但要形成時(shí)鐘,必須外部附加電路。STC89C52 單片機(jī)的時(shí)鐘產(chǎn)生方法有兩種。內(nèi)部時(shí)鐘方式和外部時(shí)鐘方式。本設(shè)計(jì)采用最常用的內(nèi)部時(shí)鐘方式,即用外接晶體和電容組成的并聯(lián)諧振回路。振蕩晶體可在 1.2MHZ 到 12MHZ 之間選擇。電容取值對(duì)振蕩頻率輸出的穩(wěn)定性、大小、振蕩電路起振速度有少許影響,可在 20pF 到 100pF 之間取值。所以本設(shè)計(jì)中,振蕩晶體選擇 12MHZ,電容選擇 30pF11。2、復(fù)位電路STC89C52 的復(fù)位電路是由外部的復(fù)位電路來實(shí)現(xiàn)的。只需給復(fù)位引腳 RST 加上大于
34、2 個(gè)機(jī)器周期的高電平就可使其復(fù)位。復(fù)位電路通常采用上電自動(dòng)復(fù)位和按鍵復(fù)位兩種方式。本設(shè)計(jì)就是用的按鍵手動(dòng)復(fù)位。其中電平復(fù)位是通過 RST 端經(jīng)電阻與電源 Vcc 接通而實(shí)現(xiàn)的。3、電源電路STC89C52 的電源腳分別為 20 腳 Vss 和 40 腳 Vcc(圖中已默認(rèn)連接,未顯示出來) 。這兩個(gè)腳分別接地和+5V 直流電源,31 腳 EA 為內(nèi)外存儲(chǔ)器的控制端,接+5V允許訪問外部存儲(chǔ)器。放大電路傳感器檢測電路的功能是把電阻應(yīng)變片的電阻變化轉(zhuǎn)變?yōu)殡妷狠敵?,本設(shè)計(jì)中選用 CZAF-605 電阻應(yīng)變式稱重傳感器10,因?yàn)橥ㄟ^其得到的電壓信號(hào)很小,為所以還需要放大器放大信號(hào)??紤]到干擾的作用,
35、對(duì)傳感器的信號(hào)進(jìn)行了濾波處理,最終設(shè)計(jì)如圖 3-3。 圖 3-3 傳感器與放大器的接口電路INA128 的 2 和 3 腳為信號(hào)輸入端,4、5 和 7 腳為電源引腳。微弱信號(hào)放大后從 INA128 的第 6 腳輸出。通過調(diào)節(jié) Rg 的阻值可以來改變放大倍數(shù),使得輸出電壓在 A/D 轉(zhuǎn)換的基準(zhǔn)電壓要求范圍之內(nèi)。RdRaRcRbVCC10K10K200pF100pF200pF100pF-V4IN+3IN-2OUT6REF5RG1RG8+V7INA128VCC1K根據(jù)要求,A/D 轉(zhuǎn)換器的輸入電壓變化范圍是 0V,傳感器的輸出電壓信號(hào)在05mv,因此取放大器的放大倍數(shù) 1000。因此代入公式1000
36、005. 099. 4G,。501KGRg 50100050gKR模數(shù)轉(zhuǎn)換器與單片機(jī)接口電路ADC0832 為 8 位分辨率 A/D 轉(zhuǎn)換芯片,其最高分辨可達(dá) 256 級(jí),可以適應(yīng)一般的模擬量轉(zhuǎn)換要求。其內(nèi)部電源輸入與參考電壓的復(fù)用,使得芯片的模擬電壓輸入在 05V 之間。芯片轉(zhuǎn)換時(shí)間僅為 32S,據(jù)有雙數(shù)據(jù)輸出可作為數(shù)據(jù)校驗(yàn),以減少數(shù)據(jù)誤差,轉(zhuǎn)換速度快且穩(wěn)定性能強(qiáng)12。獨(dú)立的芯片使能輸入,使多器件掛接和處理器控制變的更加方便。通過 DI 數(shù)據(jù)輸入端,可以輕易的實(shí)現(xiàn)通道功能的選擇21。正常情況下 ADC0832 與單片機(jī)的接口應(yīng)為 4 條數(shù)據(jù)線,分別是CS、CLK、DO、DI。但由于 DO 端
37、與 DI 端在通信時(shí)并未同時(shí)有效并與單片機(jī)的接口是雙向的,所以電路設(shè)計(jì)時(shí)可以將 DO 和 DI 并聯(lián)在一根數(shù)據(jù)線上使用。當(dāng)ADC0832 未工作時(shí)其 CS 輸入端應(yīng)為高電平,此時(shí)芯片禁用,CLK 和 DO/DI 的電平可任意。當(dāng)要進(jìn)行 A/D 轉(zhuǎn)換時(shí),須先將 CS 使能端置于低電平并且保持低電平直到轉(zhuǎn)換完全結(jié)束。此時(shí)芯片開始轉(zhuǎn)換工作,同時(shí)由處理器向芯片時(shí)鐘輸入端 CLK 輸入時(shí)鐘脈沖,DO/DI 端則使用 DI 端輸入通道功能選擇的數(shù)據(jù)信號(hào)。在第 1 個(gè)時(shí)鐘脈沖的下沉之前 DI 端必須是高電平,表示啟始信號(hào)。在第 2、3 個(gè)脈沖下沉之前DI 端應(yīng)輸入 2 位數(shù)據(jù)用于選擇通道功能9。 作為單通道
38、模擬信號(hào)輸入時(shí) ADC0832 的輸入電壓是 05V 且 8 位分辨率時(shí)的電壓精度為。如果作為由 IN+與 IN-輸入的輸入時(shí),可是將電壓值設(shè)定在某一個(gè)較大范圍之內(nèi),從而提高轉(zhuǎn)換的寬度。但值得注意的是,在進(jìn)行 IN+與 IN-的輸入時(shí),如果 IN-的電壓大于 IN+的電壓則轉(zhuǎn)換后的數(shù)據(jù)結(jié)果始終為 00H。ADC0832 與單片機(jī)的接口電路如圖 3-4。T115RD17WR16CS1CH02CH13GND4DI5DO6CLK7VCC8ADC0832VCC圖 3-4 ADC0832 與單片機(jī)的接口電路圖顯示電路與單片機(jī)接口電路本設(shè)計(jì)采用的是 LCD1602 顯示,LCD1602 液晶也叫 1602
39、 字符型液晶它是一種專門用來顯示字母、數(shù)字、符號(hào)等的點(diǎn)陣型液晶模塊13。它有若干個(gè) 57 或者 511等點(diǎn)陣字符位組成,每個(gè)點(diǎn)陣字符位都可以顯示一個(gè)字符。每位之間有一個(gè)點(diǎn)距的間隔每行之間也有間隔起到了字符間距和行間距的作用,正因?yàn)槿绱怂运荒茱@示圖形。1602LCD 是指顯示的內(nèi)容為 162,即可以顯示兩行,每行 16 個(gè)字符液晶模塊(顯示字符和數(shù)字)。1602 采用標(biāo)準(zhǔn)的 16 腳接口,其中 1 和 2 腳為電源正負(fù)極,3 腳為對(duì)比度調(diào)整端,4 腳 RS 為寄存器選擇,5 腳 RW 為讀寫信號(hào)線,6 腳為使能端,7 到 14 腳為 8 為雙向數(shù)據(jù)端。15 和 16 腳為電源背光極。LCD1
40、602 與單片機(jī)的連接如圖 3-5。圖 3-5 LCD1602 與單片機(jī)的連接圖3 腳 VEE 接一個(gè)滑動(dòng)變阻器,滑動(dòng)變阻器兩端接電源和地。調(diào)試歡動(dòng)變阻器的值可以改變 LCD 的對(duì)比度。因?yàn)?LCD 為共陽極,所以 D0 到 D7 有加入上拉電阻。矩陣式鍵盤的結(jié)構(gòu)與工作原理:在鍵盤中按鍵數(shù)量較多時(shí),為了減少 I/O 口的占用,通常將按鍵排列成矩陣形式。在矩陣式鍵盤中,每條水平線和垂直線在交叉處不直接連通,而是通過一個(gè)按鍵加以連接。這樣,一個(gè)端口(如 P1 口)就可以構(gòu)成 34=12 個(gè)按鍵,比之直接將端口線用于鍵盤多出了一倍,而且線數(shù)越多,區(qū)別越明顯,比如再多加一條線就可以構(gòu)成 16 鍵的鍵盤
41、,而直接用端口線則只能多出一鍵。由此可見,在需要的鍵數(shù)比較多時(shí),采用矩陣法來做鍵盤是合理的。矩陣式鍵盤的按鍵識(shí)別方法 :確定矩陣式鍵盤上何鍵被按下介紹一種“行掃描法”。行掃描法又稱為逐行(或列)掃描查詢法,是一種最常用的按鍵識(shí)別方法,如上圖所示鍵盤,介紹過程如下。判斷鍵盤中有無鍵按下,將全部行線 Y0-Y3 置低電平,然后檢測列線的狀態(tài)。只要有一列的電平為低,則表示鍵盤中有鍵被按下,而且閉合的鍵位于低電平線與 4 根行線相交叉的 3 個(gè)按鍵之中。若所有列線均為高電平,則鍵盤中無鍵按下。 判斷閉合鍵所在的位置,在確認(rèn)有鍵按下后,即可進(jìn)入確定具體閉合鍵的過程。其方法是:依次將行線置為低電平,即在置
42、某根行線為低電平時(shí),其它線為高電平。在確定某根行線位置為低電平后,再逐行檢測各列線的電平狀態(tài)。若某列為低,則該列線與置為低電平的行線交叉處的按鍵就是閉合的按鍵。在本系統(tǒng)中鍵盤采用矩陣式鍵盤并采用中斷工作方式。鍵盤為 34 鍵盤,包括0、1、2、3、4、5、6、7、8、9、十個(gè)數(shù)字及確認(rèn)和清除鍵。采用中斷工作方式提高了 CPU 的利用效率,沒鍵按下時(shí)沒有中斷請(qǐng)求,有鍵按下時(shí),向 CPU 提出中斷請(qǐng)求,CPU 響應(yīng)后執(zhí)行中斷服務(wù)程序,在中斷程序中才對(duì)鍵盤進(jìn)行掃描。下圖就是鍵盤電路與 STC89C52 單片機(jī)接口電路圖。P1.01P1.12P1.23P1.34P1.45P1.56P1.67S9S8S
43、3S2S12S0S7S1S4S5S11S64.7KR24.7KR34.7KR44.7KR5VCC圖 3-6 鍵盤電路與單片機(jī)的連接圖報(bào)警電路當(dāng)電路檢測到稱重的物體超過儀器的測量限制時(shí),將產(chǎn)生一個(gè)信號(hào)給報(bào)警電路。使報(bào)警電路報(bào)警從而提醒工作人員注意,超限報(bào)警電路如下圖所示17。RXD101KPNPVCCDiodeSpeaker圖 3-7 報(bào)警電路圖它是有 STC89C52 的 RXD 口來控制的,RXD 本來為低電平,當(dāng)超過設(shè)置的重量時(shí)(2.5Kg) ,通過程序使 RXD 口值為高電平,從而使三極管導(dǎo)通,報(bào)警電路接通,使蜂鳴器 SPEAKER 發(fā)出報(bào)警聲,同時(shí)使報(bào)警燈 LED 發(fā)光。這一任務(wù)的實(shí)現(xiàn)
44、主要靠程序來完成。4 系統(tǒng)軟件設(shè)計(jì)在系統(tǒng)軟件的設(shè)計(jì)中,一般工作量較大,特別是對(duì)那些控制系統(tǒng)比較復(fù)雜的情況。如果是機(jī)電一體化的設(shè)計(jì)人員,往往需要同時(shí)考慮單片機(jī)的軟硬件資源分配。程序設(shè)計(jì)是一件復(fù)雜的工作,為了把復(fù)雜的工作條理化,就要有相應(yīng)的步驟和方法。其步驟可概括為以下三點(diǎn):(1)分析系統(tǒng)控制要求,確定算法:對(duì)復(fù)雜的問題進(jìn)行具體的分析,找出合理的計(jì)算方法及適當(dāng)?shù)臄?shù)據(jù)結(jié)構(gòu),從而確定編寫程序的步驟。這是能否編制出高質(zhì)量程序的關(guān)鍵。(2)根據(jù)算法畫流程圖:畫程序框圖可以把算法和解題步驟逐步具體化,以減少出錯(cuò)的可能性。 (3)編寫程序:根據(jù)程序框圖所表示的算法和步驟,選用適當(dāng)?shù)闹噶钆帕衅饋?,?gòu)成一個(gè)有機(jī)的
45、整體,即程序。程序數(shù)據(jù)的一種理想方法是結(jié)構(gòu)化程序設(shè)計(jì)方法。結(jié)構(gòu)化程序設(shè)計(jì)是對(duì)利用到的控制結(jié)構(gòu)類程序做適當(dāng)?shù)南拗疲貏e是限制轉(zhuǎn)向語句(或指令)的使用,從而控制了程序的復(fù)雜性,力求程序的上、下文順序與執(zhí)行流程保持一致性,使程序易讀易理解,減少邏輯錯(cuò)誤和易于修改、調(diào)試。根據(jù)系統(tǒng)的控制任務(wù),本系統(tǒng)的軟件設(shè)計(jì)主要由主函數(shù)程序、A/D 轉(zhuǎn)換啟動(dòng)及數(shù)據(jù)讀取程序設(shè)計(jì)、顯示子程序設(shè)計(jì)、鍵盤掃描子的程序設(shè)計(jì)、價(jià)格計(jì)算子程序設(shè)計(jì)、以及報(bào)警子程序設(shè)計(jì)等。 編程語言的選擇C 語言是一種通用的計(jì)算機(jī)程序設(shè)計(jì)語言,在國際上非常流行。它既可以用來編寫計(jì)算機(jī)的系統(tǒng)程序,也可以用來編寫一般的應(yīng)用程序。以前計(jì)算機(jī)的系統(tǒng)軟件主要用匯
46、編語言編寫,單片機(jī)應(yīng)用系統(tǒng)更是如此。C 語言是當(dāng)前最流行的程序設(shè)計(jì)語言,它像其它高級(jí)語言一樣,面向用戶,面向解題的過程,編程者不必熟悉具體的計(jì)算機(jī)內(nèi)部結(jié)構(gòu)和指令;C 語言又像匯編語言一樣,可以對(duì)機(jī)器硬件進(jìn)行操作。如進(jìn)行端口 I,0 操作、位操作、地址操作,并可內(nèi)嵌匯編指令,將匯編指令當(dāng)作它的語句一樣。我們知道,匯編語言將涉及計(jì)算機(jī)硬件,所以 C 語言又像低級(jí)語言一樣,可以對(duì)計(jì)算機(jī)硬件進(jìn)行控制,因此人們把它稱為介于高級(jí)語言與低級(jí)語言之間的一種中級(jí)語言。正是因?yàn)?C 語言具有這樣的特性,所以很適合編寫要對(duì)硬件進(jìn)行操作的軟件程序。本文采用 C 語言進(jìn)行編寫因?yàn)榇讼到y(tǒng)軟件比較,其存儲(chǔ)量較大,因此必須應(yīng)
47、用 C 語言編程了。主程序的設(shè)計(jì)主程序是系統(tǒng)信息處理的關(guān)鍵,主程序模塊主要完成編程芯片的初始化及按需要調(diào)用各模塊(子程序),在系統(tǒng)初始化過程中,初始化程序?qū)?RAM 的 30H 到5FH 單元清零,RXD 引腳置成低電平,防止誤報(bào)警,同時(shí)將系統(tǒng)設(shè)置成量程,并寫量程標(biāo)志。設(shè)計(jì)流程圖如圖 4-1 所示。主程序主要完成編程芯片的初始化及按需要調(diào)用各子程序,上電啟動(dòng)后,系統(tǒng)初始化,單片機(jī)讀取模數(shù)轉(zhuǎn)換器的數(shù)據(jù),然后調(diào)用顯示子程序顯示重量,同時(shí)掃描鍵盤子程序,調(diào)用價(jià)格計(jì)算子程序計(jì)算價(jià)格并顯示出來18。圖 4-1 電子秤系統(tǒng)程序設(shè)計(jì)流程圖子程序的設(shè)計(jì)主程序按需要調(diào)用各子程序。系統(tǒng)子程序主要包括 A/D 轉(zhuǎn)換
48、啟動(dòng)及數(shù)據(jù)讀取程序設(shè)計(jì)、顯示子程序設(shè)計(jì)、鍵盤掃描子的程序設(shè)計(jì)、價(jià)格計(jì)算子程序設(shè)計(jì)、以及報(bào)警子程序設(shè)計(jì)等。模數(shù)轉(zhuǎn)換子程序的設(shè)計(jì)A/D 轉(zhuǎn)換啟動(dòng)及數(shù)據(jù)讀取子程序設(shè)計(jì)主要是上電運(yùn)行后,ADC0832 完成初始化,把經(jīng)放大的稱重傳感器傳遞過來的模擬信號(hào)轉(zhuǎn)換成數(shù)字信號(hào)并傳遞到單片機(jī)所涉及到的程序設(shè)計(jì)設(shè)計(jì)流程圖如圖 4-2 所示。ADC0832 進(jìn)行模數(shù)轉(zhuǎn)換時(shí),須現(xiàn)將 CS 是能端置于低電平并且保存低電平直到完全結(jié)束。芯片開始轉(zhuǎn)換工作,同時(shí)由處理器向芯片時(shí)鐘輸入端 CLK 輸入時(shí)鐘脈沖,DO 和 DI 端則使用 DI 端輸入通道功能選擇的數(shù)據(jù)信號(hào)。在第 1 個(gè)時(shí)鐘脈沖的下沉之前 DI 端必須是高電平,表示
49、啟始信號(hào)。在第 2、3 個(gè)脈沖下沉之前 DI 端應(yīng)輸入 2 位數(shù)據(jù)用于選擇通道功能,到第 3 個(gè)脈沖的下沉之后 DI 端的輸入電平就失去輸入作用,此后 DO/DI 端則開始利用數(shù)據(jù)輸出DO 進(jìn)行轉(zhuǎn)換數(shù)據(jù)的讀取。從第 4 個(gè)脈沖下沉開始由 DO 端輸出轉(zhuǎn)換數(shù)據(jù)最高位DATA7,隨后每一個(gè)脈沖下沉 DO 端輸出下一位數(shù)據(jù)。直到第 11 個(gè)脈沖時(shí)發(fā)出最低位數(shù)據(jù) DATA0,一個(gè)字節(jié)的數(shù)據(jù)輸出完成。從第 11 個(gè)字節(jié)的下沉輸出DATA0。隨后輸出 8 位數(shù)據(jù),到第 19 個(gè)脈沖時(shí)數(shù)據(jù)輸出完成,也標(biāo)志著一次A/D 轉(zhuǎn)換的結(jié)束23。最后將 CS 置高電平禁用芯片19。圖 4-2 A/D 轉(zhuǎn)換啟動(dòng)及數(shù)據(jù)讀取
50、程序流程圖鍵盤掃描子程序的設(shè)計(jì)鍵盤掃描子程序主要是掃描鍵盤的輸入,調(diào)用顯示子程序顯示,輸出輸入的參數(shù),計(jì)算總價(jià)是調(diào)用價(jià)格計(jì)算子程序計(jì)算總價(jià)格。鍵盤電路設(shè)計(jì)成 34 矩陣式,由鍵盤編碼方式可以得出 1、2、3、4、5、6、7、8、9、0 及清零和計(jì)價(jià)各鍵對(duì)應(yīng)的鍵值:0 x31,0 x32,0 x33,0 x34,0 x35,0 x36,0 x37,0 x38,0 x39,0 x3d,0 x30,0 x2e。在程序中可以先判斷按鍵編碼,然后根據(jù)編碼將鍵盤代表的數(shù)值送到相應(yīng)的存儲(chǔ)單元,再進(jìn)功能選擇或數(shù)據(jù)處理。圖 4-3 鍵盤掃描子程序流程圖顯示子程序的設(shè)計(jì)單片機(jī)應(yīng)用系統(tǒng)通常都需要進(jìn)行人機(jī)對(duì)話。其中包
51、括人對(duì)應(yīng)用系統(tǒng)的狀態(tài)干預(yù)與數(shù)據(jù)輸入,應(yīng)用系統(tǒng)必須向操作者顯示狀態(tài)與運(yùn)行結(jié)果等信息。顯示器是單片機(jī)應(yīng)用系統(tǒng)中最常用的人機(jī)交互設(shè)備顯示子程序是字符顯示,首先初始化,輸出一些基本信息,然后調(diào)用事先編好的鍵盤顯示子程序,輸出顯示命令,顯示過程中還需要調(diào)用延時(shí)子程序。當(dāng)輸入通道采集了一個(gè)信號(hào),或人為的鍵入一個(gè)值,或系統(tǒng)與儀表出現(xiàn)異常情況顯示管理軟件應(yīng)及時(shí)調(diào)用顯示驅(qū)動(dòng)程序模塊,用來更新當(dāng)前數(shù)據(jù)顯示符號(hào)。設(shè)計(jì)顯示子程序的流程圖如下圖 4-4 所示:圖 4-4 顯示子程序流程圖價(jià)格計(jì)算子程序的設(shè)計(jì)價(jià)格計(jì)算子程序由鍵盤計(jì)價(jià)鍵控制,當(dāng)輸入單價(jià)后,在沒有清零的情況下,點(diǎn)計(jì)價(jià)鍵,計(jì)算出總價(jià)后,調(diào)用顯示子程序顯示出中重
52、量。圖 4-5 價(jià)格程序流程圖報(bào)警子程序的設(shè)計(jì)因?yàn)閴毫鞲衅鞯乃軌毫τ袠O限,所以稱重量必須有在一定范圍內(nèi),超過重量時(shí)必須有報(bào)警程序20。主程序初始化設(shè)定閾值為,報(bào)警子程序?qū)⒃O(shè)定的閾值與實(shí)時(shí)顯示的值進(jìn)行比較,先比較高位,若高位大,即設(shè)定值小于實(shí)時(shí)顯示的值,這時(shí)將 RXD 置為 1,將發(fā)光二極管點(diǎn)亮,且使蜂鳴器發(fā)出聲音。若高位相等,就比較低位,同理若設(shè)定值低位小于實(shí)際顯示值,將 RXD 置為 1,將發(fā)光二極管點(diǎn)亮,且使蜂鳴器發(fā)出聲音。這就需要一段比較程序以及一小段置 1 清 0 程序。圖 4-6 報(bào)警子程序流程圖5 系統(tǒng)調(diào)試軟件設(shè)計(jì)調(diào)試 程序編寫軟件本次程序編寫運(yùn)用的軟件是 Keil uv4.K
53、eil C51 是美國 Keil Software 公司出品的基于 51 系列單片機(jī)的 C 語言軟件開發(fā)系統(tǒng),運(yùn)用接近于傳統(tǒng) c 語言的語法來開發(fā),與匯編相比,C 語言簡單易學(xué)容易上手,而且可以提高工作效率和縮短項(xiàng)目開發(fā)周期,同時(shí)此軟件還能嵌入?yún)R編21。運(yùn)行Keil 軟件需要 WIN98、WINXP 等操作系統(tǒng)。這些系統(tǒng)均是主流系統(tǒng),使此軟件容易在 PC 上運(yùn)行。假如你使用 C 語言編程,那么 Keil 將是你最佳的選擇。Keil 的網(wǎng)站盡管暫時(shí)沒有中文版本,但是卻不影響 Keil 軟件被中國 80%的硬件工程師使用。凡是與電子相關(guān)的專業(yè),都會(huì)開始從單片機(jī)編程開始學(xué)習(xí),而學(xué)習(xí)單片機(jī)自然會(huì)用到
54、Keil 軟件。2009年2月發(fā)布 Keil UVision4,它加入靈便的窗口管理體系,使得開發(fā)人員可以同時(shí)使用多臺(tái)監(jiān)視器。并且使之前的功能更加完善。新版本還支持更多最新的 ARM芯片,是應(yīng)用范圍更廣。仿真軟件本次設(shè)計(jì)運(yùn)用的仿真軟件是 protues。Protues 軟件是英國 Labcenter electronics 公司生產(chǎn)的 EDA 工具軟件。它不僅僅能夠仿真 EDA 軟件,還能仿真單片機(jī)及外圍器件。并且它是目前最好的仿真單片機(jī)的工具。雖然它在國內(nèi)起步較晚,但是已經(jīng)成為單片機(jī)仿真的主流工具。Proteus 是世界上著名的 EDA 工具(仿真軟件),實(shí)現(xiàn)了從原理圖布圖、代碼調(diào)試到單片機(jī)
55、與外圍電路協(xié)同仿真,真正實(shí)現(xiàn)了從概念到產(chǎn)品的完整設(shè)計(jì)。到目前為止是世界上唯一將電路仿真軟件、PCB 設(shè)計(jì)軟件和虛擬模型仿真軟件三者完美結(jié)合在一起的軟件設(shè)計(jì)平臺(tái),其處理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086 和 MSP430 等。在編譯方面,它也支持 IAR、Keil 和 MATLAB 等多種編譯. 在設(shè)計(jì)電子秤的過程中,先在軟件中仿真,仿真成功后,再制作出實(shí)物。仿真采用的是 proteus 軟件,是一專門基于單片機(jī)的及其外圍電路的仿真軟件。仿真的第一步是先進(jìn)行軟件調(diào)試,是通過對(duì)程序的匯編、連接、執(zhí)行來發(fā)現(xiàn)程序中存在的語法
56、錯(cuò)誤與邏輯錯(cuò)誤并加以排除糾正錯(cuò)誤的過程。軟件調(diào)試的方法是先分塊后組合。在編出完整的程序并確保無誤后進(jìn)行綜合調(diào)試。在調(diào)試程序之前,先檢查各硬件模塊間的連接是否無誤,有無斷路現(xiàn)象。確認(rèn)連接無誤后就給系統(tǒng)通電進(jìn)行調(diào)試。正式調(diào)試時(shí),首先進(jìn)行總體調(diào)試,即觀察系統(tǒng)的運(yùn)行情況以便快速地發(fā)現(xiàn)存在的問題。然后進(jìn)行各硬件模塊調(diào)試,主要針對(duì)有問題的硬件模塊及其程序進(jìn)行調(diào)試,以便準(zhǔn)確地查出問題的原因并解決問題。圖 5-1 軟件調(diào)試圖硬件調(diào)試按照設(shè)計(jì)好的電子秤系統(tǒng)原理圖,計(jì)算出各個(gè)元器件的參數(shù),選擇相應(yīng)的器件,制作出了實(shí)際的電子秤系統(tǒng)后。首先檢查連線是否與邏輯圖一致,用萬用表檢查有無短路、虛焊等現(xiàn)象。器件的型號(hào)、規(guī)格、
57、規(guī)格、極性是否有誤,插接方向是否正確。檢查完畢,可用萬用表檢測儀下電路板正負(fù)電源之間的電阻,排除電源短路的可能。之后將生成的 hex 文件燒到單片機(jī)中,得到響應(yīng)的實(shí)物,觀察現(xiàn)象,并排除問題。電路焊接完成之后,通電發(fā)現(xiàn) LCD 不亮,萬用表檢測后發(fā)現(xiàn) LCD 存在虛焊現(xiàn)象,補(bǔ)焊后 LCD 正常工作。圖 5-2 硬件調(diào)試圖6 總結(jié)與展望 本論文主要研究的是簡易電子秤的設(shè)計(jì),主要是基于超市的電子秤,在小重量范圍的稱量。具有如下的功能:1、能用簡易鍵盤設(shè)置單價(jià),能夠同時(shí)顯示重量和金額;2、重量顯示:單位為千克;最大稱重為 2.5 千克,重量誤差不大于0.01 千克;3、具有清零功能和復(fù)位功能。4、超出
58、所測的重量時(shí)能夠報(bào)警。此電子秤采用 LCD1602 顯示,能夠同時(shí)顯示重量價(jià)格,并且具有很高的性價(jià)比,能夠廣泛的應(yīng)用少于 2.5kg 重量的范圍的交易。隨著現(xiàn)代數(shù)字電子技術(shù)的發(fā)展,電子秤不僅要向高精度、高可靠方向發(fā)展,而且更需向多種功能的方向發(fā)展。其發(fā)展的方向主要有:1 電子秤附加處理機(jī)構(gòu)計(jì)算機(jī)信息補(bǔ)償裝置,可以進(jìn)行自診斷、自校正和多種補(bǔ)償計(jì)算和處理。2 具有皮重、凈重顯示等特種功能。電子秤具備動(dòng)物稱量模式,即通過進(jìn)行算術(shù)平均、積分處理和自動(dòng)調(diào)零等方法,消除上述的誤差。3 附加特殊的數(shù)據(jù)處理功能。目前的電子秤有附加多種計(jì)算和數(shù)據(jù)處理功能, 以滿足多種使用的要求。在整個(gè)畢業(yè)設(shè)計(jì)過程中,我對(duì)大學(xué)四
59、年所學(xué)的知識(shí)有了一個(gè)系統(tǒng)的認(rèn)識(shí)和理解,尤其是對(duì)本課題所用到的單片機(jī)及其相關(guān)知識(shí)有了進(jìn)一步的掌握,對(duì)利用單片機(jī)進(jìn)行控制系統(tǒng)的設(shè)計(jì)與開發(fā)又及對(duì)系統(tǒng)的分析和問題的解決有了切身的認(rèn)識(shí)和體會(huì),正所謂學(xué)以致用,在此實(shí)踐過程中增長了知識(shí)、豐富了經(jīng)驗(yàn),提高了解決問題的能力。系統(tǒng)的分析與設(shè)計(jì)過程是對(duì)學(xué)習(xí)的總結(jié)過程,更是進(jìn)一步學(xué)習(xí)和探索的過程??刂葡到y(tǒng)的開發(fā)設(shè)計(jì)是一項(xiàng)復(fù)雜的系統(tǒng)工程,必須嚴(yán)格按照系統(tǒng)分析、系統(tǒng)設(shè)計(jì)、系統(tǒng)實(shí)施、系統(tǒng)運(yùn)行與調(diào)試的過程來進(jìn)行。系統(tǒng)的分析和設(shè)計(jì)是項(xiàng)很辛苦的工作,同時(shí)也是一個(gè)充滿樂趣的過程,在設(shè)計(jì)過程中,要邊學(xué)習(xí),邊實(shí)踐,遇到新問題就不斷探索和努力即可使問題得到解決。致 謝經(jīng)過半年的忙碌和工
60、作,本次畢業(yè)設(shè)計(jì)終于完成了,作為一個(gè)本科生的畢業(yè)設(shè)計(jì),由于經(jīng)驗(yàn)的匱乏,難免有許多考慮不周全的地方,如果沒有導(dǎo)師的督促指導(dǎo),以及一起工作的同學(xué)們的支持,想要完成這個(gè)設(shè)計(jì)是難以想象的。 通過這次畢業(yè)設(shè)計(jì),使我得到了一次用專業(yè)知識(shí)、專業(yè)技能分析和解決問題全面系統(tǒng)的鍛煉。使我在傳感器的基本原理、傳感器的實(shí)際應(yīng)用,以及在常用傳感器設(shè)計(jì)思路技巧的掌握方面都能向前邁了一人步,為日后成為合格的應(yīng)用型人才打下良好的基礎(chǔ)。我在劉老師的精心指導(dǎo)和嚴(yán)格要求下,獲得了豐富的理論知識(shí),極大地提高了實(shí)踐能力,并對(duì)當(dāng)前電了領(lǐng)域的研究狀況和發(fā)展方向有了一定的了解,這對(duì)我今后進(jìn)一步學(xué)習(xí)傳感器方面的知識(shí)有極人的幫助。在此,我衷心感
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 老友記測試題及答案
- 水利安全試題及答案
- 實(shí)戰(zhàn)模擬軟件評(píng)測師試題及答案
- 數(shù)字文旅面試題及答案
- 系統(tǒng)集成項(xiàng)目治理框架試題及答案
- 透視與制圖試題及答案
- 社會(huì)工作者的權(quán)力與責(zé)任試題及答案
- 2025年軟件評(píng)測師面臨的挑戰(zhàn)與機(jī)遇研究試題及答案
- 選擇題兒科試題及答案
- 心理之旅測試題及答案大全
- 2024-2025學(xué)年七年級(jí)下學(xué)期英語人教版(2024)期末達(dá)標(biāo)測試卷A卷(含解析)
- 2025年河南省鄭州市中原區(qū)中考數(shù)學(xué)第三次聯(lián)考試卷
- 《法律文書情境訓(xùn)練》課件-第一審民事判決書的寫作(上)
- 廣告宣傳服務(wù)方案投標(biāo)文件(技術(shù)方案)
- 烘焙設(shè)備智能化升級(jí)行業(yè)深度調(diào)研及發(fā)展戰(zhàn)略咨詢報(bào)告
- 基于新課標(biāo)的初中英語單元整體教學(xué)設(shè)計(jì)與實(shí)踐
- 《我的削筆刀》教學(xué)設(shè)計(jì) -2023-2024學(xué)年科學(xué)一年級(jí)上冊(cè)青島版
- 細(xì)胞培養(yǎng)技術(shù)考核試題及答案
- 2025分布式光伏工程驗(yàn)收標(biāo)準(zhǔn)規(guī)范
- 2025-2030全球及中國高壓側(cè)開關(guān)行業(yè)市場現(xiàn)狀供需分析及市場深度研究發(fā)展前景及規(guī)劃可行性分析研究報(bào)告
- 2025年北師大版數(shù)學(xué)六年級(jí)下冊(cè)期末復(fù)習(xí)計(jì)劃
評(píng)論
0/150
提交評(píng)論