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

正文內(nèi)容

單片機(jī)的簡易計(jì)算器畢業(yè)設(shè)計(jì)-wenkub

2022-12-10 10:26:51 本頁面
 

【正文】 245 是我們常見的芯片,在這里它用來驅(qū)動(dòng) LED,它是 8 路同相三態(tài)雙向總線收發(fā)器,可以雙向傳送數(shù)據(jù)。 (3) EA/Vpp 31 外部訪問允許端。在訪問外部數(shù)據(jù)存儲器時(shí),出現(xiàn)一個(gè) ALE 脈沖。端口置1時(shí),內(nèi)部上拉電阻將端口拉到高電平,作輸入用。對內(nèi)部 Flash 程序存儲器編程時(shí),接收高 8 位地址和控制信息。 通常在使用時(shí)外不需要外接上拉電阻,就可以直接驅(qū)動(dòng)發(fā)光二極管。通常在使用時(shí)外接上拉電阻,用來驅(qū)動(dòng)多個(gè)數(shù)碼管。 8051 的復(fù)位方式可以是自動(dòng)復(fù)位,也可以是手動(dòng)復(fù)位,如圖 36 所示 。常用的復(fù)位電路如下 第 7 頁 圖 35所示。如 AT89C51 24PC 就是最高振蕩頻率為 24MHz,40P6 封裝的普通商用芯片。晶振的頻率可以在 1MHz24MHz 內(nèi)選擇。上圖是它們的引腳配置 :40 個(gè)引腳中,正電源和地線兩根,外置石英振蕩器的時(shí)鐘線兩根, 4 組 8 位共 32個(gè) I/O 口,中斷口線與 P3 口線復(fù)用 ,如圖 33所示: 第 6 頁 圖 33 引腳圖 引腳介紹 電源引腳 Vcc 40 腳 正電源腳,工作電壓為 5V,另有 AT89LV51 工作電壓則是 , 引腳功能一樣。程序流程圖如圖 22所示: 圖 22 程序流程圖 第 4 頁 第三章 硬件模塊介紹 運(yùn)算模塊 MCS51 單片機(jī)是在一塊芯片中集成了 CPU、 RAM、 ROM、定時(shí)器 /計(jì)數(shù)器和多功能I/O等一臺計(jì)算機(jī)所需要的基本功能部件。 ② 另外鍵盤包括數(shù)字鍵( 0~ 9)、符號鍵( +、 、 、 247。設(shè)計(jì)仿真和調(diào)試要用到 Protues 、 Keil等軟件。如果設(shè)計(jì)對象是更為復(fù)雜的計(jì)算器系統(tǒng),其實(shí)際原理與方法與本設(shè)計(jì)基本相同。影響可靠性的因素是多方面的,如構(gòu)成系統(tǒng)的元器件本身 的可靠性、系統(tǒng)本身各部分之間的相互耦合因素等。 關(guān)鍵字 計(jì)算 器 數(shù)碼管 74LS245 第 1 頁 第一章 緒 論 隨著社會的發(fā)展,科學(xué)的進(jìn)步,人們的生活水平在逐步的提高,尤其是微電子技術(shù)的發(fā)展,猶如雨后春筍般的變化。可是它還在發(fā)展之中,以后必將出現(xiàn)功能更加強(qiáng)大的計(jì)算器,基于這樣的理念,本次設(shè)計(jì)是用單片機(jī)來設(shè)計(jì)的八位計(jì)算器。該設(shè)計(jì)系統(tǒng)是以 AT89C51 為單片機(jī), 用 74LS245 為顯示位控制, P1口作為輸入端,外接 4X4 的鍵盤,通過鍵盤掃描來對輸入數(shù)的控制,并外接驅(qū)動(dòng)電路,系統(tǒng)采用 LED 數(shù)碼管作為顯示器,軟件程序采用均采用 C語言編寫,便于移植與升級。電子產(chǎn)品的更新速度快就不足驚奇了 , 單片機(jī)的應(yīng)用已經(jīng)越來越貼近生活,用單片機(jī)來實(shí)現(xiàn)一些電子設(shè)計(jì)也變得容易起來。其中系統(tǒng)的抗干擾性能是系統(tǒng)可靠性的重要指標(biāo) 。另外,實(shí)例所設(shè)計(jì)的計(jì)算器是用 LED 數(shù)碼管顯示的,當(dāng)然也可以用其他的器件顯示,如 LED 顯示屏,這樣就可以顯示出更多的字符,在此基礎(chǔ)上,還可以編寫更加完善的程序來實(shí)現(xiàn)更多的計(jì)算功能。 2. 2 方案論證與設(shè)計(jì) 根據(jù)功能和指標(biāo)要求,本系統(tǒng)選用 MCS 51 單片機(jī)為主控機(jī)。 )、清除鍵和等號鍵,故只需要 16 個(gè)按鍵即可。如果按功能劃分,它由如下功能部件組成,即微處理器( CPU)、數(shù)據(jù)存儲器( RAM)、程序存儲器( ROM/EPROM)、并行 I/O 口、串行口、定時(shí)器 /計(jì)數(shù)器、中斷系統(tǒng)及特殊功能寄存器( SFR)。 GND 20 腳 接地端 。電容取 30PF 左右。 復(fù)位 在振蕩器運(yùn)行時(shí),有兩個(gè)機(jī)器周期( 24個(gè)振蕩周期)以上的高電平出現(xiàn)在此引腳時(shí),將使單片機(jī)復(fù)位,只要這個(gè)腳保持高電平, 51 芯片便循環(huán)復(fù)位。 圖 35 復(fù)位電路圖 復(fù)位操作不會對內(nèi)部 RAM 有所影響。此外, RESET/Vpd 還是一復(fù)用腳, Vcc掉電期間,此腳可接上備用電源, 以保證單片機(jī)內(nèi)部 RAM 的數(shù)據(jù)不丟失。 在訪問外部程序和外部數(shù)據(jù)存儲器時(shí), P0 口是分時(shí)轉(zhuǎn)換的地址 (低 8 位 )/數(shù)據(jù)總線,不需要外接上拉電阻。端口置 1時(shí),內(nèi)部上拉電阻將端口拉到高電平,作輸入用。在訪問外部程序和 16位外部數(shù)據(jù)存儲器時(shí), P2 口送出高 8 位地址。 P1- P3端口在做輸入使用時(shí),因內(nèi)部有上接電阻,被外部拉低的引腳會輸出一定的電流。對 Flash 存儲器編程時(shí),這個(gè)引腳用于輸入編程脈沖 PROG (2) PSEN 29 該引是外部程序存儲器的選通信號輸出端。當(dāng)該引腳訪問外部程序存儲器時(shí),應(yīng)輸入低電平。 74ls245 還具有雙向三態(tài)功能,既可以輸出,也可以輸入數(shù)據(jù)。為此,我們引入了矩陣鍵盤的應(yīng)用,采用四條 I/O 線作為行線,四條I/O 線作為列線組成鍵盤。矩陣的行線和列線分別通過兩并行接口和 CPU通信。 當(dāng)無按鍵閉合時(shí), P10~P13 與 P14~P17 之間開路;當(dāng)有鍵閉合時(shí),與閉合鍵相連的兩條 I/O 口線之間短路。但是鍵閉合一次只能進(jìn)行一次鍵功能操作,因此須等到按鍵釋放后,再進(jìn)行鍵功能操作,否則按一次鍵,有可能會連續(xù)多次進(jìn)行同樣的鍵操作。如圖 310所示: 圖 310 數(shù)碼顯示管 第 13 頁 .1 數(shù)碼 數(shù)碼管的分類 數(shù)碼管按段數(shù)分為七段數(shù)碼管和八段數(shù)碼管,八段數(shù)碼管比七段數(shù)碼管多一個(gè)發(fā)光二極管單元(多一個(gè)小數(shù)點(diǎn)顯示);按能顯示多少個(gè) “8” 可分為 1 位、 2 位、 4 位等等數(shù)碼管;按發(fā)光二極管單元連接方式分為共陽極數(shù)碼管 和共陰 極數(shù)碼管。共陰數(shù)碼管是指將所有發(fā)光二極管的陰極接到一起形成公共陰極 (COM)的數(shù)碼管。如圖右所示: 第 14 頁 圖 311 LED段碼 為了顯示數(shù)字或符號,要為 LED 顯示器提供代碼,即字形代碼。列掃描信號進(jìn)行讀入行的信號判斷該列是否有列的輸出 —— 是則進(jìn)行按照行列計(jì)算鍵盤的值,查表 第 16 頁 取得鍵碼并返回 —— 若否則進(jìn)行再次掃描。運(yùn)算主程序框圖如 34 所示: 第 17 頁 圖 44 運(yùn)算主程序框圖 第 18 頁 第五章 仿真及調(diào)試 在程序設(shè)計(jì)方法上,模塊化程序設(shè)計(jì)是單片機(jī)應(yīng)用中最常用的程序設(shè)計(jì)方法。這種方法比較符合人們的日常思維,缺點(diǎn)是一級的程序錯(cuò)誤會對整個(gè)程序產(chǎn)生影響。按下數(shù)字鍵,屏幕顯示要運(yùn)算 的第一個(gè)數(shù)字,再按下符號鍵,然后再按下 數(shù)字鍵,屏幕顯示要運(yùn)算的第二個(gè)數(shù)字,最后按下 “﹦ ”號鍵,屏幕上顯示出計(jì)算結(jié)果。在整個(gè)設(shè)計(jì)的過程中遇到的問題主要有以下 三點(diǎn),第一:基礎(chǔ)知識掌握的不牢固,主要表現(xiàn)在一些常用的電路的形式和功能不清楚,對書本上的內(nèi)容理解不夠透徹。急于求成是不好的,我有所感受。這一點(diǎn),我堅(jiān)信。通過 這段時(shí)間的設(shè)計(jì) ,讓我明白科學(xué)的思維方法和學(xué)習(xí)方法是多么重要,只有這樣才能夠有很高的效率,才能夠讓自己的工作更完美。更要注重自己在各方面的鍛煉能力,把握機(jī)會。 //LED 實(shí)時(shí)顯示數(shù)字 unsigned char uca_ShowCustom[6]={0x88,0x83,0xC6,0xA1,0x86,0x84}。 //定時(shí)器 1 定時(shí)計(jì)數(shù)。 //防抖動(dòng)標(biāo)志 bit b_KeyShock=0。 //抖動(dòng)標(biāo)志清除計(jì)數(shù),使用定時(shí)器 1 bit b_LCDClean=0。 unsigned char uca_FlashBlank[]={0xFF,0xFF,0xFF,0xFF,0xFF,0xFF}。定時(shí)器 0:模式一 . //定時(shí)器 0,用于 LCD刷新 TH0=TIME0H。 //開 定時(shí)器 0中斷 //定時(shí)器 1,用于 1s計(jì)時(shí) TH1=TIME1H。 //開定時(shí)器 1中斷 //外部中斷 0,用于執(zhí)行鍵盤掃描和鍵處理程序 IT0=1。 //開啟總中斷 while(1)。 //設(shè)置防抖動(dòng)標(biāo)志。 //恢復(fù)鍵掃描處理前初始狀態(tài) P2=0x0F。 ul_Number++。 ul_Number=ul_ClockOppose。 } } else uc_TimeCount++。 } else uc_KillCount++。 } if(uc_CleanCount%40==0) //通過設(shè)置 b_LCDClean為 1便可啟動(dòng)延時(shí)清空 LED顯示 { b_LCDClean=0。 EX0=1。 b_ReportFlash=0。 } //* 定時(shí)器 0,定時(shí)刷新 LED * void vTimer0(void) interrupt 1 { if(b_ShowMode==0) //數(shù)字模式 { vShowOneNum(*(pucLedNum(ul_Number)+uc_DisCount),6uc_DisCount)。 if(uc_DisCount==5) uc_DisCount=0。 } //**程序名 : LED 動(dòng)態(tài)掃描子函數(shù) //** 輸入一個(gè)數(shù)字以及所要顯示的位置 ,在 LED相應(yīng)位置上顯示相應(yīng)數(shù)字 . include //* 全局變量 unsigned char code uca_LEDCode[]= {0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xFF}。 //只是數(shù)字的首位 extern unsigned char uca_ShowCustom[]。 //表明從計(jì)算器模式切換到計(jì)時(shí)模式 CHAG1 unsigned char uca_ReportChar4[]={0xC6,0x89,0x88,0xC2,0xBF,0xC0}。 //停止 StoP unsigned char uca_ReportChar8[]={0xC0,0x8C,0x8C,0xC0,0x92,0x86}。 uca_LedNum[5] = ulNumber/100000。 uca_LedNum[1] = (ulNumber100000*(long)uca_LedNum[5]10000*(long)uca_LedNum[4] 1000*(long)uca_LedNum[3]100*(long)uca_LedNum[2])/10。uc_NumberFront++) { if(uca_LedNum[6uc_NumberFront]!=0) //判斷數(shù)據(jù)的首位不為零數(shù)字在
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1