


下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、WORD格式基于 51 單片機(jī)的簡易計(jì)算器1、前言:本設(shè)計(jì)是基于51 系列單片機(jī)來進(jìn)展的數(shù)字計(jì)算器系統(tǒng)設(shè)計(jì),可以完成計(jì)算器的鍵盤輸入,進(jìn)展加、減、乘、除根本四那么運(yùn)算,并在LCD上顯示相應(yīng)的結(jié)果;設(shè)計(jì)電路采用 STC90C51單片機(jī)為主要控制電路, 利用 MM74C922作為計(jì)專業(yè)資料整理WORD格式算器4*4鍵盤的掃描IC讀取鍵盤上的輸入;顯示采用字符LCD靜態(tài)顯示;軟件專業(yè)資料整理WORD格式方面使用C 語言編程,并用PROTUES仿真。專業(yè)資料整理WORD格式2、設(shè)計(jì)任務(wù):計(jì)算器軟件程序要完成以下模塊的設(shè)計(jì):(1) 鍵盤輸入檢測模塊; 2LCD顯示模塊; 3算術(shù)運(yùn)算模塊; 4錯(cuò)誤處理及提
2、示模塊。3、主體設(shè)計(jì)局部: 1、系統(tǒng)模塊圖:單片機(jī)輸入模塊運(yùn)算模塊顯示模塊 2、系統(tǒng)總流程圖:專業(yè)資料整理WORD格式開場初始化參數(shù)初始化LCD顯示有否有鍵值?NLCD 顯示4、硬件局部Y讀取鍵碼數(shù)字鍵清零鍵功能鍵根據(jù)上次功能鍵和輸入鍵入數(shù)值狀態(tài)清零的數(shù)據(jù)計(jì)算結(jié)果本次功能鍵?YN結(jié)果送顯示緩沖結(jié)果送顯示緩沖等待數(shù)值鍵入等待數(shù)值鍵入結(jié)果送顯示緩沖數(shù)值送顯示緩沖等待數(shù)值鍵入專業(yè)資料整理WORD格式單片機(jī)局部 +矩陣鍵盤 +1602 顯示專業(yè)資料整理WORD格式如下列圖為簡易計(jì)算器的電路原理圖。 P3 口用于鍵盤輸入, 接 4*4 矩陣鍵盤,鍵值與鍵盤的對應(yīng)表如表 - 所示,p0 口和 p2 口用于
3、顯示, p2 口用于顯示數(shù)值的高位, po 口用于顯示數(shù)值的低位。簡易計(jì)算器電路原理圖矩陣鍵盤有 16 個(gè)按鍵,滿足對簡易計(jì)算器的計(jì)算實(shí)現(xiàn),顯示局部采用LCD1602,第一行顯示計(jì)算的數(shù)值符號(hào),第二行顯示計(jì)算結(jié)果。專業(yè)資料整理WORD格式LCD顯示模塊:本設(shè)計(jì)采用 LCD液晶顯示器來顯示輸出數(shù)據(jù)。 通過 D0-D7引腳向 LCD寫指令字或?qū)憯?shù)據(jù)以使LCD實(shí)現(xiàn)不同的功能或顯示相應(yīng)數(shù)據(jù)。5、軟件局部#include<reg52.h>#include<intrins.h>#define uchar unsigned charsbit lcden=P27;專業(yè)資料整理WORD格
4、式sbit lcdrs=P26;專業(yè)資料整理WORD格式sbit lcdrw=P25;sbit lcdbf=P07;uchar temp,key,i,j,flag,fh,k;long a,b,c;uchar code table=1,2,3,0,4,5,6,0,7,8,9,0,0,0,0,0;uchar code table2="123+456-789*000/"void delay(uchar ms)uchar x,y;for(x=ms;x>0;x-)for(y=110;y>0;y-);/*-對 LCD1602的操作 -*/bit busy(void)/判斷忙
5、碌專業(yè)資料整理WORD格式bit res;lcdrs=0;lcdrw=1;lcden=1;_nop_();_nop_();res=lcdbf;lcden=0;return res;專業(yè)資料整理WORD格式void write_inst (uchar cmd)/ 寫命令專業(yè)資料整理WORD格式while(busy()=1); /lcdrs=0;lcdrw=0;lcden=0;_nop_();_nop_();P0=cmd;_nop_();_nop_();lcden=1;_nop_();忙碌就等待專業(yè)資料整理WORD格式_nop_();lcden=0;void write_com(uchar com
6、)/寫地址write_inst(com|0x80);void write_date(uchar dat) /寫數(shù)據(jù)while(busy()=1);lcdrs=1;lcdrw=0;lcden=0;P0=dat;_nop_();_nop_();lcden=1;_nop_();_nop_();lcden=0;專業(yè)資料整理WORD格式專業(yè)資料整理WORD格式void init()/ 初始化lcden=1;write_inst(0x38);/顯示 8 位 2 行delay(5);write_inst(0x0c);/顯示開,光標(biāo)關(guān),不閃爍delay(5);write_inst(0x06);/增量方式不位移
7、delay(5);write_inst(0x80);/檢測忙碌信號(hào)delay(5);write_inst(0x01);/delay(5);/*-鍵盤掃描 -*/void keyscan()/鍵盤掃描P3=0xfe;if(P3!=0xfe)專業(yè)資料整理WORD格式delay(100);專業(yè)資料整理WORD格式if(P3!=0xfe)temp=P3&0xf0;switch(temp)case 0xe0:key=0;break;case 0xd0:key=1;break;case 0xb0:key=2;break;case 0x70:key=3;break;while(P3!=0xfe);i
8、f(key=0|key=1|key=2)if(j!=0)write_inst(0x01);j=0;if(flag=0)a=a*10+tablekey;專業(yè)資料整理WORD格式if(flag=1)b=b*10+tablekey;write_date(table2key);elseif(k=0)flag=1;k=1;fh=1;write_date(table2key);P3=0xfd;if(P3!=0xfd)專業(yè)資料整理WORD格式delay(100);專業(yè)資料整理WORD格式if(P3!=0xfd)temp=P3&0xf0;switch(temp)case 0xe0:key=4;brea
9、k;case 0xd0:key=5;break;case 0xb0:key=6;break;case 0x70:key=7;break;while(P3!=0xfd);if(key=4|key=5|key=6)if(j!=0)write_inst(0x01);j=0;if(flag=0)a=a*10+tablekey;專業(yè)資料整理WORD格式if(flag=1)b=b*10+tablekey;write_date(table2key);elseif(k=0)flag=1;k=1;fh=2;write_date(table2key);P3=0xfb;if(P3!=0xfb)delay(100);
10、if(P3!=0xfb)專業(yè)資料整理WORD格式專業(yè)資料整理WORD格式temp=P3&0xf0;switch(temp)case 0xe0:key=8;break;case 0xd0:key=9;break;case 0xb0:key=10;break;case 0x70:key=11;break;while(P3!=0xfb);if(key=8|key=9|key=10)if(j!=0)write_inst(0x01);j=0;if(flag=0)a=a*10+tablekey;if(flag=1)專業(yè)資料整理WORD格式b=b*10+tablekey;write_date(tab
11、le2key);elseif(k=0)flag=1;k=1;fh=3;write_date(table2key);P3=0xf7;if(P3!=0xf7)delay(100);if(P3!=0xf7)專業(yè)資料整理WORD格式temp=P3&0xf0;專業(yè)資料整理WORD格式switch(temp)case 0xe0:key=12;break;case 0xd0:key=13;break;case 0xb0:key=14;break;case 0x70:key=15;break;while(P3!=0xf7);switch(key)case 12:write_inst(0x01);a=0
12、;b=0;flag=0;fh=0;j=0;k=0;break;case 13:if(flag=0)a=a*10;write_date(0x30);P1=0;else if(flag=1)專業(yè)資料整理WORD格式b=b*10;專業(yè)資料整理WORD格式write_date(0x30); break;case 14:j=1;if(fh=1)write_com(0x4f);write_inst(0x04);c=a+b;while(c!=0)write_date(0x30+c%10);c=c/10;write_date(0x3d);a=0;b=0;flag=0;fh=0;k=0;else if(fh=2
13、)write_com(0x4f);write_inst(0x04);專業(yè)資料整理WORD格式if(a-b)>0)c=a-b;elsec=b-a;if(c=0)write_date(0x30+0);while(c!=0)write_date(0x30+c%10);c=c/10;if(a-b)*(-1)>0)write_date(0x2d);write_date(0x3d);a=0;b=0;flag=0;fh=0;k=0;else if(fh=3)write_com(0x4f);write_inst(0x04);c=a*b;if(c=0)write_date(0x30+0);while
14、(c!=0)專業(yè)資料整理WORD格式write_date(0x30+c%10);c=c/10;write_date(0x3d);a=0;b=0;flag=0;fh=0;k=0;else if(fh=4)write_com(0x4f);write_inst(0x04);i=0;c=(long)(float)a/b)*1000); /計(jì)算 c 的數(shù)據(jù)if(c=0)write_date(0x30+0);while(c!=0)write_date(0x30+c%10);c=c/10;i+;if(i=3)write_date(0x2e); /寫數(shù)據(jù)專業(yè)資料整理WORD格式專業(yè)資料整理WORD格式if(a/b)<=0)write_date(0x30);write_date(0x3d);a=0;b=0;flag=0;fh=0;k=0; break;case 15:if(k=0)write_
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 醫(yī)療大數(shù)轉(zhuǎn)型與公共衛(wèi)生服務(wù)優(yōu)化策略
- 醫(yī)療AI的監(jiān)管框架與數(shù)據(jù)隱私保護(hù)
- 五金建材批發(fā)合同范例
- 買手簽認(rèn)購合同范例
- 區(qū)塊鏈技術(shù)在商業(yè)領(lǐng)域的合規(guī)性及法律環(huán)境分析
- 醫(yī)療信息化的安全管理與保障
- 公眾號(hào)制作服務(wù)合同范例
- 醫(yī)療器械的技術(shù)進(jìn)步與健康產(chǎn)業(yè)發(fā)展
- 幼兒骨干教師培訓(xùn)心得體會(huì)模版
- 醫(yī)療AI在健康教育中的倫理影響
- 2025-2030年中國海洋生物制藥市場競爭格局及發(fā)展機(jī)會(huì)研究報(bào)告
- 2024年安徽安慶安桐城鄉(xiāng)發(fā)展集團(tuán)有限公司招聘真題
- 上海市延安中學(xué)2024-2025學(xué)年高三下學(xué)期4月診斷考試數(shù)學(xué)試題含解析
- 拆除冷庫施工方案
- 2025年九江市第一批面向社會(huì)公開招聘留置看護(hù)隊(duì)員【68人】筆試備考題庫及答案解析
- 2025-2030中國可再生能源行業(yè)發(fā)展分析及投資前景與戰(zhàn)略規(guī)劃研究報(bào)告
- 婚姻調(diào)查合同協(xié)議
- 10.1 美國課件2024-2025學(xué)年度七年級下學(xué)期人教版地理
- 鉚接粘接與錫焊教案
- 受限空間作業(yè)施工方案
- 工業(yè)數(shù)字孿生測試要求
評論
0/150
提交評論