![系列單片機(jī)的增強(qiáng)型-AT89C51系列單片機(jī)電子設(shè)計(jì)實(shí)驗(yàn)報(bào)告_第1頁(yè)](http://file4.renrendoc.com/view/566604ae496f730662ce51f4ab4cdda2/566604ae496f730662ce51f4ab4cdda21.gif)
![系列單片機(jī)的增強(qiáng)型-AT89C51系列單片機(jī)電子設(shè)計(jì)實(shí)驗(yàn)報(bào)告_第2頁(yè)](http://file4.renrendoc.com/view/566604ae496f730662ce51f4ab4cdda2/566604ae496f730662ce51f4ab4cdda22.gif)
![系列單片機(jī)的增強(qiáng)型-AT89C51系列單片機(jī)電子設(shè)計(jì)實(shí)驗(yàn)報(bào)告_第3頁(yè)](http://file4.renrendoc.com/view/566604ae496f730662ce51f4ab4cdda2/566604ae496f730662ce51f4ab4cdda23.gif)
![系列單片機(jī)的增強(qiáng)型-AT89C51系列單片機(jī)電子設(shè)計(jì)實(shí)驗(yàn)報(bào)告_第4頁(yè)](http://file4.renrendoc.com/view/566604ae496f730662ce51f4ab4cdda2/566604ae496f730662ce51f4ab4cdda24.gif)
![系列單片機(jī)的增強(qiáng)型-AT89C51系列單片機(jī)電子設(shè)計(jì)實(shí)驗(yàn)報(bào)告_第5頁(yè)](http://file4.renrendoc.com/view/566604ae496f730662ce51f4ab4cdda2/566604ae496f730662ce51f4ab4cdda25.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、實(shí)驗(yàn)報(bào)告姓名:宋大威 電氣1302班學(xué)號(hào)20134223067 簡(jiǎn)介本次項(xiàng)目是以51系列單片機(jī)的增強(qiáng)型AT89C51系列單片機(jī),設(shè)計(jì)與制作單片機(jī)系統(tǒng),按需求設(shè)計(jì)硬件原理圖,編寫、調(diào)試軟件程序 (Keil uVision4) ,硬件電路和軟件程序結(jié)合,進(jìn)行硬件調(diào)試仿真,燒寫調(diào)試后的最終程序,系統(tǒng)上電運(yùn)行。主要包括流水燈、數(shù)碼管、矩陣鍵盤、蜂鳴器、數(shù)字時(shí)鐘、液晶 LCD1602、片外RAM 擴(kuò)展、A/D轉(zhuǎn)換和D/A轉(zhuǎn)換。所用芯片為AT89C51,CY62256,ADC0809,DAC0832鎖存器74LS373。目錄 流水燈1.1 實(shí)驗(yàn)?zāi)康?1.2電路圖11.3電路原理21.4程序設(shè)計(jì)思路21.5
2、實(shí)驗(yàn)心得及反思3 數(shù)碼管2.1實(shí)驗(yàn)?zāi)康?2,2電路圖42.3電路原理52.4程序設(shè)計(jì)思路52.5實(shí)驗(yàn)心得及反思5 矩陣鍵盤及蜂鳴器3.1實(shí)驗(yàn)?zāi)康?3.2電路圖63.3電路原理73.4程序設(shè)計(jì)思路73.5實(shí)驗(yàn)心得及反思7 液晶顯示器LCD16024.1實(shí)驗(yàn)?zāi)康?4.2電路圖84.3電路原理94.4程序設(shè)計(jì)思路94.5實(shí)驗(yàn)心得及反思10 片外RAM擴(kuò)展5.1實(shí)驗(yàn)?zāi)康?15.2電路圖125.3電路原理125.4程序設(shè)計(jì)思路135.5實(shí)驗(yàn)心得及反思14第六章A/D轉(zhuǎn)換 6.1實(shí)驗(yàn)?zāi)康?46.2電路圖156.3電路原理166.4程序設(shè)計(jì)思路166.5實(shí)驗(yàn)心得及反思17第六章D/A轉(zhuǎn)換7.1實(shí)驗(yàn)?zāi)康?77
3、.2電路圖187.3電路原理197.4程序設(shè)計(jì)思路197.5實(shí)驗(yàn)心得及反思19第八章 附錄程序8.1流水燈208.2數(shù)碼管218.3矩陣鍵盤228.4時(shí)鐘238.5液晶LCD160224 8.6片外RAM258.7A/D轉(zhuǎn)換268.8D/A轉(zhuǎn)換27第九章 參考文獻(xiàn)流水燈1實(shí)驗(yàn)?zāi)康牧私鈫纹瑱C(jī)的系統(tǒng)設(shè)計(jì)方法掌握Keil uVision4軟件的使用方法掌握焊接技術(shù)在開發(fā)板上實(shí)現(xiàn)八個(gè)發(fā)光LED被點(diǎn)亮2電路原理 3 實(shí)驗(yàn)原理發(fā)光LED燈需要正向電壓才能導(dǎo)通,單片機(jī)給一個(gè)低電平后,所以連接的LED負(fù)極,就會(huì)導(dǎo)通發(fā)亮,點(diǎn)亮8個(gè)發(fā)光二級(jí)管時(shí),先點(diǎn)亮一個(gè),延時(shí),再點(diǎn)亮下一個(gè),再延時(shí),循環(huán)往復(fù),形成流水燈。不同規(guī)
4、格、不同顏色的LED參數(shù)是不一樣的。一般普通發(fā)光二極管,以紅色為例:LED工作電壓:1.8V2.4VLED工作電流:2mA20mA一般取電壓典型值:U=2VR2 5V -2V/0.02A5V-2V/0.02A =150,1.5K4程序設(shè)計(jì)思路點(diǎn)亮第三盞燈,并且延時(shí)點(diǎn)亮第二盞燈,并且延時(shí)點(diǎn)亮第四盞燈,并且延時(shí)點(diǎn)亮第一盞燈,并且延時(shí)點(diǎn)亮第八盞燈,并且延時(shí)點(diǎn)亮第六盞燈,并且延時(shí)點(diǎn)亮第五盞燈,并且延時(shí)點(diǎn)亮第七盞燈,并且延時(shí)開始5實(shí)驗(yàn)心得及反思心得;這是我做的第一個(gè)實(shí)驗(yàn)但是我覺得稱呼他為我的作品,從開始時(shí)的不知如何下手到后面駕輕就熟,收獲巨大,做完本次實(shí)驗(yàn),讓我們對(duì)單片機(jī)有了新的認(rèn)識(shí),也更加的體會(huì)到了將
5、理論與實(shí)際結(jié)合的重要性。理論聯(lián)系實(shí)際,才能更好的掌握知識(shí)運(yùn)用知識(shí)。反思;在焊接電路板之前,我們要先理解本次實(shí)驗(yàn)的原理以及電路圖的設(shè)計(jì)和布局,然后再開始焊接編程,在做完整個(gè)試驗(yàn)后,才明白需要在做實(shí)驗(yàn)之前要有一個(gè)大局觀。這樣才能用最少的空間做出最多的東西。也能節(jié)省材料,出現(xiàn)問(wèn)題時(shí),也有便于我們檢查錯(cuò)誤。 數(shù)碼管 實(shí)驗(yàn)?zāi)康牧私夤╆?yáng)極數(shù)碼管的使用方法掌握數(shù)碼管動(dòng)態(tài)顯示電路的連接方法練習(xí)動(dòng)態(tài)顯示程序的結(jié)構(gòu)及調(diào)試方電路原理圖實(shí)驗(yàn)原理單片機(jī)通過(guò)驅(qū)動(dòng)電路給數(shù)碼管中相應(yīng)各段的發(fā)光二極管加正向電壓,該段發(fā)光二極管就會(huì)被點(diǎn)亮。不同段的發(fā)光二極管加正向電壓則亮,不加正向電壓則滅,這樣就可以通過(guò)各段的亮滅組合,來(lái)顯示不
6、同的數(shù)字和字符了。本次使用采用P1口為段選,P0.70.2分別對(duì)應(yīng)第一個(gè)數(shù)碼管至第六個(gè)數(shù)碼管。采用各數(shù)碼管循環(huán)輪流顯示的方法,當(dāng)循環(huán)顯示頻率較高時(shí),利用人眼的暫留特性,看不出閃爍顯示現(xiàn)象,這種顯示需要一個(gè)接口完成字形碼的輸出,另一接口完成各數(shù)碼管的輪流點(diǎn)亮(數(shù)位選擇)。程序框圖給P0口0的段選,選通第一個(gè)數(shù)碼管(P0.7),延時(shí),關(guān)閉第一個(gè)數(shù)碼管開始給P0口1的段選,選通第二個(gè)數(shù)碼管(P0.6),延時(shí),關(guān)閉第二個(gè)數(shù)碼管給P0口2的段選,選通第三個(gè)數(shù)碼管(P0.5),延時(shí),關(guān)閉第三個(gè)數(shù)碼管給P0口3的段選,選通第四個(gè)數(shù)碼管(P0.4),延時(shí),關(guān)閉第四個(gè)數(shù)碼管給P0口4的段選,選通第五個(gè)數(shù)碼管(P
7、0.3),延時(shí),關(guān)閉第五個(gè)數(shù)碼管給P0口5的段選,選通第六個(gè)數(shù)碼管(P0.2),延時(shí),關(guān)閉第六個(gè)數(shù)碼管實(shí)驗(yàn)心得本次實(shí)驗(yàn)的電路連接有點(diǎn)麻煩,在焊接過(guò)程中一分心就容易犯錯(cuò),所以在做實(shí)驗(yàn)中我們必須要注意力高度集中,要不然我們就會(huì)得不償失了。另外,在調(diào)試程序時(shí),我們的數(shù)碼管的顯示不很穩(wěn)定,當(dāng)時(shí)我們沒(méi)太在意。當(dāng)老師檢驗(yàn)時(shí)提出了這一問(wèn)題,我們后來(lái)明白了,在實(shí)驗(yàn)中出現(xiàn)任何一丁點(diǎn)異常都要引起注意,把問(wèn)題解決,這樣我們做出的產(chǎn)品才會(huì)更有質(zhì)量保證。矩陣鍵盤、時(shí)鐘與蜂鳴器實(shí)驗(yàn)?zāi)康恼莆?*4矩陣式鍵盤按鍵地設(shè)計(jì)方法掌握4*4矩陣鍵盤程序的識(shí)別原理掌握蜂鳴器的使用方法了解定時(shí)器的工作原理明白用鍵盤怎樣去調(diào)試時(shí)間并在數(shù)碼
8、管上顯示電路圖實(shí)驗(yàn)原理矩陣鍵盤與蜂鳴器為了減少鍵盤與單片機(jī)接口所占用的I/O口的數(shù)目,所以將鍵盤排列成行列矩陣形式,程序先判斷有無(wú)鍵按下,當(dāng)有鍵按下后,判斷哪一個(gè)按鍵被按下,采用逐行掃描查詢法。向行線輸出全掃描字00H,把全部行線置為地電平,然后將列線的電平狀態(tài)讀入累加器A中,如果有一根列線電平被拉至低電平,從而使列輸入不全為1。數(shù)碼顯示第二章已講,這里不再累述。給P0.0一個(gè)信號(hào)0,使蜂鳴器導(dǎo)通發(fā)聲。時(shí)鐘使用6位數(shù)碼管,數(shù)碼管分別顯示時(shí)、分、秒,用鍵盤進(jìn)行時(shí)間的調(diào)整。選用定時(shí)器T0的第一模式工作 。先賦定時(shí)器的計(jì)數(shù)初值,賦給TL0, B0H,賦給TH0, 3CH,每次的定時(shí)時(shí)間為50微妙。開
9、放中斷,啟動(dòng)定時(shí)器。中斷二十次即可得到一秒的時(shí)間。每秒的延時(shí)達(dá)到,秒計(jì)數(shù)加一。當(dāng)秒計(jì)數(shù)器計(jì)數(shù)滿60,分計(jì)數(shù)加一,秒計(jì)時(shí)清零。當(dāng)秒計(jì)數(shù)器計(jì)數(shù)滿60,時(shí)計(jì)數(shù)加一,分計(jì)時(shí)清零。當(dāng)時(shí)計(jì)數(shù)器計(jì)滿24,全部清零。程序框圖矩陣鍵盤與蜂鳴器程序框圖開始判斷是否有鍵按下給A以00H,進(jìn)行行掃描,確定按鍵行號(hào),保存行首鍵號(hào)然后掃描列,并將對(duì)應(yīng)的列序號(hào)保存鍵號(hào)(值)=行首鍵號(hào)+列號(hào)延時(shí)去抖后再判斷按鍵狀態(tài),確定有鍵按下輸出顯示,蜂鳴器發(fā)聲時(shí)鐘程序框圖開始初始化并設(shè)定中斷允許進(jìn)入中斷調(diào)時(shí)調(diào)用鍵盤程序調(diào)用時(shí)間程序,計(jì)時(shí)鍵掃描,確定鍵值輸入鍵值,進(jìn)行調(diào)時(shí)顯示時(shí)間否是實(shí)驗(yàn)心得做完之前的兩個(gè)實(shí)驗(yàn),我們的信心也加強(qiáng)了,因?yàn)槲覀?/p>
10、在學(xué)習(xí)的過(guò)程有了小小的收獲??蛇@次實(shí)驗(yàn)卻讓我們小小的郁悶了,感覺原理不是特別好懂,特別是時(shí)鐘的程序,因?yàn)閷?duì)單片機(jī)的內(nèi)部工作原理算是懵懂,不過(guò)后來(lái),我們還是通過(guò)查找資料,慢慢的完成了實(shí)驗(yàn),可以說(shuō)過(guò)程是艱難的,但是我們沒(méi)有放棄,也許毅力的練成就是從一次一次坎坷中積聚的吧。液晶顯示器(LCD1602)實(shí)驗(yàn)?zāi)康牧私釲CD液晶顯示器的工作原理掌握LCD液晶顯示器的編程控制方法電路圖實(shí)驗(yàn)原理1602液晶模塊內(nèi)部的字符發(fā)生存儲(chǔ)器(CGROM)已經(jīng)存儲(chǔ)了160個(gè)不同的點(diǎn)陣字符圖形,這些字符有:阿拉伯?dāng)?shù)字、英文字母的大小寫、常用的符號(hào)、和日文假名等,每一個(gè)字符都有一個(gè)固定的代碼。程序框圖是是否否開始是否忙調(diào)LC
11、D顯示功能,清屏是否忙送顯示調(diào)整對(duì)比度返回實(shí)驗(yàn)心得這次實(shí)驗(yàn)主要是讓我們了解LCD,知道它作為外設(shè)怎么使用就行。雖然用處我們大家都知道,但是不能因?yàn)楹?jiǎn)單我們就不去認(rèn)真學(xué),畢竟學(xué)習(xí)是個(gè)積累的過(guò)程。片外RAM擴(kuò)展實(shí)驗(yàn)?zāi)康恼莆諗U(kuò)展片RAM的電路和程序設(shè)計(jì)方法理解擴(kuò)展片RAM時(shí)讀寫和ALE等控制線的作用了解片外RAM情況下的單片機(jī)指令MOVX的執(zhí)行進(jìn)程學(xué)習(xí)心得電路圖實(shí)驗(yàn)原理由于89C51單片機(jī)片內(nèi)RAM僅有128字節(jié),當(dāng)系統(tǒng)需要較大容量RAM時(shí),就需要片外擴(kuò)展數(shù)據(jù)存儲(chǔ)器RAM,最大可擴(kuò)展64KB。擴(kuò)展數(shù)據(jù)存儲(chǔ)器空間地址,有P2口提供高8位地址,P0口分時(shí)提供8位地址和用作8位雙向數(shù)據(jù)總線,由地址鎖存器7
12、4H373控制。程序框圖由74LS373傳送到62256由62256傳送回單片機(jī)中數(shù)碼管上面顯示數(shù)據(jù)結(jié)束數(shù)據(jù)傳輸?shù)?2256中開始實(shí)驗(yàn)心得這次實(shí)驗(yàn)主要是電路的連接,理解時(shí)序與有關(guān)芯片的原理之后,就相對(duì)來(lái)說(shuō)比較簡(jiǎn)單了。所以在以后的實(shí)驗(yàn)中我們既要認(rèn)真地對(duì)待硬件,又要深刻地理解有關(guān)軟件,這樣才能真正地做到靈活運(yùn)用知識(shí)去解決其他問(wèn)題。AD轉(zhuǎn)換實(shí)驗(yàn)?zāi)康?、了解AD轉(zhuǎn)換器的工作原理2、掌握AD轉(zhuǎn)換與單片機(jī)的接口方法3、通過(guò)實(shí)驗(yàn)了解單片機(jī)如何進(jìn)行數(shù)據(jù)采集電路圖實(shí)驗(yàn)原理從滑動(dòng)變阻器上得到模擬電壓,將模擬電壓信號(hào)輸入ADC0809芯片,ADC0809將模擬量轉(zhuǎn)化為數(shù)字量輸入AT89C51,AT89C51將輸入的
13、數(shù)字量處理,再送到數(shù)碼管顯示。程序框圖定義引腳以及顯示緩沖區(qū)單元清零緩沖區(qū),給DPTR查表表頭,ABC已經(jīng)接地(選擇通道0)啟動(dòng)AD轉(zhuǎn)換,待轉(zhuǎn)換結(jié)束則輸出,緩存結(jié)果并關(guān)閉輸出將AD轉(zhuǎn)換的結(jié)果(二進(jìn)制)轉(zhuǎn)換為BCD碼將結(jié)果送至顯示緩沖區(qū)(從低位到高位,并且最高位點(diǎn)亮小數(shù)點(diǎn))分別顯示開始實(shí)驗(yàn)心得這個(gè)實(shí)驗(yàn)是持續(xù)時(shí)間最長(zhǎng)的,就因?yàn)槟且痪湓捠拐麄€(gè)實(shí)驗(yàn)延長(zhǎng)了倆個(gè)多月,使我明白了做實(shí)驗(yàn)要了解你所用的器件的所有的功能才能使你掌控大局觀,實(shí)驗(yàn)如此,生活亦是如此,要知己知彼才能百戰(zhàn)不殆。DA轉(zhuǎn)換實(shí)驗(yàn)?zāi)康牧私釪A轉(zhuǎn)換的基本原理了解運(yùn)算放大器的工作原理了解DA轉(zhuǎn)換芯片的性能及編程方法掌握如何采集產(chǎn)生波形的樣點(diǎn)電路圖實(shí)
14、驗(yàn)原理使用D/A轉(zhuǎn)換實(shí)現(xiàn)數(shù)字信號(hào)轉(zhuǎn)換為模擬信號(hào)。用運(yùn)算放大器UA741實(shí)現(xiàn)電壓的放大。通過(guò)程序控制產(chǎn)生矩形波,三角波,正弦波。實(shí)驗(yàn)心得由于這次實(shí)驗(yàn)是需要把數(shù)字信號(hào)轉(zhuǎn)換為模擬信號(hào),而模擬信號(hào)的產(chǎn)生就需要學(xué)會(huì)如何采集生成波形的樣點(diǎn),初次接觸這方面的知識(shí),在理解上與解決問(wèn)題上給我們帶來(lái)了困擾,好在有學(xué)長(zhǎng)的幫助以及我們的堅(jiān)持,才做出了實(shí)驗(yàn)效果。通過(guò)這次實(shí)驗(yàn),我們感觸很大,因?yàn)閷W(xué)長(zhǎng)在傳遞知識(shí)時(shí)很無(wú)私也很友好,也因?yàn)槲覀兊囊懔ψ屛覀冞x擇了接著奮斗。我們相信,以后我們?cè)儆龅嚼щy時(shí),繼續(xù)走下去的決心會(huì)加強(qiáng),我們也會(huì)很樂(lè)意與人分享我們的知識(shí)的。附錄流水燈程序ORG 0000HAJMP MAINORG 0070H
15、MAIN:MOVP1,#0FEHLCALLAXHMOVP1,#0FDHLCALLAXHMOVP1,#0FBHLCALLAXHMOVP1,#0F7HLCALLAXHMOVP1,#0EFHLCALLAXHMOVP1,#0DFHLCALLAXHMOVP1,#0BFHLCALLAXHMOVP1,#07FHLCALLAXHAJMP MAINAXH:MOV R7,#250 D1:MOV R6,#250 D2:DJNZ R6,D2 DJNZ R7,D1 RETEND數(shù)碼管程序ORG 0000HAJMP MAINORG 0030HMAIN:MOVP1,#0C0HCLRP0.7LCALLAXHSETBP0.7M
16、OVP1,#0F9HCLRP0.6LCALLAXHSETBP0.6MOVP1,#0A4HCLRP0.5LCALLAXHSETBP0.5MOVP1,#0B0HCLRP0.4LCALLAXHSETBP0.4MOVP1,#99HCLRP0.3LCALLAXHSETBP0.3MOVP1,#92HCLRP0.2LCALLAXHSETBP0.2AJMP MAINAXH:MOVR7,#2D1:MOVR6,#30D2:DJNZR6,D2DJNZR7,D1END矩陣鍵盤程序ORG0000HAJMPKEYORG0030HKEY:MOVP2,#00HMOVA,P2ANLA,#0FHORLA,#0F0HCPLAJZK
17、EYLCALLDEL10msMOVP2,#0FHMOVA,P2ANLA,#0FHORLA,#0F0HCPLAJZKEYSKEY:MOVA,#00MOVR0,A /行值MOVR1,A /列值MOVR3,#7FH/暫存行SKEY2:MOVA,R3 /SKEY2判斷行數(shù)MOVP2,ANOPNOPNOPMOVA,P2MOVR1,AANLA,#0FHORLA,#0F0HCPLAS123:JNZSKEY3INCR0SETBCMOVA,R3RRCAMOVR3,AMOVA,R0CJNEA,#04H,SKEY2EKEY:RETSKEY3:MOVA,R1 /SKEY3判斷列值JNBACC.3,SKEY5JNBAC
18、C.2,SKEY6JNBACC.1,SKEY7JNBACC.0,SKEY8AJMPEKEYSKEY5:MOVA,#00HMOVR2,AAJMPDKEYSKEY6:MOVA,#01HMOVR2,AAJMPDKEYSKEY7:MOVA,#02HMOVR2,AAJMPDKEYSKEY8:MOVA,#03HMOVR2,AAJMPDKEYDKEY:MOVA,R0ACALLDECODEAJMPMAIN0DECODE:MOVA,R0MOVB,#04HMULABADDA,R2RETMAIN0:CLRP0.2CJNEA,#00H,MAIN1CLRP0.0MOVP1,#0C0HLCALLDEL50msSETBP0
19、.0SETBP0.2MOVP1,#0FFHAJMPKEYMAIN1:CJNEA,#01H,MAIN2CLRP0.0MOVP1,#0F9HLCALLDEL50msSETBP0.0SETBP0.2MOVP1,#0FFHAJMPKEYMAIN2:CJNEA,#02H,MAIN3CLRP0.0MOVP1,#0A4HLCALLDEL50msSETBP0.0SETBP0.2MOVP1,#0FFHJMPKEYMAIN3:CJNEA,#03H,MAIN4CLRP0.0MOVP1,#0B0HLCALLDEL50msSETBP0.0SETBP0.2MOVP1,#0FFHAJMPKEYMAIN4:CJNEA,#04
20、H,MAIN5CLRP0.0MOVP1,#99HLCALLDEL50msSETBP0.0SETBP0.2MOVP1,#0FFHAJMPKEYMAIN5:CJNEA,#05H,MAIN6CLRP0.0MOVP1,#92HLCALLDEL50msSETBP0.0SETBP0.2MOVP1,#0FFHAJMPKEYMAIN6:CJNEA,#06H,MAIN7CLRP0.0MOVP1,#82HLCALLDEL50msSETBP0.0SETBP0.2MOVP1,#0FFHAJMPKEYMAIN7:CJNEA,#07H,MAIN8CLRP0.0MOVP1,#0F8HLCALLDEL50msSETBP0.0
21、SETBP0.2MOVP1,#0FFHAJMPKEYMAIN8:CJNEA,#08H,MAIN9CLRP0.0MOVP1,#80HLCALLDEL50msSETBP0.0SETBP0.2MOVP1,#0FFHAJMPKEYMAIN9:CJNEA,#09H,MAINACLRP0.0MOVP1,#90HLCALLDEL50msSETBP0.0SETBP0.2MOVP1,#0FFHAJMPKEYMAINA:CJNEA,#0AH,MAINBCLRP0.0MOVP1,#88HLCALLDEL50msSETBP0.0SETBP0.2MOVP1,#0FFHAJMPKEYMAINB:CJNEA,#0BH,MA
22、INCCLRP0.0MOVP1,#83HLCALLDEL50msSETBP0.0SETBP0.2MOVP1,#0FFHAJMPKEYMAINC:CJNEA,#0CH,MAINDCLRP0.0MOVP1,#0C6HLCALLDEL50msSETBP0.0SETBP0.2MOVP1,#0FFHAJMPKEYMAIND:CJNEA,#0DH,MAINECLRP0.0MOVP1,#0A1HLCALLDEL50msSETBP0.0SETBP0.2MOVP1,#0FFHAJMPKEYMAINE:CJNEA,#0EH,MAINFCLRP0.0MOVP1,#86HLCALLDEL50msSETBP0.0SET
23、BP0.2MOVP1,#0FFHAJMPKEYMAINF:CJNEA,#0FH,CXFCLRP0.0MOVP1,#8EHLCALLDEL50msSETBP0.0SETBP0.2MOVP1,#0FFHAJMPKEYCXF:LJMPKEYDEL10ms:MOVR7,#10HTS1:MOVR6,#0FFHTS2:DJNZR6,TS2DJNZR7,TS1RETDEL50ms:MOVR7,#200TS3:MOVR6,#125TS4:DJNZR6,TS4DJNZR7,TS3RETEND時(shí)鐘程序H_BIT EQU 20HM_BIT EQU 21HS_BIT EQU 22HHH EQU 23HMM EQU 2
24、4HSS EQU 25HHH_BIT EQU 26HMM_BIT EQU 27HSS_BIT EQU 28HORG 00HAJMP MAINORG 0BHAJMP TIME0ORG 30HMAIN: MOV SP,#60H MOV P2,#0FH MOV R5,#00H MOV H_BIT,#00H MOV M_BIT,#00H MOV S_BIT,#00H MOV HH_BIT,#00H MOV MM_BIT,#00H MOV SS_BIT,#00H MOV HH,#00H MOV MM,#00H MOV SS,#00H MOV TMOD,#01H MOV TH0,#3CH MOV TL0,
25、#0B0H SETB EA SETB ET0 SETB TR0LOOP: LCALL EY LCALL KEY LJMP LOOPEY: LCALL LOOP1 MOV DPTR,#TAB MOV A,H_BIT MOVC A,A+DPTR MOV P1,A CLR P0.7 LCALL DIS1 SETB P0.7 MOV A,HH_BIT MOVC A,A+DPTR MOV P1,A CLR P0.6 LCALL DIS1 SETB P0.6 MOV A,M_BIT MOVC A,A+DPTR MOV P1,A CLR P0.5 LCALL DIS1 SETB P0.5 MOV A,MM_
26、BIT MOVC A,A+DPTR MOV P1,A CLR P0.4 LCALL DIS1 SETB P0.4 MOV A,S_BIT MOVC A,A+DPTR MOV P1,A CLR P0.3 LCALL DIS1 SETB P0.3 MOV A,SS_BIT MOVC A,A+DPTR MOV P1,A CLR P0.2 LCALL DIS1 SETB P0.2 RETLOOP1: MOV A,SS MOV B,#10 DIV AB MOV S_BIT,A MOV SS_BIT,B MOV A,MM MOV B,#10 DIV AB MOV M_BIT,A MOV MM_BIT,B
27、MOV A,HH MOV B,#10 DIV AB MOV H_BIT,A MOV HH_BIT,B RETTIME0: PUSH ACC PUSH PSW MOV TH0,#3CH MOV TL0,#0B0H INC R5 CJNE R5,#20,LOOP2 MOV R5,#00H INC SS MOV A,SS CJNE A,#60,LOOP2 MOV SS,#00H INC MM MOV A,MM CJNE A,#60,LOOP2 MOV MM,#00H INC HH MOV A,HH CJNE A,#24,LOOP2 MOV HH,#00HLOOP2: POP PSW POP ACC
28、RETIKEY: CLREA LCALLEY JNB P2.3,SS_KEYKEY1: SETBEA RETSS_KEY: LCALL EY1 LCALL DIS1 JNB P2.3,SS_KEYSSA: LCALL EY1 LCALL S_KEY JNB P2.0,KEY3 LJMP SSAKEY3: LJMP KEY1S_KEY: JNB P2.2,S_ADDKEY JNB P2.1,S_DECKEY LCALL DIS1 JNB P2.3,MM_KEY RETS_ADDKEY: LCALLEY1 LCALL DIS1 JNB P2.2,S_ADDKEY INC SS MOV A,SS C
29、JNE A,#60,SS_KEY1 MOV SS,#00HSS_KEY1: LJMP SSAS_DECKEY: LCALLEY1 LCALL DIS1 JNB P2.1,S_DECKEY MOV A,SS CJNE A,#00,SS_KEY2 MOV SS,#60SS_KEY2: DEC SS LJMP SS_KEY1 MM_KEY: LCALL EY2 LCALL DIS1 JNB P2.3,MM_KEYMMA: LCALL EY2 LCALL M_KEY JNB P2.0,KEY4 LJMP MMAKEY4: LJMP KEY1M_KEY: JNB P2.2,M_ADDKEY JNB P2
30、.1,M_DECKEY LCALL DIS1 JNB P2.3,HH_KEY RETM_ADDKEY: LCALLEY2 LCALL DIS1 JNB P2.2,M_ADDKEY INC MM MOV A,MM CJNE A,#60,MM_KEY1 MOV MM,#00HMM_KEY1: LJMP MMAM_DECKEY: LCALLEY2 LCALL DIS1 JNB P2.1,M_DECKEY MOV A,MM CJNE A,#00,MM_KEY2 MOV MM,#60MM_KEY2: DEC MM LJMP MM_KEY1HH_KEY: LCALL EY3 LCALL DIS1 JNB
31、P2.3,HH_KEYHHA: LCALL EY3 LCALL H_KEY JNB P2.0,KEY5 LJMP HHAKEY5: LJMP KEY1H_KEY: JNB P2.2,H_ADDKEY JNB P2.1,H_DECKEY LCALL DIS1 JNB P2.1,SSB RETH_ADDKEY: LCALLEY3 LCALL DIS1 JNB P2.2,H_ADDKEY INC HH MOV A,HH CJNE A,#24,HH_KEY1 MOV HH,#00HHH_KEY1: LJMP HHAH_DECKEY: LCALL EY3 LCALL DIS1 JNB P2.1,H_DE
32、CKEY MOV A,HH CJNE A,#00,HH_KEY2 MOV HH,#24HH_KEY2: DEC HH LJMP HH_KEY1SSB: LJMP SS_KEYEY1: LCALL LOOP1 MOV DPTR,#TAB MOV A,S_BIT MOVC A,A+DPTR MOV P1,A CLR P0.3 LCALL DIS1 SETB P0.3 MOV A,SS_BIT MOVC A,A+DPTR MOV P1,A CLR P0.2 LCALL DIS1 SETB P0.2 RETEY2: LCALL LOOP1 MOV DPTR,#TAB MOV A,M_BIT MOVC
33、A,A+DPTR MOV P1,A CLR P0.5 LCALL DIS1 SETB P0.5 MOV A,MM_BIT MOVC A,A+DPTR MOV P1,A CLR P0.4 LCALL DIS1 SETB P0.4 RETEY3: LCALL LOOP1 MOV DPTR,#TAB MOV A,H_BIT MOVC A,A+DPTR MOV P1,A CLR P0.7 LCALL DIS1 SETB P0.7 MOV A,HH_BIT MOVC A,A+DPTR MOV P1,A CLR P0.6 LCALL DIS1 SETB P0.6 RETDIS1: MOV R6,#20 D
34、JNZ R6,$ RETTAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90HEND液晶LCD1602程序ORG0000HAJMPMAINORG000BHAJMPTIMEORG0100H MAIN:MOVTMOD,#00H MOVTL0,#00H MOVTH0,#00H SETBEA SETBET0 SETBTR0 MOV50H,#32H MOVSP,#60H ACALLMOSHISHEZHI ACALLLCDQP MOVA,#80H ACALLLCDXZL MOVDPTR,#TAB1 ACALLLOOP4 MOVA,#0C0H ACALLLC
35、DXZL MOVDPTR,#TAB2 ACALLLOOP4 LOOP:AJMPLOOP TIME:MOVTL0,#00H MOVTH0,#00H DJNZ50H,TIME0 MOV50H,#32H TIME0:RETI MOSHISHEZHI:MOVA,#38HLCALLLCDXZL MOVA,#0EH LCALLLCDXZL MOVA,#06H LCALLLCDXZL RET LOOP2:PUSHAcc LOOP3:CLRP2.6 SETBP2.7 CLRP2.5 SETBP2.5 MOVA,P1 CLRP2.5 JBAcc.7,LOOP3 POPAcc ACALLDELAY RET LCD
36、XZL:ACALLLOOP2 CLRP2.5 CLRP2.6 CLRP2.7 SETBP2.5 MOVP1,A CLRP2.5 RET LCDDXX:ACALLLOOP2 CLRP2.5 SETBP2.6 CLRP2.7 SETBP2.5 MOVP1,A CLRP2.5 RET DELAY:MOV52H,#05H DELAY1:MOV51H,#0F8HDJNZ51H,$ DJNZ52H,DELAY1 RET LCDQP:MOVA,#01H ACALLLCDXZL RET LOOP4:PUSHAcc LOOP5:CLRA MOVCA,A+DPTR JZLOOP6 ACALLLCDDXX INCD
37、PTR AJMPLOOP5 LOOP6:POPAcc RETTAB1:DB Gue xue ling,00HTAB2:DB Zhong qiang,00HEND片外RAM程序WR1BITP3.6RD1BITP3.7ORG0000HAJMPMAINORG0030HMAIN:LCALLWRITELCALLREADLCALLSYWRITE:SETBWR1MOVA,#0F8HMOVXR1,ACLRWR1SETBWR1RETREAD:SETBRD1MOVXA,R1CLRRD1SETBRD1RETSY:MOVP1,ACLRP0.2RETENDAD轉(zhuǎn)換程序#include sbit ALE= P36;sbi
38、t ST= P06;sbit OE= P07;sbit EOC= P37;sbit MM1= P05;sbit MM2= P04;sbit MM3= P03;sbit MM4= P02;#define SEGOFF0 xFFvoid delay(int z);void main()unsigned int dat= 0;unsigned inttemp= 0;unsigned inttemp1= 0;unsigned char smg0= 0;unsigned char smg1= 0;unsigned char smg2= 0;unsigned char smg3= 0;unsigned i
39、nt i= 0; bitflag= 0;unsigned char dig10 = 0 xC0 ,0 xF9,0 xA4,0 xB0,0 x99,0 x92,0 x82,0 xF8,0 x80,0 x90; unsigned char dig110 = 0 x40 ,0 x79,0 x24,0 x30,0 x19,0 x12,0 x02,0 x78,0 x00,0 x10; while(1)/ 數(shù)碼管0 顯示dig0P1= SEGOFF;MM1= 0;P1= dig1smg0;delay(3);MM1= 1;/ 數(shù)碼管1 顯示dig1 P1= SEGOFF;MM2= 0;P1= digsmg1
40、;delay(2);MM2= 1;/ 數(shù)碼管2 顯示dig2P1= SEGOFF; MM3= 0;P1= digsmg2;delay(1);MM3= 1;/ 數(shù)碼管3 顯示dig3P1= SEGOFF; MM4= 0;P1= digsmg3;delay(0);MM4= 1;i = i + 1;/ 從AD0809中讀取采集得到的數(shù)據(jù)if(i10)ST= 0;ALE= 0;OE= 0;/ 設(shè)置ALEALE= 1;delay(2);ALE= 0;/ 開始ST= 1;delay(2);ST= 0;/ 保證數(shù)據(jù)轉(zhuǎn)換成功(ADC)while(!flag)flag= EOC;/ 打開輸出允許OE= 1;/
41、讀出數(shù)據(jù)dat= P2;OE= 0;temp1= dat*100/256;temp= temp1*40; smg0= temp/1000;smg1= temp%1000/100;smg2= temp%100/10;smg3= temp%10; i= 0;void delay(int z)int x,y;for(x=60;x0;x-)for(y=z;y0;y-);DA轉(zhuǎn)換程序方波ORG0000HAJMPMAINORG0030HMAIN:SETBP3.4SETBP3.5MOVP1,#0FFHCLRP3.4CLRP3.5LCALLDELAYSETBP3.4SETBP3.5MOVP1,#00HCLRP
42、3.4CLRP3.5LCALLDELAYSETBP3.4SETBP3.5AJMPMAINDELAY:MOVR7,#200DEL1:MOVR6,#125 DEL2:DJNZR6,DEL2 DJNZR7,DEL1 RET END三角波ORG0000HAJMPMAINORG0030HMAIN:MOVA,#0FFHMAIN1:SETBP3.4SETBP3.5MOVP1,ACLRP3.4CLRP3.5DECACJNEA,#0H,MAIN1MAIN2:INCASETBP3.4SETBP3.5MOVP1,ACLRP3.4CLRP3.5CJNEA,#0FFH,MAIN2AJMPMAINEND正弦波ORG0000H JMPMAIN ORG0030HMAIN:MOV R1,#0FFHMOV DPTR,#TABMOV R2,#80HMAIN1:SETBP3.4SETBP3.5MOVA,R2MOVCA,A+DPTRMOVP1,AMOV A,R2INCAMOVR2,A CLRP3.4CLRP3.5DJNZR1,MAIN1SJMPMAINTAB:DB80H,83H,
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 部編初中歷史八下第1課中華人民共和國(guó)成立教案
- 2025年全球及中國(guó)大型不銹鋼鑄件行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 2025-2030全球化妝品級(jí)枯草菌脂肽鈉行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 2025-2030全球光纖導(dǎo)管靜脈激光治療行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 2025年全球及中國(guó)銅纜高速連接器行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 2025國(guó)際(非獨(dú)占)商標(biāo)使用許可合同
- 2025農(nóng)業(yè)種植生產(chǎn)產(chǎn)銷合同書
- 餐飲業(yè)合同年
- 2025室內(nèi)裝修設(shè)計(jì)合同范本
- 房屋租賃續(xù)簽合同模板
- 2025年湖南高速鐵路職業(yè)技術(shù)學(xué)院高職單招高職單招英語(yǔ)2016-2024歷年頻考點(diǎn)試題含答案解析
- 醫(yī)保政策與健康管理培訓(xùn)計(jì)劃
- 策略與博弈杜塔中文版
- 無(wú)人化農(nóng)場(chǎng)項(xiàng)目可行性研究報(bào)告
- 2024屆上海市金山區(qū)高三下學(xué)期二模英語(yǔ)試題(原卷版)
- 學(xué)生春節(jié)安全教育
- 2024-2025年校長(zhǎng)在教研組長(zhǎng)和備課組長(zhǎng)會(huì)議上講話
- 2025屆江蘇省常州市高級(jí)中學(xué)高三第二次模擬考試語(yǔ)文試卷含解析
- 高三日語(yǔ)一輪復(fù)習(xí)助詞「で」的用法課件
- 2024-2030年中國(guó)銣銫及其化合物行業(yè)深度調(diào)研及投資戰(zhàn)略分析報(bào)告
- 散貨物流行業(yè)市場(chǎng)調(diào)研分析報(bào)告
評(píng)論
0/150
提交評(píng)論