基于MSP430F149電子秤設(shè)計論文_附電路圖_第1頁
基于MSP430F149電子秤設(shè)計論文_附電路圖_第2頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、附錄 1 電路原理圖12+111E00Pl1 EE 寸WDT1GIBIHi AlEPS14Ttiln:P210101?0鯊K krB-TOrAiUafEMtFHit.w;V-SS5#define LCD RS HP3OUT|=BIT0/P3.0瘞睞櫪廡賴。程序功能:在 12864 液晶上顯示重量聞創(chuàng)溝燴鐺險愛氌譴凈。-殘騖樓諍錈瀨濟溆塹籟。測試說明:觀察液晶顯示鎮(zhèn)檜豬訣錐。#i nclude typedef un sig ned char uchar;typedef unsigned int uint;exter n const un sig ned char shuzi_table;floa

2、t e;uchar key_Pressed;/按鍵是否被按下:1-是,0-否uchar key_val;/ 存放鍵值uchar key_Flag;/按鍵是否已放開:1-是,0-否/*設(shè)置鍵盤邏輯鍵值與程序計算鍵值的映射*/uchar key_M ap = 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15彈單貿(mào)攝爾霽斃攬磚鹵廡。#define LCD_Datal nP4DIR=0 x00數(shù)據(jù)口方向設(shè)置為輸入#define LCD_DataOutP4DIR=0 xff數(shù)據(jù)口方向設(shè)置為輸出#defi ne LCD2MCU_Data P4IN#defi ne MCU2LCD_

3、Data P4OUT#define LCD_CMDOut P3DIR|=0 x07P3 口的低三位設(shè)置為輸出謀蕎摶篋飆鐸懟類蔣薔。附錄 2 程序矚慫潤厲釤釅錒極額閉全局變量寫入內(nèi)容待顯示內(nèi)容*/const uchar hang1 = 小小蘇電子稱系統(tǒng) ; const uchar hang2 = 凈重 :g ;const uchar hang3 = 總價 :元;const uchar hang4 = 單價/Kg;const uchar hang5 = 蘿卜;const uchar hang6 = 豆角;廈礴懇蹣駢時盡繼價騷。const uchar hang7 = 土豆;const uchar h

4、ang8 = 白菜;煢楨廣鰳鯡選塊網(wǎng)羈淚。const uchar hang9 = 蘋果;const uchar hang10 = 香蕉;鵝婭盡損鶴慘歷蘢鴛 賴。const uchar hang11 = 橘子;const uchar hang12 = 桃子;籟叢媽羥為贍債蟶練 淨(jìng)。const uchar hang13 = 豬肉;const uchar hang14 = 羊肉;預(yù)頌圣鉉儐歲齦訝驊 糴。const uchar hang15 = 牛肉;const uchar hang16 = 雞肉;滲釤嗆儼勻諤鱉調(diào)硯 錦。const uchar hang17 = 山藥;const uchar hang

5、18 = 生姜;鐃誅臥瀉噦圣騁貺頂const uchar hang19 = 木耳 ;函數(shù)名稱: Init_Keypad 功 能:初始化掃描鍵盤的 IO 端口#define LCD_RS_L#define LCD_RW_H#define LCD_RW_L#define LCD_EN_H#define LCD_EN_LP3OUT&=BIT0/P3.0P3OUT|=BIT1/P3.1P3OUT&=BIT1/P3.1P3OUT|=BIT2/P3.2P3OUT&=BIT2/P3.2參 數(shù):無 返回值 :無*/void Init_Keypad(void)P1DIR = 0 xf0;

6、 狀態(tài)擁締鳳襪備訊顎輪爛薔。P1OUT |= 0 xf0;key_Flag = 0;key_Pressed = 0;key_val = 5;P1.0P1.3 設(shè)置為輸入狀態(tài),P1.4P1.7 設(shè)置為輸出/ P1.4P1.7 輸出低電平/* 函數(shù)名稱: Check_Key功 能:掃描鍵盤的 IO 端口,獲得鍵值參 數(shù):無返回值 :無*/ voidCheck_Key(void)uchar row ,col,tmp1,tmp2;tmp1 = 0 x80;for(row = 0;row =1;if (P1IN & 0 x0f) 0 x0f)/是否 P1IN 的 P1.0P1.3 中有位為 0壇

7、摶鄉(xiāng)囂懺蔞鍥鈴氈淚。 tmp2 = 0 x01; / tmp2 用于檢測出那一 位為 0蠟變黲癟報倀鉉錨鈰贅。for(col = 0;col 4;col+) / 列檢測 if(P1IN & tmp2) = 0 x00) / 是否是該列 , 等于 0 為是買鯛鴯譖曇膚遙閆擷凄。 key_val = key_Maprow * 4 + col; / 獲取鍵值 return;/ 退出循環(huán)tmp2 0;tmp-);/*函數(shù)名稱: Key_Event功 能:檢測按鍵,并獲取鍵值參 數(shù):無返回值 :無*void Key_Event(void)uchar tmp;功 能:延時約 1ms 的時間 參 數(shù)

8、:無 返回值 :無*/ void Delay_1ms(void)uchar i;for(i = 150;i 0;i-) _NOP();/* 函數(shù)名稱: Delay_Nms 功能:延時 N 個 1ms 的時間參數(shù): n- 延時長度返回值 :無 */ void Delay_Nms(uint n)P1OUT &= 0 x00;/ 設(shè)置 P1 高四位全為 0,等待按鍵輸入tmp = P1IN;/ 獲取 p1INif (key_Pressed = 0 x00)&(tmp & 0 x0f) 0;i-)Delay_1ms();/* 函數(shù)名稱: Write_Cmd 功 能:向液晶中寫控

9、制命令 參數(shù): cmd- 控制命令返回值 :無 */ void Write_Cmd(uchar cmd)uchar lcdtemp = 0;LCD_RS_L;LCD_RW_H;LCD_DataIn;do/判忙 LCD_EN_H;_NOP();lcdtemp = LCD2MCU_Data;LCD_EN_L;while(lcdtemp & 0 x80);LCD_DataOut;LCD_RW_L;MCU2LCD_Data = cmd;LCD_EN_H;_NOP();LCD_EN_L;/*函數(shù)名稱: Write_Data功 能:向液晶中寫顯示數(shù)據(jù)參數(shù): dat-顯示數(shù)據(jù)返回值 :無*void

10、Write_Data(uchar dat)uchar lcdtemp = 0;LCD_RS_L;LCD_RW_H;LCD_DataIn;/判忙LCD_EN_H;*/do_NOP();lcdtemp = LCD2MCU_Data;LCD_EN_L;while(lcdtemp & 0 x80);LCD_DataOut;LCD_RS_H;LCD_RW_L;MCU2LCD_Data = dat;LCD_EN_H;_NOP();LCD_EN_L;/*函數(shù)名稱: Ini_Lcd功 能:初始化液晶模塊參 數(shù):無返回值 :無*/void Ini_Lcd(void)LCD_CMDOut;/液晶控制端口設(shè)

11、置為輸出Delay_Nms(500);Write_Cmd(0 x30); / 基本指令集Delay_1ms();Write_Cmd(0 x02);/ 地址歸位函數(shù)名稱: Disp_HZ能:控制液晶顯示漢字 數(shù): addr-顯示位置的首地址pt-指向顯示數(shù)據(jù)的指針 num-顯示字符個數(shù)返回值 :無*/void Disp_HZ(uchar addr,c onst uchar * pt,uchar num貓蠆驢繪燈鮒誅髏貺廡。uchar i;Write_Cmd(addr); for(i = 0;i num;i+) Write_Data(*(pt+);/* 函數(shù)名稱: Disp_WEI 功 能:控制液

12、晶顯示漢字Delay_1ms();Write_Cmd(0 x0c);/ 整體顯示打開 ,游標(biāo)關(guān)閉Delay_1ms();Write_Cmd(0 x01);/清除顯示Delay_1ms();Write_Cmd(0 x06);/游標(biāo)右移Delay_1ms();Write_Cmd(0 x80);/設(shè)定顯示的起始地址數(shù): addr-顯示位置的首地址pt-指向顯示數(shù)據(jù)的指針num-顯示字符個數(shù)返回值 :無*/ void Disp_WEI(uchar addr,int c,char num)uchar i;Write_Cmd(addr); for(i = 0;i 400)a=g/1000;b=g%1000/100;c=g%1000%100/10;d=g%1000%100%10;elseaHbHCHdHO八yHO八Wmelcmd(ox93)八vwi(DIDaQ)(a+0 x30)vwi(DIDaQ)(a+0 x30)八vwi(DIDaQ)(b+0 x30)vwi(DIDaQ)(b+0 x30)毎BasaBasa冒醐羸wowmelDaQr(c+0 x30)八wmelDaQr(d+0 x30)八De-aylNms(200)八wmelcmd(0 x8bxwmelDaQr(yM0000

溫馨提示

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

評論

0/150

提交評論