基于51單片機(jī)的電子計(jì)算器_第1頁
基于51單片機(jī)的電子計(jì)算器_第2頁
基于51單片機(jī)的電子計(jì)算器_第3頁
基于51單片機(jī)的電子計(jì)算器_第4頁
基于51單片機(jī)的電子計(jì)算器_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、22 *首屆電子創(chuàng)意設(shè)計(jì)競(jìng)賽 *大學(xué)首屆電子創(chuàng)意設(shè)計(jì)競(jìng)賽技術(shù)報(bào)告 項(xiàng)目名稱:基于51單片機(jī)的簡(jiǎn)易計(jì)算器項(xiàng)目負(fù)責(zé)人:_學(xué)院:電子信息工程學(xué)院專業(yè):通信工程班級(jí):2012級(jí)2班聯(lián)系電話:*技術(shù)指導(dǎo):*電子郵件:*項(xiàng)目起止時(shí)間:2013年3月-5月電子信息工程學(xué)院“第二課”科創(chuàng)工作室2012年5月17日項(xiàng)目人員負(fù)責(zé)名稱基于51單片機(jī)的交通燈控制系統(tǒng) 姓名所在學(xué)院、專業(yè) 學(xué)號(hào)項(xiàng)目中 分工負(fù)責(zé)人*電信學(xué)院通信專業(yè)xxxxx 軟件 成員*電信學(xué)院通信專業(yè)xxxxx 軟件、硬件*電信學(xué)院通信專業(yè)xxxxx軟件、硬件摘要近幾年單片機(jī)技術(shù)的發(fā)展很快,其中,電子產(chǎn)品的更新速度迅猛。計(jì)算器是日常生活中比較常見的電子

2、產(chǎn)品之一。如何才能使計(jì)算器技術(shù)更加的成熟,充分利用已有的硬件和軟件條件,設(shè)計(jì)出更出色的計(jì)算器。 本設(shè)計(jì)是以STC89C52單片機(jī)為核心的計(jì)算器模擬系統(tǒng)設(shè)計(jì),輸入采用4*4矩陣鍵盤,可以進(jìn)行加、減、乘、除帶符號(hào)數(shù)字運(yùn)算(六位整數(shù)、兩位小數(shù)),并在液晶顯示屏LCD1602上靜態(tài)顯示操作過程及結(jié)果。對(duì)字符液晶顯示模塊的工作原理,如初始化、清屏、顯示、調(diào)用及外特性有較清楚的認(rèn)識(shí),并會(huì)使用LCD(液晶顯示模塊)實(shí)現(xiàn)計(jì)算結(jié)果的顯示;掌握液晶顯示模塊的驅(qū)動(dòng)和編程,設(shè)計(jì)LCD和單片機(jī)的接口電路,以及利用單片機(jī)對(duì)液晶顯示模塊的驅(qū)動(dòng)和操作;在充分分析內(nèi)部邏輯的概念,進(jìn)行軟件和調(diào)試,學(xué)會(huì)使用,并能夠以其為平臺(tái)設(shè)計(jì)出

3、具有四則運(yùn)算能力簡(jiǎn)易計(jì)算器的硬件電路和軟件程序。關(guān)鍵詞: 單片機(jī); 液晶顯示屏; 計(jì)算器; 矩陣鍵盤引言現(xiàn)如今,人們的日常生活中已經(jīng)離不開計(jì)算器了,社會(huì)的各個(gè)角落都有它的身影,比如商店、辦公室、學(xué)校因此設(shè)計(jì)一款簡(jiǎn)單實(shí)用的計(jì)算器會(huì)有很大的實(shí)際意義。本設(shè)計(jì)旨在進(jìn)一步掌握單片機(jī)理論知識(shí),理解單片機(jī)系統(tǒng)的硬軟件設(shè)計(jì),加強(qiáng)對(duì)實(shí)際應(yīng)用系統(tǒng)設(shè)計(jì)的能力。通過本設(shè)計(jì)的學(xué)習(xí),使我掌握單片機(jī)程序設(shè)計(jì)的基本方法,并能綜合運(yùn)用本科階段所學(xué)軟、硬件知識(shí)分析實(shí)際問題,提高解決畢業(yè)設(shè)計(jì)實(shí)際問題的能力,為單片機(jī)應(yīng)用和開發(fā)打下良好的基礎(chǔ)。一、項(xiàng)目總體設(shè)計(jì)框架1、芯片STC89C52單片機(jī)是單片微型機(jī)的簡(jiǎn)稱,故又稱為微控制器MCU

4、(Micro Control Unit)。通常由單塊集成電路芯片組成,內(nèi)部包含有計(jì)算機(jī)的基本功能部件:中央處理器CPU,存儲(chǔ)器和I/O接口電路等。因此,單片機(jī)只要和適當(dāng)?shù)能浖巴獠吭O(shè)備相結(jié)合,便可成為一個(gè)單片機(jī)控制系統(tǒng)。單片機(jī)廣泛應(yīng)用于智能產(chǎn)品,智能儀表,測(cè)控技術(shù),智能接口等,具有操作簡(jiǎn)單、實(shí)用方便、價(jià)格便宜等優(yōu)點(diǎn)。而其中STC89C52是一種帶8K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器(FPEROM-Flash Programable and Erasable Read Only Memory)的低電壓,高性能COMOS8的微處理器。該器件與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容;且是單片機(jī)中

5、最典型的代表,應(yīng)用于各種控制領(lǐng)域。2、輸入模塊采用矩陣式鍵盤作為輸入模塊矩陣式按鍵輸入模塊,其特點(diǎn)是:電路和軟件稍復(fù)雜,但相比之下,當(dāng)鍵數(shù)越多時(shí),越節(jié)約I/O口,比較節(jié)省資源。其原理圖如圖所示。圖 矩陣鍵盤輸入3、顯示模塊采用LED數(shù)碼管的靜態(tài)顯示,其特點(diǎn)是:其亮度較高;這種顯示方式接口,編程容易且管理簡(jiǎn)單;不足的是,占用的I/O的線資源較多。如果采用單片機(jī)或CPLD/FPGA來控制的話,勢(shì)必存在浪費(fèi)I/O口資源的問題。采用LED數(shù)碼管的動(dòng)態(tài)顯示,其特點(diǎn)是:其亮度比靜態(tài)顯示的亮度要差一些;但其電路比較簡(jiǎn)單,適合于顯示位數(shù)較多的情況。采用LCD1602液晶顯示,其特點(diǎn)是:可以調(diào)節(jié)其背光亮度,這種

6、顯示方式接口,編程雖然有些麻煩,但管理較方便,占用的I/O口資源線也不多。在計(jì)算器運(yùn)算中,需顯示的數(shù)字、符號(hào)較多,按很據(jù)個(gè)方面的特點(diǎn),而后可以發(fā)現(xiàn)LCD液晶顯示,雖然在價(jià)格上的確是稍貴于LED數(shù)碼管;但數(shù)碼管在硬件設(shè)計(jì)電路中,會(huì)因線太多、線路復(fù)雜而過于繁瑣,則舍棄LED數(shù)碼管,選擇LCD液晶顯示。4、硬件資源分配主要用到的硬件:?jiǎn)纹瑱C(jī)STC89C52 、液晶顯示屏LCD1602 、4*4按鍵鍵盤硬件分配:1、P1口:作為輸入口,與鍵盤連接,實(shí)現(xiàn)數(shù)據(jù)的輸入;2、P0、P2口:作為輸出口(P2口為高位,P0口為低位),控制LCD液晶顯示屏顯示數(shù)據(jù)的結(jié)果;3、液晶顯示屏LCD1602顯示輸出。二、計(jì)

7、算器硬件設(shè)計(jì)1、系統(tǒng)組成及硬件框圖 單 片 機(jī) 顯示模塊鍵盤輸入模塊蜂鳴器電路圖2-1-1 系統(tǒng)組成及硬件框圖2、元器件簡(jiǎn)介2.1 STC89C52特點(diǎn)圖 2-2-1 單片機(jī)STC89C521,、主要性能:與MCS-51單片機(jī)產(chǎn)品兼容;8K字節(jié)在系統(tǒng)可編程Flash存儲(chǔ)器;1000次擦寫周期;全靜態(tài)操作:0Hz-33Hz;三級(jí)加密程序存儲(chǔ)器;32個(gè)可編程I/O口線、三個(gè)16位定時(shí)器/計(jì)數(shù)器、8個(gè)中斷源;全雙工UART串行通信;低功耗空閑和掉電模式,掉電后中斷可喚醒;看門狗定時(shí)器;雙數(shù)據(jù)指針;掉電標(biāo)識(shí)符。2、STC89C52的功能特性概述STC89C52是一種低功耗、高性能CMOS 8位微控制器

8、,具有8K在系統(tǒng)可編程Flash存儲(chǔ)器。使用高密度非易失性存儲(chǔ)器技術(shù)制造,與工業(yè)80C51產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適于常規(guī)編程器。2.2 LCD1602液晶顯示屏1、 液晶顯示原理液晶顯示的原理是利用液晶的物理特性,通過電壓對(duì)其顯示區(qū)域進(jìn)行控制,有電就有顯示,這樣即可以顯示出圖形。液晶顯示器有厚度薄、適用于大規(guī)模集成電路直接驅(qū)動(dòng)、易于實(shí)現(xiàn)全彩色顯示的特點(diǎn),目前已經(jīng)被廣泛應(yīng)用在便攜式計(jì)算機(jī)、數(shù)字?jǐn)z像機(jī)、PDA移動(dòng)通信工具等眾多領(lǐng)域。2、 LCD1602的應(yīng)用簡(jiǎn)介L(zhǎng)CD1602液晶顯示器采用HD44780及其兼容芯片作為點(diǎn)陣式LCD的控制器驅(qū)動(dòng)器,還采用

9、HD44100進(jìn)行LCD的時(shí)分割驅(qū)動(dòng)。HD44780的內(nèi)部結(jié)構(gòu)主要包括顯示數(shù)據(jù)RAM(DDRAM)、字符發(fā)生器ROM(CGROM)、字符發(fā)生器RAM(CGRAM)、指令寄存器IR、數(shù)據(jù)寄存器DR、地址計(jì)數(shù)器AC(Address Counter)和忙標(biāo)志BF(Busy Flag)等邏輯電路。1602液晶模塊內(nèi)部的控制器共有11條控制指令,豐富的指令可以完成液晶的時(shí)序控制、工作方式設(shè)置和數(shù)據(jù)顯示等。采用的LCD1602液晶模塊是標(biāo)準(zhǔn)16針插座,接口電路如圖2-2-5所示,及各引腳說明如表2-2-2所示。圖2-2-5 LCD1602的引腳接口電路圖第1腳Vss為地電源第2腳VDD接5V正電源第3腳V

10、o為液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地電源時(shí)對(duì)比度最高,對(duì)比度過高時(shí)會(huì)產(chǎn)生“鬼影”,使用時(shí)可以通過一個(gè)10K的電位器調(diào)整對(duì)比度。第4腳Rs為寄存器選擇,高電平選擇數(shù)據(jù)寄存器、低電平選擇指令寄存器。第5腳Rw為讀寫信號(hào)線,高電平時(shí)進(jìn)行讀操作,低電平時(shí)選擇指令寄存器。第6腳E端為使能端,當(dāng)E端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。第7-14腳D0-D7為8位雙向數(shù)據(jù)線。第15-16腳背光陽極和背光陰極。表 2-2-2 LCD1602的引腳說明3、 其他方面簡(jiǎn)介DDRAM用來暫存顯示字符的代碼,共80個(gè)字節(jié),DDRAM的各個(gè)單元對(duì)應(yīng)著顯示屏上的各個(gè)字符位,如圖2-2-6所示。因此

11、,DDRAM的地址也就意味著顯示字符的地址,顯示字符時(shí)首先要向LCD送顯示字符地址。LCD16字*2行000102030405060708090A0B0C0DOEOF1027404142434445464748494A4B4C4D4E4F5067圖 2-2-6 DDRAM單元地址與顯示屏字符位的對(duì)應(yīng)關(guān)系 三、系統(tǒng)的硬件設(shè)計(jì)為了更好地實(shí)現(xiàn)系統(tǒng)的功能,硬件電路的設(shè)計(jì)應(yīng)該遵循以下原則:1、 優(yōu)化硬件電路采用軟件設(shè)計(jì)與硬件設(shè)計(jì)相結(jié)合的方法。盡管采用軟件來實(shí)現(xiàn)硬件系統(tǒng)的功能時(shí),也許響應(yīng)的時(shí)間會(huì)比單純使用硬件時(shí)長(zhǎng),而且還要占用微處理器(MCU)的時(shí)間;但是,用軟件實(shí)現(xiàn)硬件的功能可以簡(jiǎn)化硬件結(jié)構(gòu),提高電路的

12、可靠性。所以,在設(shè)計(jì)本系統(tǒng)的時(shí)候,在滿足可靠性和實(shí)時(shí)性的前提下,盡可能地通過軟件來實(shí)現(xiàn)硬件功能。2、 可靠性及抗干擾設(shè)計(jì)根據(jù)可靠性設(shè)計(jì)理論,系統(tǒng)所用芯片數(shù)量越少,系統(tǒng)的平均無故障時(shí)間越長(zhǎng)。而且,所用芯片數(shù)量越少,地址和數(shù)據(jù)總線在電路板上受干擾的可能性也就越小。因此,系統(tǒng)的設(shè)計(jì)思想是在滿足功能的情況下爭(zhēng)取較少數(shù)量的芯片。3、 靈活的功能擴(kuò)展功能擴(kuò)展是否靈活是衡量一個(gè)系統(tǒng)優(yōu)劣的重要指標(biāo)。一次設(shè)計(jì)往往不能完全考慮到系統(tǒng)的各個(gè)方面,系統(tǒng)需要不斷完善以及進(jìn)行功能升級(jí)。進(jìn)行功能擴(kuò)展時(shí),應(yīng)該在原有設(shè)計(jì)的基礎(chǔ)上,通過修改軟件程序和少量硬件完成。對(duì)于本系統(tǒng)而言,就是要求在系統(tǒng)硬件不變的情況下,能夠通過修改軟件程

13、序,完成功能的升級(jí)和擴(kuò)展。根據(jù)提出的系統(tǒng)設(shè)計(jì)方案,結(jié)合以上三條原則,確定了系統(tǒng)硬件的設(shè)計(jì)。計(jì)算器主要由以下一些功能模塊組成:非編碼鍵盤模塊、運(yùn)算模塊(單片機(jī)內(nèi)部)、LCD液晶顯示模塊等。該系統(tǒng)的硬件設(shè)計(jì)采用了模塊化的設(shè)計(jì)方法。STC89C52單片機(jī)與LCD液晶顯示屏顯示電路是整個(gè)電路的核心,它們能實(shí)現(xiàn)系統(tǒng)的功能要求。簡(jiǎn)易計(jì)算器主要包括:鍵盤電路、運(yùn)算電路、輸出顯示電路。前面說明了該系統(tǒng)的設(shè)計(jì),系統(tǒng)采用了比較簡(jiǎn)單的設(shè)計(jì)方案,所以該系統(tǒng)的硬件設(shè)計(jì)的總外圍電路不會(huì)產(chǎn)生過多的干擾。下面對(duì)系統(tǒng)的外圍電路分別作了說明。鍵盤部分采用4*4按鍵鍵盤,顯示部分采用LCD液晶顯示屏完全能夠很好地實(shí)現(xiàn)顯示方面的要求

14、。4、鍵盤電路的設(shè)計(jì)鍵盤可分為兩類:編碼鍵盤和非編碼鍵盤。編碼鍵盤是較多按鍵(20個(gè)以上)和專用驅(qū)動(dòng)芯片的組合;當(dāng)按下某個(gè)按鍵時(shí),它能夠處理按鍵抖動(dòng)、連擊等問題,直接輸出按鍵的編碼,無需系統(tǒng)軟件干預(yù)。通用計(jì)算機(jī)使用的鍵盤就是編碼鍵盤。在智能儀器中,使用并行接口芯片8279或串行接口HD7279均可以組成編碼鍵盤,同時(shí)還可以兼顧數(shù)碼管的顯示驅(qū)動(dòng),其相關(guān)的接口電路和接口軟件均可在芯片資料中得到。當(dāng)系統(tǒng)功能比較復(fù)雜,按鍵數(shù)量很多時(shí),采用編碼鍵盤可以簡(jiǎn)化軟件設(shè)計(jì)。非編碼鍵盤成本低廉。從成本角度出發(fā),本設(shè)計(jì)選用的是非編碼鍵盤。如圖圖 鍵盤電路5、顯示電路的設(shè)計(jì)當(dāng)系統(tǒng)需要顯示少量數(shù)據(jù)時(shí),采用LCD液晶顯示

15、屏進(jìn)行顯示是一種經(jīng)濟(jì)實(shí)用的方法。P0口作為液晶顯示的數(shù)據(jù)端口,P2.0-P2.2口作為其控制端口,控制LCD液晶顯示屏顯示輸出數(shù)據(jù)。最終顯示電路如圖所示6、其它電路部分四、 計(jì)算器軟件設(shè)計(jì)五、項(xiàng)目總結(jié)與體會(huì)這個(gè)項(xiàng)目的選擇是基于提升自我的目的,在程序設(shè)計(jì)方面有一定的難度。主要是在系統(tǒng)還沒有到設(shè)計(jì)完全的時(shí)候就開始很心急地買元器件及動(dòng)手焊板子。后來發(fā)現(xiàn)與設(shè)計(jì)的要求還有偏差,而后反復(fù)地改了好幾次,浪費(fèi)了大量的時(shí)間和精力。從這次做板子的過程中就發(fā)現(xiàn),雖然制作電路板不是很難,但是馬虎不得。不管你是在量長(zhǎng)度或者是圖線條是有一點(diǎn)疏忽,都可能導(dǎo)致做出的板子有問題不能正常工作。所以我們對(duì)待每一個(gè)部分都必須認(rèn)真,這

16、樣才更能成功。此次的項(xiàng)目是由我們小組共同完成的。其中遇到了許多的問題,例如有些意見不同。但是我們都嘗試著去理解他人的想法,最終得以結(jié)合大家的意見完成項(xiàng)目,也讓我們明白了合作的重要性。六、程序部分/* 簡(jiǎn)易計(jì)算器程序 */ #include<reg52.h> #include<intrins.h> #define uint unsigned int #define uchar unsigned char sbit lcdrs = P23;/定義端口 sbit lcdrw = P24; sbit lcden = P25; sbit sound = P20;uchar cod

17、e table='0','1','2','3','4','5','6','7','8','9', '+','-','*','/','=','.'uchar key,flag1,cal,judge1,judge2;/cal: 計(jì)算calculation flag : 標(biāo)志 flag1用于標(biāo)記按鍵進(jìn)度 /judge1, judge2為兩個(gè)判斷變量

18、 uchar a20,b25;float Answer=0;/* 名稱 : delay()* 功能 : 延時(shí),延時(shí)時(shí)間大概為5US。*/void delay()_nop_();_nop_();_nop_();_nop_();_nop_();void Delay(uint i)uint x,j;for(j=0;j<i;j+)for(x=0;x<=148;x+); void delay1(uchar z) /用于普通延時(shí) uchar x,y; for(x=z;x>0;x-) for(y=110;y>0;y-);/* 名稱 : bit Busy(void)* 功能 : 這個(gè)是

19、一個(gè)讀狀態(tài)函數(shù),讀出函數(shù)是否處在忙狀態(tài)*/bit Busy(void)bit busy_flag = 0;lcdrs = 0;lcdrw = 1;lcden = 1;delay();busy_flag = (bit)(P0 & 0x80);lcden = 0;return busy_flag;/* 名稱 : wcmd(uchar del)* 功能 : 1602命令函數(shù)*/void wcmd(uchar del)while(Busy();lcdrs = 0;lcdrw = 0;lcden = 0;delay();P0 = del;delay();lcden = 1;delay();lcd

20、en = 0;/* 名稱 : wdata(uchar del)* 功能 : 1602寫數(shù)據(jù)函數(shù)*/void wdata(uchar del)while(Busy();lcdrs = 1;lcdrw = 0;lcden = 0;delay();P0 = del; delay();lcden = 1;delay();lcden = 0;/* 名稱 : L1602_init()* 功能 : 1602初始化,請(qǐng)參考1602的資料*/void L1602_init(void)wcmd(0x38);Delay(5);wcmd(0x38);Delay(5);wcmd(0x38);Delay(5);wcmd(

21、0x38);wcmd(0x0d);/*蜂鳴器發(fā)聲函數(shù)*/ void voice() sound=1; delay1(2000); sound=0;/* LCD寫命令函數(shù) */ void write_com(uchar com) lcdrs=0;/寫指令控制端為低 P0=com; delay1(5); lcden=1;/給個(gè)高脈沖結(jié)束 delay1(4); lcden=0;/*寫數(shù)據(jù)函數(shù)*/ void write_data(uchar date) lcdrs=1;/寫數(shù)據(jù)控制端高電平 P0=date; delay1(5); lcden=1;/給個(gè)高脈沖結(jié)束 delay1(5); lcden=0;

22、 /*鍵盤掃描函數(shù) */ void keyscan() uchar temp,xy=0xf7;/xy變量存儲(chǔ)第幾行 uint i; for(i=0;i<4;i+) /行移動(dòng) xy=_crol_(xy,1); /_crol_為左移函數(shù) P1=xy; temp=P1; temp=temp&0x0f; if(temp!=0x0f) delay1(10);/去抖 temp=P1;temp=temp&0x0f;if(temp!=0x0f) temp=P1; voice(); switch(temp)/按鍵定位 case 0xee: key=7; break; case 0xde:

23、key=8; break; case 0xbe: key=9; break; case 0x7e: key=10; break; case 0xed: key=4; break; case 0xdd: key=5; break; case 0xbd: key=6; break; case 0x7d: key=11; break; case 0xeb: key=1; break; case 0xdb: key=2; break; case 0xbb: key=3; break; case 0x7b: key=12; break; case 0xe7: key=0; break; case 0xd

24、7: key=15; break; case 0xb7: key=14; break; case 0x77: key=13; break; while(temp!=0x0f) temp=P1; temp=temp&0x0f; flag1=1; /flag=1標(biāo)志按鍵檢測(cè)完畢 /*計(jì)算結(jié)果并顯示函數(shù)*/ void cal_show() uchar i,j,n; long double s,temp2; long int s1,s2,a1,b1,c1,temp1; a1=b1=1; s1=s2=0; s=0; if(judge2!=0) for(j=0;j<judge1+1;j+)

25、/存放第一操作數(shù) for(i=0;i<judge1-j;i+) /判斷輸入的是幾位數(shù) a1=a1*10; s1=s1+aj*a1; a1=1; for(j=judge1+1;j<judge2+1;j+) /存放第二操作數(shù) for(i=0;i<judge2-j;i+) /判斷是幾位數(shù) b1=b1*10; s2=s2+aj*b1; b1=1; if(cal=10) /判斷是什么運(yùn)算,并執(zhí)行運(yùn)算 s=s1+s2; if(cal=11) s=s1-s2; if(cal=12) s=s1*s2; if(cal=13) s=(s1*0.1)/(s2*0.1);/把s1,s2轉(zhuǎn)化為小數(shù)形式

26、 ? Answer=s; else s=Answer;/下面對(duì)結(jié)果進(jìn)行四舍五入 c1=(long int)(s*1000)%10; if(c1>5 | c1=5) s=s+0.01;/下面對(duì)數(shù)據(jù)進(jìn)行處理 temp1=(long int)(s); /temp1 是答案的整數(shù)部分 temp2=s-temp1;/temp2 是答案的小數(shù)部分 n=0; while(temp1)/整數(shù)部分放入數(shù)組 bn=temp1%10; temp1=temp1/10; n+; bn=temp2*10; /把小數(shù)部分的第一位變成整數(shù)并放進(jìn)數(shù)組 bn+1=(uchar)(temp2*100)%10; /小數(shù)第二位.

27、放進(jìn)數(shù)組 /下面把得到的結(jié)果顯示到液晶上面去 for(i=n;i>0;i-) write_data(tablebi-1);/輸出整數(shù)部分 write_data(table15);/輸出小數(shù)點(diǎn)間隔整數(shù)部分和小數(shù)部分 write_data(tablebn);/小數(shù)點(diǎn)后第一位 write_data(tablebn+1);/小數(shù)點(diǎn)后第二位 /* 名稱 : L1602_string(uchar hang,uchar lie,uchar *p)* 功能 : 1602寫字符串函數(shù)*/ void L1602_string(uchar hang,uchar lie,uchar *p) uchar a,b=0;if(hang = 1) a = 0x80;if(hang = 2) a = 0xc0;a = a + lie - 1;while(1)wcmd(a+);if(*p = '0')|(b=16) break;b+;wdata(*p);p+;/* 名稱 : L1602_char(uchar hang,uchar lie,char sign)* 功能 : 1602寫指令函數(shù)*/ void L1602

溫馨提示

  • 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. 人人文庫(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論