




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上摘要電子秤是日常生活中常用的稱重設(shè)備,廣泛應(yīng)用于超市、大中型商場(chǎng)、物流配送中心。電子秤在結(jié)構(gòu)和原理上取代了以杠桿平衡為原理的傳統(tǒng)機(jī)械式稱量工具。相比傳統(tǒng)的機(jī)械式稱量工具,電子秤具有稱量精度高、裝機(jī)體積小、應(yīng)用范圍廣、易于操作使用等優(yōu)點(diǎn),在外形布局、工作原理、結(jié)構(gòu)和材料上都是全新的計(jì)量衡器。微電子技術(shù)的發(fā)展為電子秤提出了改進(jìn)的空間。電子秤向著簡(jiǎn)單、便宜發(fā)展,智能化、精確的電子秤成為了人們的追求。本簡(jiǎn)易電子秤以常見的AT89C51為核心,以電阻應(yīng)變片采集應(yīng)變數(shù)據(jù),通過HX711放大并進(jìn)行AD轉(zhuǎn)換供單片機(jī)處理,用LCD1602顯示所測(cè)量的重量,同時(shí)本電子秤系統(tǒng)還提供單價(jià)設(shè)置
2、進(jìn)行求價(jià)格的計(jì)算以及去皮功能,通過一些簡(jiǎn)單低成本的元器件就完成了一個(gè)功能齊全的電子秤的制作,將傳統(tǒng)電子秤的成本進(jìn)行了縮減。關(guān)鍵詞:電阻應(yīng)變片 AT89C51 HX711 電子秤第一章 方案與論證一、方案類型(一)方案一通過單片機(jī)為主控芯片,用應(yīng)變片采集應(yīng)變數(shù)據(jù),通過專用儀表放大器INA128對(duì)采集到的信號(hào)進(jìn)行放大,在配上模數(shù)轉(zhuǎn)換芯片對(duì)放大了的模擬信號(hào)轉(zhuǎn)化為數(shù)字信號(hào),傳入單片機(jī)中進(jìn)行數(shù)據(jù)處理,找出函數(shù)關(guān)系并轉(zhuǎn)化關(guān)系。通過數(shù)字信號(hào)轉(zhuǎn)化為重量值顯示在LDC1602上,同時(shí)通過鍵盤進(jìn)行數(shù)據(jù)輸入,輸入單價(jià)、去皮等功能。通過蜂鳴器和二極管實(shí)現(xiàn)超額報(bào)警功能。(二)方案二以單片機(jī)為主控芯片,應(yīng)變片采集應(yīng)變數(shù)據(jù)
3、,將放大和模數(shù)轉(zhuǎn)換用HX711芯片來同時(shí)進(jìn)行實(shí)現(xiàn),將模擬量傳入主控芯片單片機(jī)中進(jìn)行數(shù)據(jù)轉(zhuǎn)換,通過函數(shù)關(guān)系轉(zhuǎn)換為重量顯示到LED上或者LCD1602上,同時(shí)通過鍵盤按鍵進(jìn)行數(shù)據(jù)輸入,輸入單價(jià)、去皮等功能,并通過蜂鳴器進(jìn)行數(shù)據(jù)處理。(三)方案三運(yùn)用PLC作為主控制器,PLC運(yùn)用廣泛,它具有接線簡(jiǎn)單,通用性好,編程簡(jiǎn)單,使用方便,可連接為控制網(wǎng)絡(luò)系統(tǒng),易于安裝,便于維護(hù)等優(yōu)點(diǎn)。二、方案論證與選定運(yùn)用51單片機(jī)作為主控芯片,AT89C51是一種高效微控制器。它為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。但方案一中,放大和AD轉(zhuǎn)換模塊為獨(dú)立模塊,它們的獨(dú)立設(shè)計(jì)費(fèi)事費(fèi)力且還會(huì)存在誤差較大的情況。相
4、比于方案一,方案二一HX711作為放大和AD轉(zhuǎn)換芯片,簡(jiǎn)化了電路結(jié)構(gòu)。HX711是一款專為高精度電子秤設(shè)計(jì)的24位AD轉(zhuǎn)換器芯片。與同類型其他芯片相比,該芯片集成了包括文雅電源、片內(nèi)時(shí)鐘振蕩器等其它同類型芯片所需要的外圍電路,具有集成度高、響應(yīng)速度快、抗干擾性強(qiáng)等優(yōu)點(diǎn)。精度方面很好的滿足了題目中的要求,相比于方案一,方案二根據(jù)可行性。方案三采用PLC作為主控芯片,但其價(jià)格昂貴,違背了我們制作電子秤的簡(jiǎn)單、便捷、便宜的原則,所以我們并沒考慮選用PLC作為主控芯片。綜合考慮后,我們決定選擇方案二來進(jìn)行本簡(jiǎn)易電子秤系統(tǒng)的設(shè)計(jì)與制作。通過精度、價(jià)格、簡(jiǎn)單程度出發(fā)考慮,方案二是最合適的。第二章 設(shè)計(jì)方案
5、一、 設(shè)計(jì)思路圖2-1總體思路圖圖2-2 具體思路二、 各部分設(shè)計(jì)(一)傳感器部分設(shè)計(jì)傳感器應(yīng)題目要求選用電阻應(yīng)變片,是用于測(cè)量應(yīng)變的元件。它能將機(jī)械構(gòu)件上應(yīng)變的變化轉(zhuǎn)換為電阻變化。為了減少測(cè)量誤差,本簡(jiǎn)易電子秤系統(tǒng)采用全橋差動(dòng)形式,全橋差動(dòng)測(cè)量電路不僅沒有非線性測(cè)量誤差,且電壓靈敏度是單臂電阻應(yīng)變片工作時(shí)的四倍,運(yùn)用全橋差動(dòng)1使得本電子秤系統(tǒng)更加穩(wěn)定和可靠。圖2-3 全橋差動(dòng)電路(二)主控芯片主控芯片是電子秤的核心部分,它能接受轉(zhuǎn)換后的傳感器信號(hào),同時(shí)也能掃描接受到鍵盤的輸入信號(hào),計(jì)算價(jià)格后控制顯示器的輸出,能夠?qū)崿F(xiàn)去皮功能,當(dāng)超過稱重量量程時(shí)還要控制報(bào)警裝置報(bào)警。本簡(jiǎn)易電子秤選用AT89C
6、51作為主控芯片,AT89C51是一種帶4K字節(jié) FLASH存儲(chǔ)器的低電壓、高性能CMOS 8位微處理器,俗稱單片機(jī)。AT89C2051是一種帶2K字節(jié)閃存可編程可擦除只讀存儲(chǔ)器的單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除1000次。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃速存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C051是它的一種精簡(jiǎn)版本。AT89C51單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。51單片機(jī)的操作簡(jiǎn)單,功能強(qiáng)大,價(jià)格便宜。運(yùn)用51單片機(jī)作
7、為主控芯片可以減少成本,而且制作簡(jiǎn)便,能夠?qū)崿F(xiàn)本系統(tǒng)的所有功能,是一個(gè)不錯(cuò)的選擇。(三)放大與AD轉(zhuǎn)換模塊在系統(tǒng)總體設(shè)計(jì)時(shí),我們考慮到了將放大與AD轉(zhuǎn)換作為單獨(dú)的模塊進(jìn)行設(shè)計(jì),但是思考后發(fā)現(xiàn)這其中還有更好的選擇。HX711是一款專為高精度電子秤而設(shè)計(jì)的24位A/D轉(zhuǎn)換器芯片。與同類型其它芯片相比,該芯片集成了包括穩(wěn)壓電源、片內(nèi)時(shí)鐘振蕩器等其它同類型芯片所需要的外圍電路,具有集成度高、響應(yīng)速度快、抗干擾性強(qiáng)等優(yōu)點(diǎn)。同時(shí)HX711還自帶放大功能,可選增益為64和128兩種。運(yùn)用HX711保證了題目要求的高精度,可實(shí)現(xiàn)精度誤差控制在01g以內(nèi),保證了我們完成題目的要求。(四)鍵盤方案針對(duì)題目要求,需
8、要我們輸入單間進(jìn)行計(jì)算,單價(jià)包含0-9十個(gè)數(shù)字,數(shù)字鍵占用十個(gè),確定和清除占用兩個(gè),去皮占用一個(gè),復(fù)位占用一個(gè)。去皮鍵、復(fù)位鍵、清除鍵單獨(dú)用一個(gè)IO口引出;將十個(gè)數(shù)字鍵、確定鍵、計(jì)算總價(jià)鍵十二個(gè)鍵制成3x4的矩陣鍵盤2。通過設(shè)計(jì)成矩陣鍵盤的模式而減少單片機(jī)IO口的占用,為其他功能騰出空間。圖2-4 3x4矩陣鍵盤第三章 電路設(shè)計(jì)一、單片機(jī)最小系統(tǒng)電路AT89C51是片內(nèi)有ROM/EPROM的單片機(jī),其最小系統(tǒng)簡(jiǎn)單、可靠,僅由時(shí)鐘電路、復(fù)位電路、電源電路構(gòu)成。(一)時(shí)鐘電路AT89C51雖然有內(nèi)部振蕩電路,但要形成時(shí)鐘,必須外部附加電路。AT89C51單片機(jī)的時(shí)鐘產(chǎn)生方法有兩種。內(nèi)部時(shí)鐘方式和外
9、部時(shí)鐘方式。本設(shè)計(jì)采用最常用的內(nèi)部時(shí)鐘方式,即用外接晶體和電容組成的并聯(lián)諧振回路。振蕩晶體可在1.2MHZ到12MHZ之間選擇。電容取值對(duì)振蕩頻率輸出的穩(wěn)定性、大小、振蕩電路起振速度有少許影響,可在20pF到100pF之間取值。所以本設(shè)計(jì)中,振蕩晶體選擇12MHZ,電容選擇22pF。(二)復(fù)位電路AT89C51的復(fù)位電路是由外部的復(fù)位電路來實(shí)現(xiàn)的。只需給復(fù)位引腳RST加上大于2個(gè)機(jī)器周期的高電平就可使其復(fù)位。復(fù)位電路通常采用上電自動(dòng)復(fù)位和按鍵復(fù)位兩種方式。本設(shè)計(jì)就是用的按鍵手動(dòng)復(fù)位。其中電平復(fù)位是通過RST端經(jīng)電阻與電源Vcc接通而實(shí)現(xiàn)的。(三)電源電路AT89C51的電源腳分別為20腳Vss
10、和40腳Vcc。這兩個(gè)腳分別接地和+5V直流電源,31腳EA為內(nèi)外存儲(chǔ)器的控制端,接+5V允許訪問外部存儲(chǔ)器。圖3-1 晶振電路和復(fù)位電路二、AD轉(zhuǎn)換電路HX711是一款專為高精度稱重傳感器而設(shè)計(jì)的24位A/D轉(zhuǎn)換器芯片。與同類型其它芯片相比,該芯片集成了包括穩(wěn)壓電源、片內(nèi)時(shí)鐘振蕩器等其它同類型芯片所需要的外圍電路,具有集成度高、響應(yīng)速度快、抗干擾性強(qiáng)等優(yōu)點(diǎn)、降低了電子秤的整機(jī)成本,提高了整機(jī)的性能和可靠性。該芯片與后端MCU芯片的接口和編程非常簡(jiǎn)單,所有控制信號(hào)由管腳驅(qū)動(dòng),無需對(duì)芯片內(nèi)部的寄存器編程。輸入選擇開關(guān)可任意選取通道A或通道B,與其內(nèi)部的低噪聲可編程放大器相連。通道A的可編程增益為
11、128或64,對(duì)應(yīng)的滿額度差分輸入信號(hào)幅值分別為20mV或40mV。通道B則為固定的64增益,用于系統(tǒng)參數(shù)檢測(cè)。芯片內(nèi)提供的穩(wěn)壓電源可以直接向外部傳感器和芯片內(nèi)的A/D轉(zhuǎn)換器提供電源,系統(tǒng)板上無需另外的模擬電源。芯片內(nèi)的時(shí)鐘振蕩器不需要任何外接部件。上電自動(dòng)復(fù)位功能簡(jiǎn)化了開機(jī)的初始化過程。圖3-2 HX711模塊電路三、LCD1602顯示電路本設(shè)計(jì)采用的是LCD1602顯示,LCD1602液晶也叫1602字符型液晶它是一種專門用來顯示字母、數(shù)字、符號(hào)等的點(diǎn)陣型液晶模塊它有若干個(gè)57或者511等點(diǎn)陣字符位組成,每個(gè)點(diǎn)陣字符位都可以顯示一個(gè)字符。每位之間有一個(gè)點(diǎn)距的間隔每行之間也有間隔起到了字符間
12、距和行間距的作用,正因?yàn)槿绱怂运荒茱@示圖形。1602LCD是指顯示的內(nèi)容為162,即可以顯示兩行,每行16個(gè)字符液晶模塊。圖3-3 LCD1602電路四、總設(shè)計(jì)電路圖3-4 系統(tǒng)總電路第四章 測(cè)試方法與測(cè)試結(jié)果一、測(cè)試方法由于本系統(tǒng)是一個(gè)簡(jiǎn)易電子秤系統(tǒng),所以最好的測(cè)量方法就是通過測(cè)量標(biāo)準(zhǔn)砝碼的質(zhì)量來比對(duì)本電子秤系統(tǒng)的測(cè)量顯示值。以測(cè)量結(jié)果顯示值減去砝碼質(zhì)量再除以砝碼質(zhì)量得出誤差百分比,同時(shí)也得出精確程度。(一)鍵盤測(cè)量與LCD1602測(cè)量鍵盤與LCD1602的測(cè)量我們放在一起進(jìn)行,編寫按鍵與LCD1602顯示函數(shù),將對(duì)應(yīng)按鍵編碼成0-9,按下按鍵通過LCD1602來進(jìn)行顯示所按下鍵盤的數(shù)值
13、,通過這種方法我們同時(shí)測(cè)量了鍵盤與LCD1602的功能,保證了電路焊接的正確性。(二)模數(shù)轉(zhuǎn)換對(duì)應(yīng)數(shù)值測(cè)量將HX711連接到電路中,通過LCD1602來顯示轉(zhuǎn)換后的數(shù)值信號(hào),依次將10g、20g、30g、40g到500g的砝碼放到秤盤上,依次獨(dú)處LCD1602的顯示數(shù)值,將這五十組數(shù)據(jù)放入到Excel表格中,通過Excel繪制線性圖形。通過線性圖形擬合出線性函數(shù)關(guān)系。(三)測(cè)量質(zhì)量檢測(cè)分別用10g、20g、50g、100g、200g、500g的砝碼放到本簡(jiǎn)易電子系統(tǒng)的秤盤上,比對(duì)測(cè)量顯示值,求出誤差百分比和測(cè)量精度。除此之外,我們還用一個(gè)10克、兩個(gè)2克砝碼組成一個(gè)五十克砝碼;一個(gè)10克砝碼、
14、兩個(gè)20克砝碼和一個(gè)50克砝碼組成一個(gè)100克方法等組合放在秤盤中心進(jìn)行測(cè)量,以此來確定本簡(jiǎn)易電子秤系統(tǒng)的精確度。二、測(cè)量結(jié)果(一)AD轉(zhuǎn)換后數(shù)值信號(hào)值與砝碼質(zhì)量的對(duì)應(yīng)關(guān)系表4-1 AD值與砝碼質(zhì)量(g)的對(duì)應(yīng)關(guān)系A(chǔ)D值9174908890038919883387498663857784948408重量0102030405060708090AD值8326823981538069798378987814772576417553重量100110120130140150160170180190AD值7470738573007218713070466961687467926702重量200210220
15、230240250260270280290AD值6626654164556370629462086123603659545873重量300310320330340350360370380390AD值5780569556155535545553715290521251335049重量400410420430440450460470480490通過表中的數(shù)據(jù),通過Excel折線圖進(jìn)行擬合,擬合出的結(jié)果為數(shù)據(jù)呈現(xiàn)線性關(guān)系,這滿足應(yīng)變片的性質(zhì),得出的轉(zhuǎn)換函數(shù)為:y=0.1185x+1085.8145。圖4-1 折線圖(二)簡(jiǎn)易電子秤測(cè)量結(jié)果與標(biāo)準(zhǔn)砝碼比對(duì)關(guān)系在確定了函數(shù)轉(zhuǎn)換關(guān)系之后,電子秤的制作基本快
16、要完成,將函數(shù)關(guān)系編寫到程序中就實(shí)現(xiàn)電子秤的制作。將10g-500g依次增長(zhǎng)10g的砝碼放入到秤盤中,比對(duì)標(biāo)準(zhǔn)砝碼值與測(cè)量顯示值之間的關(guān)系發(fā)現(xiàn)誤差基本控制在1g之內(nèi),0-50g期間大致控制在了0.5g的范圍內(nèi),基本完成了題目所給要求。三、測(cè)量結(jié)論本簡(jiǎn)易電子秤系統(tǒng)達(dá)到了題目要求,擁有輸入單價(jià)求價(jià)格的功能,同時(shí)還能滿足價(jià)格的疊加在單片機(jī)芯片中計(jì)算而不用,輸入一個(gè)記錄一個(gè)值那么麻煩。同時(shí)本電子稱系統(tǒng)也完成了去皮功能,清除,復(fù)位功能,甚至還設(shè)置了超上限報(bào)警裝置報(bào)警值上限為550g。參考文獻(xiàn)1胡向東,李銳,耿道渠等M.傳感器與檢測(cè)技術(shù)第2版.北京.機(jī)械工業(yè)出版社.2013.37-382郭天祥.51單片機(jī)
17、C語(yǔ)言教程M.北京.電子工業(yè)出版社.2009.86附錄一、HX711代碼#include lcd1602.h#include#include hx711.h#includesbit ADDO = P24;sbit ADSK = P23;/* extern unsigned long ReadAD(void);.unsigned long data;data=ReadAD();.-*/ulong ReadCount(void)ulong Count;uchar i;ADSK=0; /使能AD(PD_SCK 置低)Count=0;while(ADDO); /AD轉(zhuǎn)換未結(jié)束則等待,否則開始讀取for
18、 (i=0;i24;i+)ADSK=1; /PD_SCK 置高(發(fā)送脈沖)Count=Count1; /下降沿來時(shí)變量Count左移一位,右側(cè)補(bǔ)零ADSK=0; /PD_SCK 置低if(ADDO) Count+;ADSK=1;Count=Count0x; /第25個(gè)脈沖下降沿來時(shí),轉(zhuǎn)換數(shù)據(jù)ADSK=0;return(Count);二、鍵盤代碼#include#include lcd1602.h#include key.huchar num,s = 5;uchar price = 0;uchar code table1 = ;str2 = Price: ;uchar code str3 = T
19、otal: ;void display_cost(uchar price) /顯示單項(xiàng)稱量?jī)r(jià)格uchar w5,i = 5;w0 = price/10000;w1 = price%10000/1000;w2 = price%1000/100;w3 = price%100/10;w4 = price%10;while(i != 10)DisplayOneChar(i,1,wi-5);i+;/*鍵盤掃描子程序*/void temer1() interrupt 3void keyscan(void)uchar temp;P1 = 0XFE;temp = P1;temp = temp&0xf0;if(
20、temp != 0xf0)delay(5);temp = P1;temp = temp&0xf0;while(temp != 0xf0)temp = P1;switch(temp)case 0xbe:num=1;s+;break;case 0xde:num=2;s+;break;case 0xee:num=3;s+;break; /case 0x7e:num=4;k=/;s+;break;while(temp!=0xf0)temp=P1;temp=temp&0xf0;price = price*10+num;DisplayOneChar(s,1,table1num);P1 = 0XFd;tem
21、p = P1;temp = temp&0xf0;if(temp != 0xf0)delay(5);temp = P1;temp = temp&0xf0;while(temp != 0xf0)temp = P1;switch(temp) case 0xbd:num=4;s+;break;case 0xdd:num=5;s+;break;case 0xed:num=6;s+;break; /case 0x7d:num=8;k=*;s+;break;while(temp!=0xf0)temp=P1;temp=temp&0xf0;price = price*10+num;DisplayOneChar(
22、s,1,table1num);P1 = 0XFb;temp = P1;temp = temp&0xf0;if(temp != 0xf0)delay(5);temp = P1;temp = temp&0xf0;while(temp != 0xf0)temp = P1;switch(temp)case 0xbb:num=7;s+;break;case 0xdb:num=8;s+;break;case 0xeb:num=9;s+;break; /case 0x7b:num=12;k=-;s+;break;while(temp!=0xf0)temp=P1;temp=temp&0xf0;DisplayO
23、neChar(s,1,table1num);P1 = 0XF7;temp = P1;temp = temp&0xf0;if(temp != 0xf0)delay(5);temp = P1;temp = temp&0xf0;while(temp != 0xf0)temp = P1;switch(temp)case 0xb7:num=-;s+;break;case 0xd7:num=0;s+;break;case 0xe7:num=;s+;break; /case 0x77:num=16;k=+;s+;break;while(temp!=0xf0)temp=P1;temp=temp&0xf0;if
24、(num = 0)price = price*10+num;DisplayOneChar(s,1,table1num);else if(num = -)s = 5;price = 0;DisplayListChar(0, 1, 16,str2);elseDisplayListChar(0, 1, 16,str3);display_cost(price);三、LCD1602#include#include#include lcd1602.hsbit rs = P20;sbit LCM_RW = P21;sbit lcden = P22;/*延時(shí)程序K*1ms,12000mhz*/void del
25、ay(uint k)uint i,j;for(i = 0; i k; i+) for(j = 0; j 100; j+);/*寫指令到LCM子函數(shù)*/void WriteCommandLCM(uchar com)P0=com;rs=0;lcden=0;delay(1);lcden=1;delay(1);lcden=0;/*寫數(shù)據(jù)到LCM子函數(shù)*/void WriteDataLCM(uchar date)P0=date;rs=1;lcden=0;delay(1);lcden=1;delay(1);lcden=0;/*LCM初始化子函數(shù)*/void initLCM()WriteCommandLCM
26、(0x38);delay(10);WriteCommandLCM(0x0f);delay(10);WriteCommandLCM(0x06);delay(10);WriteCommandLCM(0x01);delay(10);/*顯示指定坐標(biāo)的一個(gè)字符子函數(shù)*/void DisplayOneChar(uchar X, uchar Y, uchar DData)Y &= 0x01;X &= 0x0f;if(Y)X |= 0x40; /若y為1(顯示第二行),地址碼加0x40X |= 0x80; /指令碼為地址碼+0x80WriteCommandLCM(X);WriteDataLCM(DData)
27、;/*顯示指定坐標(biāo)的一串字符子函數(shù)*/void DisplayListChar(uchar X, uchar Y, uchar length,uchar code *DData)uchar ListLength = 0;Y &= 0x01;X &= 0x0f;while(X length)DisplayOneChar(X,Y,DDataListLength);ListLength+;X+;四、主函數(shù)#include#include#include#include#include lcd1602.h#include hx711.hsbit speaker = P27;sbit qupi = P3
28、7;sbit qingling = P36;int weight;uchar num,s = 5;ulong ad_data = 0;ulong cost = 0,total = 0;ulong price = 0;uchar flag_ok = 0; /ok鍵的按鍵次數(shù)uchar pi = 0;uchar flag_dian = 0,dian = 1; /小數(shù)點(diǎn)的位數(shù),和小數(shù)點(diǎn)標(biāo)志uchar flag_dian_all = 0;uchar dian_max = 1; /最大的點(diǎn)的位數(shù)uchar flag_jian = 0;uchar cha=0,flag_jia=0,flag_jian;uc
29、har code str0 = Weight: g ;uchar code str1 = cost: ;uchar code str2 = Price: ;uchar code str3 = Total: ;uchar code table1 = ;void alarm(void);void keyscan(void); /鍵盤掃描函數(shù)void display_cost(ulong price) /顯示單項(xiàng)稱量?jī)r(jià)格uchar w5,i,j,wei;w0 = price/10000;w1 = price%10000/1000;w2 = price%1000/100;w3 = price%100/
30、10;w4 = price%10;if(flag_ok = 1)wei = 5; i = 5;/if(flag_dian = 1)/j = 11;/else/j = 10;while(wei != 11)/if(flag_dian=1&wei = 10-dian)if(wei = 10-dian)DisplayOneChar(wei,1,.);else DisplayOneChar(wei,1,table1wi-5);i+;wei+;elsewei = 6; i = 6;/if(flag_dian_all=1)/j = 12;/else/j = 11;while(wei != 12)/if(f
31、lag_dian_all=1&wei = 11-dian_max)if(wei = 11-dian_max)DisplayOneChar(wei,1,.);else DisplayOneChar(wei,1,table1wi-6);i+;wei+;void ad_change(ulong price)uchar w5,i;uchar ge,bai,shi,qian;int aver = 0;double z = 0;w0 = price/;w1 = price%/;w2 = price%/;w3 = price%/10000;w4 = price%10000/1000;/DisplayOneC
32、har(0,1,table1w0);/DisplayOneChar(1,1,table1w1);/DisplayOneChar(2,1,table1w2);/DisplayOneChar(3,1,table1w3);/DisplayOneChar(4,1,table1w4);for(i = 0; i 8700)weight = (1079.6-0.1177*z)*10.0;else if(z 8290)weight = (1087.5-0.1186*z)*10.0; else if(z 7850)weight = (1077-0.1174*z)*10.0; else if(z 7410)wei
33、ght = (1068.3-0.1163*z)*10.0; else if(z 7000)weight = (1080.8-0.1179*z)*10.0;else if(z 6590)weight = (1086.1-0.1187*z)*10.0; else if(z 6170)weight = (1100.4-0.1209*z)*10.0; else if(z 5730)weight = (1080.8-0.1177*z)*10.0;else if(z 5330)weight = (1114.9-0.1238*z)*10.0;elseweight = (1114-0.1236*z)*10.0
34、; aver += weight;weight = aver/3;/if(weight 0)/cha = -weight;/flag_jia = 1;/flag_jian = 0;/weight = 0;/else if(weight 5500)speaker = 0; /則啟動(dòng)報(bào)警elsespeaker = 1;/*鍵盤掃描子程序*/void temer1() interrupt 3void keyscan(void)uchar temp;P1 = 0XFE;temp = P1;temp = temp&0xf0;if(temp != 0xf0)delay(5);temp = P1;temp
35、= temp&0xf0;while(temp != 0xf0)temp = P1;switch(temp)case 0xbe:num=1;s+;break;case 0xde:num=2;s+;break;case 0xee:num=3;s+;break; /case 0x7e:num=4;k=/;s+;break;while(temp!=0xf0)temp=P1;temp=temp&0xf0;if(flag_jian = 0)if(flag_dian = 1)dian+;price = price*10+num;DisplayOneChar(s,1,table1num);P1 = 0XFd;
36、temp = P1;temp = temp&0xf0;if(temp != 0xf0)delay(5);temp = P1;temp = temp&0xf0;while(temp != 0xf0)temp = P1;switch(temp) case 0xbd:num=4;s+;break;case 0xdd:num=5;s+;break;case 0xed:num=6;s+;break; /case 0x7d:num=8;k=*;s+;break;while(temp!=0xf0)temp=P1;temp=temp&0xf0;if(flag_jian = 0)if(flag_dian = 1)dian+;price = price*10+num;DisplayOneChar(s,1,table1num);P1 = 0XFb;temp = P1;temp = temp&0xf0;if(temp != 0xf0)delay(5);temp = P1;temp = temp&0xf0;while(temp != 0xf0)temp = P1;switch(temp)case 0xbb:num=7;s+;break;case 0xdb:
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度城市基礎(chǔ)設(shè)施建設(shè)債權(quán)轉(zhuǎn)讓與融資合同
- 2025年度商鋪轉(zhuǎn)讓三方合同附帶品牌授權(quán)與培訓(xùn)支持
- 2025年度石料場(chǎng)生產(chǎn)承包環(huán)境保護(hù)與修復(fù)責(zé)任合同
- 2025年度教育培訓(xùn)機(jī)構(gòu)兼職正式聘用教學(xué)合同
- 2025年度購(gòu)房合同解除補(bǔ)償協(xié)議范文
- 2025年度農(nóng)村出租房租賃與農(nóng)村養(yǎng)老服務(wù)業(yè)合作合同
- 二零二五年度股權(quán)代持協(xié)議書:文化娛樂股權(quán)代持與IP開發(fā)合作合同
- 2025年旅游行業(yè)現(xiàn)狀分析:國(guó)內(nèi)旅游人次預(yù)計(jì)達(dá)到63億
- 2024-2025學(xué)年北京市二中高三上學(xué)期期中調(diào)研生物試卷
- 2025年吉林省吉林市單招職業(yè)適應(yīng)性測(cè)試題庫(kù)匯編
- 2024年青島港灣職業(yè)技術(shù)學(xué)院高職單招數(shù)學(xué)歷年參考題庫(kù)含答案解析
- 《信息技術(shù)(拓展模塊)》高職全套教學(xué)課件
- 環(huán)保行業(yè)環(huán)保管理制度環(huán)保責(zé)任落實(shí)制度
- 2025年山東菏投建設(shè)集團(tuán)招聘筆試參考題庫(kù)含答案解析
- 市政質(zhì)量員繼續(xù)教育考試題庫(kù)集(含答案)
- 售后工程師述職報(bào)告
- 《公司法完整版》課件2024
- 2024年下半年信息系統(tǒng)項(xiàng)目管理師真題及答案
- ??低曤娏π袠I(yè)系統(tǒng)解決方案
- 2024-2030年中國(guó)街舞培訓(xùn)行業(yè)發(fā)展趨勢(shì)及競(jìng)爭(zhēng)格局分析報(bào)告
- 期末練習(xí)卷(模擬試題)-2024-2025學(xué)年 一年級(jí)上冊(cè)數(shù)學(xué)人教版
評(píng)論
0/150
提交評(píng)論