freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

畢業(yè)設(shè)計-基于stc89c52rc單片機的簡易計算器設(shè)計-wenkub

2023-06-16 02:11:02 本頁面
 

【正文】 , E=下降沿脈沖, DB0~ DB7=指令碼 輸出:無 讀數(shù)據(jù) 輸入: RS=H, RW=H, E=H 輸出: DB0~ DB7=數(shù)據(jù) 寫數(shù)據(jù) 輸入: RS=H, RW=L, E=下降沿脈沖, DB0~ DB7=數(shù)據(jù) 輸出:無 、鍵盤設(shè)計方案與選擇 方案一:獨立鍵盤。 2 讀取地址計數(shù)器 (AC)的內(nèi)容。參數(shù)設(shè)定的情況如下: 位名 設(shè)置 DL 0=數(shù)據(jù)總線為 4 位 1=數(shù)據(jù)總線為 8 位 N 0=顯示 1 行 1=顯示 2 行 F 0=57 點陣 /每字符 1=510 點陣 /每字符 CGRAM 地址指令 功能:設(shè)定下一個要存入數(shù)據(jù)的 CGRAM 的地址。 8 3 保持 DDRAM 的內(nèi)容不變 功能:設(shè)定每次定入 1 位數(shù)據(jù)后光標的移位方向,并且設(shè)定每次寫入的一個字符是否移動。 2 光標歸位,即將光標撤回液晶顯示屏的左上方 。目前字符液晶絕大多數(shù)是基于 HD44780液晶芯片的,控制原理是完全相同的,因此基于HD44780寫的控制程序可以很方便地應用于大部分的字符型液晶。顯示直觀的特點。我們采用方案三利用單片機控制器。并且由于其成本低、體積小、技術(shù)成熟和功耗小等優(yōu)點,且技術(shù)比較成熟。 由于單片機集成了運算器電路、控制電路、存儲器、中斷系統(tǒng)、定時器 /計數(shù)器以及輸入 /輸出口電路等,所以用單片機設(shè)計控制電路省去了很多分立元器件。可以實現(xiàn)各種復雜的邏輯功能,規(guī)模大,密度高,采用并行的輸入輸出方式,系統(tǒng)處理速度高,適合作為大規(guī)模實時系統(tǒng)的控制核心。這種設(shè)計方案計算效率高、速度快、而且成本也相對較低,是 廠家做計算器的最佳方案。 5 方案論證與比較 控制部分的設(shè)計方案論證與選擇 根據(jù)設(shè)計要求,控制器主要用于紅外信號的接收和辨認、控制步進電機的動作,控制顯示步進電機的轉(zhuǎn)速等。 ( 4)錯誤提示:當計算器執(zhí)行過程中有錯誤時,會在 LCD上顯示相應的提示 ,如:當輸入的數(shù)值或計算得到的結(jié)果大于計算器的表示范圍時,計算器會在 LCD上提示 overflow;當除數(shù)為 0時,計算器會在 LCD上提示 error。 4 二、設(shè)計方案簡述 功能概述 系統(tǒng)基本功能: ( 1)由于設(shè)計的計算器要進行四則運算,為了得到較好的顯示效果,經(jīng)綜合分析后,最后采用 LCD 顯示數(shù)據(jù)和結(jié)果。所以經(jīng)過初步分析,經(jīng)濟上基本上是可行的 技術(shù)可行性 在技術(shù)方面,因為都學習了 C語言,硬件課程設(shè)計等課程,對于開發(fā)語言 c 語言也有一定的掌控能力,應該能夠完成相應的任務。 運行可行性 該成果簡單易操作,非常容易使用 。 ( 2)采用鍵盤輸入方式,鍵盤包括數(shù)字鍵( 0~ 9)、符號鍵( +、 、247。 擴展功能:加上括號的混合運算 本設(shè)計主要采用以下基本模塊來實現(xiàn) : 控制器模塊,輸入模塊,輸出模塊和電源模塊。對于控制器的選擇有以下三種方案。但是本人對計算器專用芯片掌握的不夠,還不足以實現(xiàn)設(shè)計計算器,所以這個方案不可去。由 FPGA 內(nèi)部編程實現(xiàn)計算器功能,本設(shè)計對數(shù)據(jù)處理速度的要 求不是很高, FPGA 的高速處理的優(yōu)勢得不到充分的體現(xiàn),由于其集成度高,使其成本偏高,同時由于芯片的引腳較多,實物電路板布線復雜,加重了電路設(shè)計和實際焊接的工作。由于單片機是可編程芯片,并且它可以運用 C語言 STC89C52單片機 4*4 鍵盤 LCD 顯示 晶振電路 復位電路 線路原理框圖 6 編寫,對于一些復雜的計算功能,可以調(diào)用 C語言庫函數(shù)。性價比也相當高。 顯示電路的設(shè)計方案論證與選擇 方案一:數(shù)碼管顯示方案。但只能顯示數(shù)字和一些代碼,不能顯示漢字及一些常用的符號,且硬件設(shè)計比較復雜 。 字符型 LCD1602通常有 14條引腳線或 16條引腳線的 LCD,多出來的 2條線是背光電源線 VCC(15腳 )和地線 GND(16腳 ),其控制原理與 14腳的 LCD完全一樣,引腳定義如下表所示: 7 HD44780 內(nèi)置了 DDRAM、 CGROM 和 CGRAM。 3 將地址計數(shù)器 (AC)的值設(shè)為 0。參數(shù)設(shè)定的情況如下所示: 位名 設(shè)置 I/D 0=寫入新數(shù)據(jù)后光標左移 1=寫入新數(shù)據(jù)后光標右移 S 0=寫入新數(shù)據(jù)后顯示屏不移動 1=寫入新數(shù)據(jù)后顯示屏整體右移 1 個字 功能:控制顯示器開 /關(guān)、光標顯示 /關(guān)閉以及光標是否閃爍。 DDRAM 地址指令 功能:設(shè)定下一個要存入數(shù)據(jù)的 CGRAM 的地址。 DDRAM 或 CGRAM 指令一覽 功能: 1 將字符碼寫入 DDRAM,以使液晶顯示屏顯示出相對應的字符 。 獨立鍵盤為一端接地,另一端接 I/O 口,并且要接上拉電阻。現(xiàn)在 PC機廣泛采用的 PS/2 接口為 miniDIN 6 引腳的連接器。 編碼鍵盤的電路如圖所示,這種鍵盤有編程簡單,占用資源少,但其硬件比較復雜,要用很多的二極管,不是很理想 。其電路圖如圖 主體設(shè)計部分 : ( 1)、 系統(tǒng)模塊圖: 13 單片機運算模塊顯示模塊輸入模塊 ( 2)、算術(shù)運算程序流程圖: 14 加開 始判 斷 運 算 符 ?乘 除 減判 斷 結(jié) 果 溢 出 ? 除 數(shù) 為 0 ?錯 誤 信 息 送 顯 示 緩 沖數(shù) 值 送 顯 示 緩 沖YN N Y 15 ( 3)、 系統(tǒng)總流程圖: 開 始初 始 化 參 數(shù)初 始 化 L C D 顯 示本 次 功 能 鍵 ?讀 取 鍵 碼數(shù) 字 鍵 清 零 鍵 功 能 鍵鍵 入 數(shù) 值 狀 態(tài) 清 零根 據(jù) 上 次 功 能 鍵 和 輸 入的 數(shù) 據(jù) 計 算 結(jié) 果結(jié) 果 送 顯 示 緩 沖L C D 顯 示有 否 有 鍵 值 ?數(shù) 值 送 顯 示 緩 沖結(jié) 果 送 顯 示 緩 沖等 待 數(shù) 值 鍵 入 等 待 數(shù) 值 鍵 入結(jié) 果 送 顯 示 緩 沖等 待 數(shù) 值 鍵 入YNYN 16 ( 4)、硬件設(shè)計: (一)、 總體硬件設(shè)計: 本設(shè)計選用 AT89C51 單片機為主控單元; 顯示部分:采用 LCD 靜態(tài)顯示;按鍵部分:采用 4*4 鍵盤;用 MM74C922 為 4*4 鍵盤掃描 IC,讀取輸入的鍵值。幾個毫秒后,單片機進入工作狀態(tài)。 另外 STC89X52 可降至 0Hz 靜態(tài)邏輯操作,支持 2種 軟件 可選擇節(jié)電模式。 18 和 atmel的對比 STC89C52RC單片機 : 8K字節(jié)程序存儲空間; 512字節(jié)數(shù)據(jù)存儲空間; 內(nèi)帶 4K字節(jié) EEPROM存儲空間 。 第 5腳: RW 為讀寫信號線,高電平 (1)時進行讀操作,低電平 (0)時進行寫操作。 15腳背光正極, 16腳背光負極 602LCD 的特性 n+5V 電壓,對比度可調(diào) n 內(nèi)含復位電路 n 提供各種控制命令 ,如:清屏、字符閃爍、光標閃爍、顯示移位等多種功能 n 有 80字節(jié)顯示數(shù)據(jù)存儲器 DDRAM n 內(nèi)建有 192個 5X7點陣的字型的字符發(fā)生器 CGROM n8個可由用戶自定義的 5X7的字符發(fā)生器 CGRAM 讀的時候,先讀左邊那列,再讀上面那行,如:感嘆號!的 ASCII 為 0x21,字母 B 的 ASCII 為 0x42(前面加 0x表示十六進制) 1602通過 D0~D7的 8位數(shù)據(jù)端傳輸數(shù)據(jù)和指令。 (三)、鍵盤接口電路: 20 計算器輸入數(shù)字和其他功能按 鍵要用到很多按鍵,如果采用獨立按鍵的方式,在這種情況下,編程會很簡單,但是會占用大量的 I/O 口資源,因此在很多情況下都不采用這種方式,而是采用矩陣鍵盤的方案。 矩陣鍵盤的工作原理: 計算器的鍵盤布局如圖 1所示:一般有 16個鍵組成,在單片機中正好可以用一個 P口實現(xiàn) 16個按鍵功能,這種形式在單片機系統(tǒng)中也最常 用。如果按功能劃分,它由如下功能部件組成,即微處理器( CPU)、數(shù)據(jù)存儲器( RAM)、程序存儲器( ROM/EPROM)、并行 I/O 口、串行口、定時器 /計數(shù)器、中斷系統(tǒng)及特殊功能寄存器( SFR)。最終成功; 本次設(shè)計不管在軟件,或是在硬件方面都讓我受益匪淺,讓我所學的知識得以應用到實踐,經(jīng)過這次創(chuàng)新性實驗,也令我看到了很多的不足,在實驗中的一些程序不能夠及 時編輯正確,需要很長時間的設(shè)計。 void Delay1(uint x) { uint i,j。j112。 KEYDATA=0xf0。0xf0。 else if(temp==4)key=2。 Delay1(1)。 temp=~(temp|0xf0)。 else if(temp==8)key+=0。 } uchar KeyDown(void) { uchar keyFlag。 Delay1(200)。 return keyFlag。 26 sbit bf=P0^7。i++) for(j=0。 for(i=0。 rs=0。 _nop_()。 e=0。 rw=0。 P0=mand。 e=0。 rw=0。 e=1。 WriteCommand(0x38)。 WriteCommand(0x38)。 WriteCommand(0x01)。 28 WriteCommand(0x0e)。 //存放輸入的表達式 uchar code warn[]={ERROR}。739。139。839。239。939。339。k39。j39。 //操作符 int opt[15]。 uchar pp。//用來記錄是否正常,正常就進行運算,否則停止運算 uchar operate。 sbit m2=P3^6。 uchar WriteData(uchar d)。 uchar KeyScan(void)。i30。 pp=0。 opr[0]=0。 op=0。a39。a39。a39。a39。 WriteCommand(0x0c)。)。)。 } else{ while(numble0) { numx[i]=numble%10。 while(numx[i]!=39。 i。 while(warn[i]!=39。 i++。 case 1:m=opt[iopt]+opt[iopt]。iopt=iopt2。opt[iopt++]=m。 else {iopt=iopt2。 else { if(iopr!=0) { Calculate()。 //用來使遞歸結(jié)束 } else {if(iopr==0) iopr+=1。 32 if(shift!=2) {switch(n) {case 0:if(shift==0)ch=39。break。break。)39。 else ch=39。+39。 default:ch=num[n]。 return ch。 WriteData(num%10+0x30)。39。 WriteData(39。 WriteAddress(0x09)。 33 WriteAddress(0x0a)。 WriteAddress(0x0b)。 WriteNum(Curtime[5],0x0d)。:39。 WriteData(
點擊復制文檔內(nèi)容
畢業(yè)設(shè)計相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1