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

正文內(nèi)容

基于單片機(jī)at89c52的led點(diǎn)陣設(shè)計(jì)-wenkub

2022-11-14 19:35:19 本頁面
 

【正文】 蘇州工業(yè)園區(qū)職業(yè)技術(shù)學(xué)院 2020 屆畢業(yè)項(xiàng)目 摘 要 本設(shè)計(jì)是 基于 AT89C52的 4個(gè) 8 8點(diǎn)陣 LED 電子顯示屏的設(shè)計(jì)。文中詳細(xì)介紹了 LED點(diǎn)陣顯示的硬件設(shè)計(jì)思路 、硬件電路各個(gè)部分的功能及原理、相應(yīng)軟件的程序設(shè)計(jì) 等。這樣做雖然能在一定程度上提高數(shù)據(jù)處理速度,但是并不能完全滿足所有顯示效果要求,而且開發(fā)和產(chǎn)品成本也會(huì)隨之成倍增加,甚至由于其設(shè)計(jì)不當(dāng)可能在顯示時(shí)出現(xiàn)抖動(dòng)、閃爍、重影等現(xiàn)象。單片機(jī)由 芯片 內(nèi)僅有 CPU 的專用 處理器 發(fā)展而來。概括的講:一塊芯片就成了一臺(tái)計(jì)算機(jī)。通過不同的程序?qū)崿F(xiàn)不同的功能,尤其是特殊的獨(dú)特的一些功能,這是別的器件需要費(fèi)很大力氣才能做到的,有些則是花大力氣也很難做到的。 在訪問外部數(shù)據(jù)存儲(chǔ)器或程序存儲(chǔ)器時(shí),這組口線分時(shí)轉(zhuǎn)換地址(低 8 位)和數(shù)據(jù)總線復(fù)用,在訪問期間激活內(nèi)部上拉電阻。 表 1 和 的第二功能 引腳號(hào) 功能特性 T2,時(shí)鐘輸出 T2EX(定時(shí) /計(jì)數(shù)器 2) P2 口 : P2 是一個(gè)帶有內(nèi)部上拉電阻的 8 位雙向 I/O 口 。 P3 口輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流) 4 個(gè) TTL 邏輯門電路。 RST: 復(fù)位輸入。要注意的是:每當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過一個(gè)ALE 脈沖。此外,該引腳會(huì)被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置 ALE 禁止位無效。欲使 CPU 僅訪問外部程序存儲(chǔ)器(地址為 0000H— FFFFH), EA 端必須保持低電平(接地)。 XTAL1: 振蕩器反相放大器的及內(nèi)部時(shí)鐘發(fā)生器的輸入端。定時(shí) /計(jì)數(shù)器 2 的控制和狀態(tài)位位于 T2CON(參見表 3) T2MOD(參見表 4),寄存器對(duì)( RCAO2H、蘇州工業(yè)園區(qū)職業(yè)技術(shù)學(xué)院 2020 屆畢業(yè)項(xiàng)目 第 4 頁 共 23 頁 RCAP2L)是定時(shí)器 2 在 16 位捕獲方式或 16 位自動(dòng)重裝載方式下的捕獲 /自動(dòng)重裝載 寄存器。 例如,下面的直接尋址指令訪問特殊功能寄存器 0A0H(即 P2 口)地址單元。 定時(shí)器 2: 定時(shí)器 2 是一個(gè) 16 位定時(shí) /計(jì)數(shù)器。 在計(jì)數(shù)工作方式時(shí),當(dāng) T2 引腳上外部輸入信號(hào)產(chǎn)生由 1 至 0 的下降沿時(shí),寄存器的值加 1,在這種工作方式下,每個(gè)機(jī)器周期的 5SP2 期間,對(duì)外部輸入進(jìn)行采樣。 中斷 : AT89C52 共有 6 個(gè)中斷向量:兩個(gè)外中斷( INT0 和 INT1), 3 個(gè)定時(shí)器中斷(定時(shí)器0、 2)和串行口中斷。 定時(shí)器 0 和定時(shí)器 1 的標(biāo)志位 TF0 和 TF1 在定時(shí)器溢出那個(gè)機(jī)器周期的 S5P2 狀態(tài)置位,而會(huì)在下一個(gè)機(jī)器周期才查詢到該中斷標(biāo)志。對(duì)外接電容 C C2 雖然沒有十分嚴(yán)格的要求,但電容容量的大小會(huì)輕微影響振蕩頻率的高低、振蕩器工作的穩(wěn)定性、起振的難易程序及溫度穩(wěn)定性,如果使用石英晶體,我們推薦電容使用 30pF177。 這種情況下,外部時(shí)鐘脈沖接到 XTAL1 端,即內(nèi)部時(shí)鐘發(fā)生器的輸入端, XTAL2 則懸空。所以多種規(guī)格的顯 示板配合不同技術(shù)的控制器就可以組成許多種LED 顯示屏,以滿足不同環(huán)境,不同顯示要求的需要。而藍(lán)色和純綠色 LED 的開發(fā)已經(jīng)達(dá)到了實(shí)用階段。 蘇州工業(yè)園區(qū)職業(yè)技術(shù)學(xué)院 2020 屆畢業(yè)項(xiàng)目 第 6 頁 共 23 頁 第 二 章 功能要求及方案論證 功能要求 用移動(dòng)顯示屏來顯示漢字,通過單片機(jī) AT89C52 的行 掃描 和 74LS138 芯片的列 掃描 使點(diǎn)陣顯示屏移動(dòng)顯示“歡迎您 光臨 !”的字幕。例如如果想使左上角 LED 點(diǎn)亮,則 Y0=1, X0=0 即可。本電路使用 AT89C52 實(shí)現(xiàn)行驅(qū)動(dòng)從上至下的掃描, 用 74LS138 和三極管實(shí)現(xiàn)列驅(qū)動(dòng) ,對(duì)顯示模塊從左至右的掃描,然后顯示字符。這樣數(shù)碼管的每一段均應(yīng)由一條輸出線來控制,每顯示一位數(shù)碼需要 8 根輸出線,當(dāng) N位顯示則需 N 8 根輸出控制線。位線控制某位選通時(shí),該位應(yīng)顯示數(shù)碼的段碼同時(shí)加在段碼線上,即每一時(shí)刻僅僅有一位數(shù)碼管是被點(diǎn)亮的,當(dāng)輪流顯示的速度較快(每秒 24 次以上),由于人眼的視覺暫留現(xiàn)象,看起來就像所有位同時(shí)顯示一樣,這時(shí),我們就能看到穩(wěn)定的圖像了 由于單片機(jī)的特性,我們將采用方案 2:動(dòng)態(tài)顯示方式,采用動(dòng)態(tài)顯示方式進(jìn)行顯示時(shí),每一行有一個(gè)行驅(qū)動(dòng)器,各行的同名列共用一個(gè)驅(qū)動(dòng)器。 蘇州工業(yè)園區(qū)職業(yè)技術(shù)學(xué)院 2020 屆畢業(yè)項(xiàng)目 第 8 頁 共 23 頁 數(shù)據(jù)傳輸方案論證 顯然,采用并行方式時(shí),從控制電路到列驅(qū)動(dòng)器的線路數(shù)量大,相應(yīng)的硬件數(shù)目多。這樣,對(duì)于一行的顯示過程就可以分解成列數(shù)據(jù)準(zhǔn)備(傳輸)和列數(shù)據(jù) 顯示兩部分。為了達(dá)到重疊處理的目的,列數(shù)據(jù)的顯示就需要具有鎖 存功能。圖 4為顯示屏電路實(shí)現(xiàn)的結(jié)構(gòu)框圖。 圖 5 時(shí)鐘電路 AT89C52 單片機(jī)芯片內(nèi)部有一個(gè)反向放大器構(gòu)成的振蕩器, XTAL1 和 XTAL2 分別為振蕩器 電路的輸入端和輸出端,時(shí)鐘可由內(nèi)部和外部生成,在 XTAL1 和 XTAL2 引腳上外接定時(shí)元件,內(nèi)部振蕩電路就會(huì)產(chǎn)生自激振蕩。在有時(shí)碰到干擾時(shí)會(huì)造成錯(cuò)誤復(fù)位,但是大多數(shù)條件下,不會(huì)出現(xiàn)單片機(jī)錯(cuò)誤復(fù)位,而可能會(huì)引起內(nèi)部某些寄存器錯(cuò)誤復(fù)位,在復(fù)位端加一個(gè)去藕電容, 則會(huì)得到很好的效果。 圖 7 74LS138 引腳圖 驅(qū)動(dòng)電路的構(gòu)成 本設(shè)計(jì)的驅(qū)動(dòng)電路由電阻和 PNP 的三極管構(gòu)成,由三 極管將電流放大,再通過三極管的集電極輸出給點(diǎn)陣顯示屏,使其足夠亮,驅(qū) 動(dòng)電路的電阻值是采用 歐姆的電阻,其驅(qū)動(dòng)電壓為 5V。 LED 驅(qū)動(dòng)電路的主要功能是將交流電壓轉(zhuǎn)換為恒流電源,并同時(shí)完成與 LED 的電壓和電流的匹配。程序中將數(shù)據(jù)存儲(chǔ)器分為三個(gè)區(qū):顯示緩沖區(qū)、數(shù)據(jù)存儲(chǔ)區(qū)和接收緩沖區(qū)。其程序流程 圖如圖11所示。對(duì)單片機(jī)設(shè)置完畢后就可以開始仿真了。在 PROGRAM FILE 中,單擊文件夾圖標(biāo),選擇“程序 ”文件后,即可對(duì)系統(tǒng)進(jìn)行仿真,整個(gè)系統(tǒng)的仿真 如圖 13 所示。使用起來非常方便。 謝謝! 蘇州工業(yè)園區(qū)職業(yè)技術(shù)學(xué)院 2020 屆畢業(yè)項(xiàng)目 第 18 頁 共 23 頁 附錄:源程序 顯示驅(qū)動(dòng)程序 p=amp。i++) //顯示左半邊屏幕 { P0=*(p+offset+2*i)。 P2=i|0x10。i++) //顯示右半邊屏幕 { P0=*(p+offset+2*i)。 P2=(i8)|0x40。 sbit SCLT=DATAOUT^2。 void display()。 void delay(unsigned int a)。 code unsigned char guang[32]={//光 0x01,0x00,0x21,0x08,0x11,0x08,0x09,0x10,0x09,0x20,0x01,0x00,0xFF,0xFE,0x04,0x40, 蘇州工業(yè)園區(qū)職業(yè)技術(shù)學(xué)院 2020 屆畢業(yè)項(xiàng)目 第 20 頁 共 23 頁 0x04,0x40,0x04,0x40,0x04,0x40,0x08,0x42,0x08,0x42,0x10,0x42,0x20,0x3E,0xC0,0x00, }。i32。 } } void display() { unsigned char i,ia,j,tmp。i16。ia0。j8。 tmp=1。 AB=1。 SCK=1。 } } void displaymovetb(unsigned char din,unsigned char *lp,unsigned char timer) { unsigned char i=0,j=0,ia=0。 while(i){ j=30。 lhj[1]=0。 lhj[0]=lp[ia]。 for(i=0。j++) lhj[j]=lhj[j+2]。 lhj[31]=lp[ia+1]。 } } } void delay(unsigned int a) //延時(shí) { while(a)。 } timerc=timer。 lhj[31]=0。i++){ 蘇州工業(yè)園區(qū)職業(yè)技術(shù)學(xué)院 2020 屆畢業(yè)項(xiàng)目 第 22 頁 共 23 頁 for(j=0。 while(timer
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1