C51C52單片機(jī)實(shí)現(xiàn)減法秤要點(diǎn)_第1頁(yè)
C51C52單片機(jī)實(shí)現(xiàn)減法秤要點(diǎn)_第2頁(yè)
C51C52單片機(jī)實(shí)現(xiàn)減法秤要點(diǎn)_第3頁(yè)
C51C52單片機(jī)實(shí)現(xiàn)減法秤要點(diǎn)_第4頁(yè)
C51C52單片機(jī)實(shí)現(xiàn)減法秤要點(diǎn)_第5頁(yè)
已閱讀5頁(yè),還剩9頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、上海第童*學(xué)課程設(shè)計(jì)論文課程名稱(chēng)學(xué)院專(zhuān)業(yè)班級(jí)學(xué)號(hào)單片機(jī)減法秤報(bào)告電子與電氣自動(dòng)化11自動(dòng)C1學(xué)生姓名單片機(jī)減法秤設(shè)計(jì)報(bào)告一、方案設(shè)計(jì)1、采用高精度電阻應(yīng)變式壓力傳感器, 測(cè)量量程 0-5kg ,測(cè)量精度達(dá) 5g。2、采用電子秤專(zhuān)用模擬 /數(shù)字( A/D )轉(zhuǎn)換器芯片 hx711 對(duì)傳感器信號(hào)進(jìn) 行調(diào)理轉(zhuǎn)換, HX711 采用了海芯科技集成電路專(zhuān)利技術(shù),是一款專(zhuān)為高精度 電子秤而設(shè)計(jì)的 24 位 A/D 轉(zhuǎn)換器芯片。3、采用 STC89C52 單片機(jī)作為主控芯, 實(shí)現(xiàn)稱(chēng)重、 計(jì)算價(jià)格等主控功能。4、采用 128*64 漢字液晶屏顯示稱(chēng)重重量、單價(jià)、總價(jià)等信息。5、采用 4*4 矩陣鍵盤(pán)進(jìn)行人機(jī)交

2、互,鍵盤(pán)容量大,操作便捷。6、具有超量程報(bào)警功能,可以通過(guò)蜂鳴器和LED 燈報(bào)警。7、系統(tǒng)通過(guò) USB 電源供電,單片機(jī)程序也可通過(guò) USB 線(xiàn)串行下載。8. 黑金剛配套的 28BYJ48 5V 驅(qū)動(dòng)的 4 相 5 線(xiàn)的步進(jìn)電機(jī)二、硬件設(shè)計(jì)1、硬件方案( 一):稱(chēng)重傳感器感 稱(chēng)重傳感器感應(yīng)被測(cè)重力,輸出微弱的毫伏級(jí)電壓信號(hào)。該電壓信號(hào)經(jīng) 過(guò)電子秤專(zhuān)用模擬/數(shù)字(A/D)轉(zhuǎn)換器芯片hx711對(duì)傳感器信號(hào)進(jìn)行調(diào)理轉(zhuǎn) 換。 HX711 采用了海芯科技集成電路專(zhuān)利技術(shù),是一款專(zhuān)為高精度電子秤而 設(shè)計(jì)的24位A/D轉(zhuǎn)換器芯片,內(nèi)置增益控制,精度高,性能穩(wěn)定。HX711芯片通過(guò) 2 線(xiàn)串行方式與單片機(jī)通信

3、。單片機(jī)讀取被測(cè)數(shù)據(jù),進(jìn)行計(jì)算轉(zhuǎn)換, 再液晶屏上顯示出來(lái)。電阻應(yīng)變式傳感器測(cè)量原理如圖 2所示5V*J圖3測(cè)量電橋原理(二)、電子秤專(zhuān)用24位AD轉(zhuǎn)換芯片HX711及其電路該芯片與后端 MCU芯片的接口和編程非常簡(jiǎn)單,所有控制信號(hào)由管腳驅(qū)動(dòng),無(wú)需對(duì)芯片內(nèi)部的寄存器編程。輸入選擇開(kāi)關(guān)可任意選取通道A或通道B,與其內(nèi)部的低噪聲可編程放大器相連。通道A的可編程增益為128或64,對(duì)應(yīng)的滿(mǎn)額度差分輸入信號(hào)幅值分別為土20mV或土 40mV通道B則為固定的32增益,用于系統(tǒng)參數(shù)檢測(cè)。芯片內(nèi)提供的穩(wěn)壓電源可以直接向外部傳感器 和芯片內(nèi)的A/D轉(zhuǎn)換器提供電源,系統(tǒng)板上無(wú)需另外的模擬電源。芯片內(nèi)的 時(shí)鐘振蕩器

4、不需要任何外接器件。上電自動(dòng)復(fù)位功能簡(jiǎn)化了開(kāi)機(jī)的初始化過(guò) 程。HX711內(nèi)部方框圖如圖4所示。其外部管腳如圖 5所示。圖4 HX711內(nèi)部方框圖本課題設(shè)計(jì)的HX711電路如圖7所示:(三)步進(jìn)電機(jī)選擇步進(jìn)電機(jī)的主要特性:1、步進(jìn)電機(jī)必須加驅(qū)動(dòng)才可以運(yùn)轉(zhuǎn),驅(qū)動(dòng)信號(hào)必須為脈沖信號(hào),沒(méi)有脈沖的時(shí)候, 步進(jìn)電機(jī)靜止,如果加入適當(dāng)?shù)拿}沖信號(hào),就會(huì)以一定的角度( 稱(chēng)為步角)轉(zhuǎn)動(dòng)。轉(zhuǎn) 動(dòng)的速度和脈沖的頻率成正 比。2、步進(jìn)電機(jī)具有瞬間啟動(dòng)和急速停止的優(yōu)越特性3、改變脈沖的順序,可以方便的改變轉(zhuǎn)動(dòng)的方向。因此,目前打印機(jī),繪圖儀,機(jī)器人,等等設(shè)備都以步進(jìn)電機(jī)為動(dòng)力核心。1、如果不考慮數(shù)據(jù)鎖存功能,步進(jìn)電機(jī)的擴(kuò)

5、展板電路可以簡(jiǎn)化為下圖:ULN2D03+VCCAPD.12PO.23PO.34-8 0.0曰日日白日日曰1 2 3 4 5 6 7 -Ec cccccc MCN2vAIBe D+VCCC2 47U/1W程序設(shè)計(jì)(四)、單片機(jī)STC89C52及其電路STC89C52單片機(jī)概述STC89C5系列單片機(jī)是宏晶科技生產(chǎn)的單時(shí)鐘/機(jī)器周期(1T)的單片機(jī),是 高速/低功耗/超強(qiáng)抗干擾的新一代8051單片機(jī),指令代碼完全兼容傳統(tǒng) 8051, 但速度快8-12倍,內(nèi)部集成MAX81C專(zhuān)用復(fù)位電路。本課題設(shè)計(jì)的電子秤的單片機(jī)應(yīng)用電路如圖 9所示:1O1FendU1STC89C52alert2IW43ROW34

6、DOUT5PDSCK6SOZFL7SI ZK8RXD10TXD11RQW212ROW!13COL114COL215COL316COL417VJ1Pl QPl.lP1J3Fl .4Pl_5Pl 6Pl.7RXDJTP3.0 TXD/P3.1 fIrr6jP3-a LNTUP3.3 T0/P3.4 TUP3.5 WRnP3,6 RD/P3.7OAPOO/ADOP0.1/AD1FO.2/AD2P0.3AD3P0.4/AD4P0.3/AD5 PO 6XAD6 PO.7/AD7 ALE/PRQC PSEN P2.7;A15 P2.6/A14 P2_S/A13 P2.47A12 P2.3/A11 P2.2

7、/A10 P2.UA9 P2.O/A8393837363534333227LCD.RES26LCD RS25LCDJSDA24LCD SCK23LEDA22cs藝瓷21sck ZKCiN2uFC4 I ;O-IuF圖9 STC89C52單片機(jī)電路(五)、液晶屏電路LCD顯示電路LCD JLX12864G圖10 LCD顯示電路液晶屏電路如圖 10 所示。LCD_CS、LCD_RES、LCD_RS、LCD_SDA、LCD_SCK為液晶模塊與單片機(jī)接口的控制線(xiàn)。CS_ZK、SCK_ZK、SO_ZK和SI ZK為字庫(kù)和單片機(jī)接口的控制線(xiàn)。(六)、矩陣鍵盤(pán)電路矩陣鍵盤(pán)電路如圖11所示:號(hào)為R0W1 R0

8、W4,列掃描信號(hào)為 C0L1 C0L4。(七).電源電路本設(shè)計(jì)采用USB接口供電,電源電壓5V。同時(shí),USB接口通過(guò)內(nèi)含PL2303 芯片的轉(zhuǎn)換電路對(duì)單片機(jī)進(jìn)行程序編寫(xiě)。其電路原理如圖所示。J22 P0WER2USB電源及下載接口1234GNDrtmTXD-JU H)限XD 攢 USB 綠 iTXTh4fil aXD接U/B 白銭RXn(八)軟件設(shè)計(jì)主程序軟件流程如圖21所示圖21主程序流程圖3、主程序下面介紹main.c主程序編寫(xiě),其他程序略。#i nclude mai n.h#i nclude HX711.h#i nclude LCD1602.h/un sig nedunsigned ch

9、ar code CCW8=0x08,0x0c,0x04,0x06,0x02,0x03,0x01,0x09; char code CW8=0x09,0x01,0x03,0x02,0x06,0x04,0x0c,0x08;un sig ned long HX711_Buffer = 0;un sig ned long Weight_Maopi = 0;long Weight_Shiwu = 0;un sig ned char KEY_NUM = 0;char Target_Co unt = 0;un sig ned char Target_Buffer2 = 0x00,0x00;char targe

10、t = 0;un sig ned char wucha =1;bit Flag_ERROR = 0;bit Flag_OK = 0;#define Gap Value 378378void mai n()I nit_LCD1602();LCD1602_write_com(0x80);LCD1602_write_word(Welcome to use!);while(K1);Delay_ms(1000);while(K1=0) motor_cw(); LCD1602_write_com(0x80);LCD1602_write_word( Weight:);LCD1602_write_com(0x

11、80+0x40);LCD1602_write_word( Target: 0000 g);Get_Maopi(); while(1) Get_Weight();LCD1602_write_com(0x80+0x0a); LCD1602_write_word(ERROR ); elseLCD1602_write_com(0x80+0x0a); LCD1602_write_data(Weight_Shiwu/1000 + 0X30); LCD1602_write_data(Weight_Shiwu%1000/100 + 0X30); LCD1602_write_data(Weight_Shiwu%

12、100/10 + 0X30); LCD1602_write_data(Weight_Shiwu%10 + 0X30); LCD1602_write_word( g);if(Flag_OK = 1&(targetWeight_Shiwu+wucha) motor_ccw(); /電機(jī)逆轉(zhuǎn) if(target=Weight_Shiwu+wucha)Flag_OK=0; if(Flag_OK=0)KEY_NUM = Scan_Key(); if( KEY_NUM != 0x55) if(KEY_NUM = 16) Get_Maopi(); if(KEY_NUM = 15) while(K1); De

13、lay_ms(1000);while(K1=0) motor_cw(); if(KEY_NUM = 12)Target_Count-; if( Target_Count = 0 & KEY_NUM = 2)Target_Count = 2; unsigned char Scan_Key() unsigned char temp = 0; unsigned char com = 0x55 , com1 = 0 , com2 = 0; P1=0xf0;if(P1!=0xf0) com1=P1;P1=0x0f;com2=P1; P1=0xf0;while(P1!=0xf0); temp=com1|c

14、om2;if(temp=0xee)com=1;/ 數(shù)字 1 if(temp=0xed)com=4;/ 數(shù)字 4 if(temp=0xeb)com=7;/ 數(shù)字 7 if(temp=0xe7)com=11;if(temp=0xd7)com=0;/ 數(shù)字 0 if(temp=0xb7)com=14;/ 備用鍵 * 號(hào)鍵 if(temp=0xde)com=2; / 數(shù)字 2 if(temp=0xdd)com=5; / 數(shù)字 5 if(temp=0xdb)com=8;/ 數(shù)字 8 if(temp=0xbe)com=3;/ 數(shù)字 3 if(temp=0xbd)com=6; / 數(shù)字 6 if(temp=

15、0xbb)com=9;/ 數(shù)字 9 if(temp=0x7e)com=16;/ 數(shù)字 A 鍵,去皮功能 if(temp=0x7d)com=15;/ 數(shù)字 B 鍵清除鍵,二次測(cè)量 if(temp=0x7b)com=12;/ 數(shù)字 C 輸入單價(jià)錯(cuò)誤時(shí)返回上一步if(temp=0x77)com=13;/ 數(shù)字 D 鍵,計(jì)算總價(jià) return(com);Weight_Shiwu = HX711_Read();Weight_Shiwu = Weight_Shiwu - Weight_Maopi; if(Weight_Shiwu 0)Weight_Shiwu = (unsigned int)(float)

16、Weight_Shiwu/GapValue); if(Weight_Shiwu 5000)Flag_ERROR = 1; else Flag_ERROR = 0;else Weight_Shiwu = 0;Flag_ERROR = 1; void Get_Maopi() Weight_Maopi = HX711_Read(); void Delay_ms(unsigned int n) unsigned int i,j;for(i=0;in;i+) for(j=0;j123;j+); void delay500us(void) int j;for(j=0;j57;j+) ; void di(v

17、oid) / unsigned int y;for(y=0;y250;y+)beep=0; Delay_ms(1);beep=1;Delay_ms(1);void motor_ccw(void) / unsigned char i,j;for(j=0;j2;j+) / for(i=0;i8;i+) / F1=CCWi&0x01;F2=CCWi&0x02;F3=CCWi&0x04;F4=CCWi&0x08; Delay_ms(10); void motor_cw(void) unsigned char i,j;for(j=0;j5;j+) for(i=0;i8;i+) F1=CWi&0x01;F

18、2=CWi&0x02; F3=CWi&0x04;F4=CWi&0x08;Delay_ms(1);(九)操作與使用1、上電運(yùn)行下載完成后程序自動(dòng)運(yùn)行,或重上電后程序正常運(yùn)行,如圖所示圖23上電運(yùn)行圖4*4矩陣鍵盤(pán)定義如下78451214(未定義)02、鍵盤(pán)操作說(shuō)明9D(清 0)6C(電機(jī)反轉(zhuǎn))3B(電機(jī)正轉(zhuǎn))15(.)A(確定價(jià)格)其中:鍵09為數(shù)字鍵,用于單價(jià)設(shè)定 鍵15為小數(shù)點(diǎn),也用于單價(jià)設(shè)定。B鍵為電機(jī)正轉(zhuǎn),每次設(shè)定數(shù)值后,請(qǐng)先按清 B鍵,以驅(qū)動(dòng)電機(jī)轉(zhuǎn)動(dòng)。C鍵為電機(jī)反轉(zhuǎn),當(dāng)達(dá)到設(shè)定值時(shí),按下該鍵電機(jī)開(kāi)始向 反方向轉(zhuǎn)動(dòng)3、常用使用步驟: 打開(kāi)電源,屏幕顯示電子秤初始化成功,此時(shí)重量和單價(jià)為0,金額為空;通過(guò)數(shù)字鍵和小數(shù)點(diǎn)鍵鍵入搖確定的稱(chēng)重?cái)?shù)值,完成后按下 電機(jī)轉(zhuǎn)動(dòng)鍵。在支架上稱(chēng)出搖秤的數(shù)值,液晶屏顯示重量(單位為g),當(dāng) 到達(dá)設(shè)定值時(shí)電機(jī)停止當(dāng)?shù)竭_(dá)設(shè)定值后按下C鍵,電機(jī)向相反方向轉(zhuǎn)動(dòng)。(十)誤差分析一:由于電路的不穩(wěn)定以及傳感器的工作原理造成的誤差。二:硬件設(shè)計(jì)時(shí),下面擋板不高造成物料容易掉下來(lái), 當(dāng)數(shù)值在一霎啦間以達(dá)到 設(shè)定值

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論