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

正文內(nèi)容

基于51單片機(jī)的led點(diǎn)陣顯示屏系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)設(shè)計(jì)-資料下載頁

2025-06-28 00:32本頁面
  

【正文】 05。168。LED181。218。16193。208。209。161。205。168。LED181。218。1193。208。209。161。205。168。LED181。218。2193。208。176。180。202。253。190。221。181。188。205。168。207。224。166。 176。180。202。253。190。221。181。188。205。168。207。224。166。 176。180。202。253。190。221。181。188。205。168。207。224。166。圖 42 掃描顯示程序原理圖 點(diǎn)陣數(shù)據(jù)表達(dá)方式該顯示系統(tǒng)的顯示數(shù)據(jù)采取縱向取模方向正向的數(shù)據(jù)存儲(chǔ)方式如圖 43, 圖 43 點(diǎn)陣數(shù)據(jù)原理圖 即數(shù)據(jù)是縱向的,一個(gè)像素對(duì)應(yīng)一個(gè)位。8 個(gè)像素對(duì)應(yīng)一個(gè)字節(jié),字節(jié)的位順序是上高下低,比如從上到下 8 個(gè)點(diǎn)的狀態(tài)是“**”(*為黑點(diǎn),為白點(diǎn)),則轉(zhuǎn)換的字模數(shù)據(jù)是 0x82(B1000_0010)。如圖(43) 所示,一幅 1616 的點(diǎn)陣畫面點(diǎn)陣數(shù)據(jù)按照 B1B2B3……B31B32 存儲(chǔ)。所以一幅畫面的數(shù)據(jù)量為 32 字節(jié)。畫面顯示時(shí)選通的第 i 列對(duì)應(yīng)的數(shù)組元素為第 i 和 i+16 個(gè)元素 [16]。 顯示程序的設(shè)計(jì) 顯示程序分為靜態(tài)顯示程序、左移顯示、右移顯示、上移顯示、下移顯示五種種顯示方式。其中上下左右移動(dòng)程序都調(diào)用了靜態(tài)顯示程序?yàn)樽映绦?。靜態(tài)顯示程序流程圖如圖 44 所示: 圖 44 靜態(tài)顯示程序流程圖顯示采用的是列掃描的顯示方式,選通一列后按照列與數(shù)據(jù)元素的對(duì)應(yīng)關(guān)系第讀取顯示數(shù)據(jù)依次選通列,行 74LS164 的CLOCK 端置低,鎖存器禁止輸出對(duì)應(yīng)行數(shù)組元素與 0X01 相與,相與結(jié)果寫入單片機(jī)端口輸出數(shù)組元素右移一位,對(duì)應(yīng)74LS164 CLOCK 端置高右移次數(shù)是否為 8?鎖存器允許輸出初 始 化NY開 始i 列對(duì)應(yīng)的行數(shù)據(jù)為數(shù)組中的第 i 和第 i+16 個(gè)元素。將對(duì)應(yīng)元素的由低至高位依次從端口輸出具體做法為將元素向右邏輯移位后再與 0X01 相與,所得結(jié)果通過單片機(jī)端口輸出到串并轉(zhuǎn)換器的 A 端,鎖存在鎖存器里完成一列數(shù)據(jù)移位后再將其輸出。如此依次循環(huán)選通各列來顯示所需畫面 [17]。207。212。 202。190。207。212。202。190。253。233。212。170。203。216。218。202。253。233。214。208。181。196。206。187。214。195。199。176。/186。243。210。198。187。206。182。193。200。235。207。212。202。190。253。233。NY207。212。 202。190。207。212。202。190。253。233。212。170。203。216。194。223。188。243。/211。210。198。187。206。210。198。206。187。180。206。202。253。199。241。170。16182。193。200。235。207。212。202。190。253。233。NY191。170。 202。188。 191。170。 202。188。210。198。206。187。180。206。202。253。199。241。170。16圖 45 左右移/上下移程序流程圖 動(dòng)態(tài)顯示程序流程如圖 45 所示,根據(jù)顯示數(shù)據(jù)的存儲(chǔ)原理通過改變實(shí)際 LED列與數(shù)據(jù)邏輯列的方法來實(shí)現(xiàn)程序的左右移動(dòng)。顯示數(shù)據(jù)與列的對(duì)應(yīng)關(guān)系為:第 i列對(duì)應(yīng)的數(shù)據(jù)為數(shù)組中 i 和第 2i 個(gè)數(shù)據(jù)。所以當(dāng) ULN2803 選通時(shí),而送入后一列的數(shù)據(jù)則相當(dāng)于畫面左移移位,同理送入前一列數(shù)據(jù)相當(dāng)于右移一位。如此循環(huán)則產(chǎn)生一幅穩(wěn)定運(yùn)動(dòng)的畫面。 顯示數(shù)組中,第 1 至 16 個(gè)元素的第 8 至第 1 位 LED 顯示屏中的第 1 至第 8 行。同理第 17 至 32 個(gè)元素的第 8 至第 1 位 LED 顯示屏中的第 9 至第 16 行。所以將元素?cái)?shù)據(jù)進(jìn)行邏輯位移便能產(chǎn)生上下移動(dòng)的效果 [18]。 通信程序的設(shè)計(jì)系統(tǒng)采用串行中斷的方式進(jìn)行通信。MCS51 單片機(jī)的五個(gè)中斷源兩種類型:一類是外部中斷源;另一類是內(nèi)部中斷源,包括兩個(gè)定時(shí)器/計(jì)數(shù)器(T0 和 T1)的溢出中斷和串行口的接收和發(fā)送中斷。MCS51 單片機(jī)設(shè)置了 4 個(gè)專用寄存器用于中斷控制,分別為定時(shí)器控制寄存器(TCON) ,串行口中斷控制器( SCON) ,中斷允許控制寄存器(IE ) ,中斷優(yōu)先級(jí)控制寄存器(IP) 。編程時(shí)通過設(shè)置其狀態(tài)來管理中斷系統(tǒng)。在編輯中斷程序時(shí)首先是將中斷控制寄存器(IE)初始化。其控制位分布如表。EA 為中斷允許總控制位,EA=1 時(shí) CPU 開發(fā)中斷;EA=1 時(shí)。CPU 屏蔽所有中斷。ES、ET 、EXET0 、EX0 為對(duì)應(yīng)的串行口中斷、定時(shí)器 /計(jì)數(shù)器 1 中斷、外部中斷1 中斷、定時(shí)器/計(jì)數(shù)器 0 中斷、外部中斷 0 中斷的中斷允許位。對(duì)應(yīng)位為 1 時(shí)允許其中斷,對(duì)應(yīng)位為 0 時(shí),禁止其中斷。表 41 中斷允許寄存器格式 所以初始化時(shí)設(shè)定中斷允許寄存器初值為 0XFF,指令為 IE=0XFF。程序設(shè)計(jì)時(shí)還要考慮到中斷優(yōu)先級(jí)的問題。因?yàn)椴煌闹袛嗤瑫r(shí)產(chǎn)生而 CPU 響應(yīng)的順序取決于內(nèi)部查詢順序。設(shè)置串口工作方式 1,波特率 9600,計(jì)算可得計(jì)數(shù)器初值的十六進(jìn)制表示為0XFD。通信協(xié)議如表 42 所示:表 42 串口通信數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu) 第 1 個(gè)字節(jié) 第 2 至第 33 個(gè)字節(jié) 第 34 個(gè)字節(jié)內(nèi)容 起始標(biāo)志位‘S’ 顯示數(shù)據(jù) 控制指令作用 判斷是否開始接收數(shù)據(jù) LED 的顯示內(nèi)容 控制 LED 顯示方式具體串口中斷程序流程圖如圖 46 所示,在主程序中先進(jìn)行了串行中斷的初始化,初始化內(nèi)容包括了串行工作方式選擇,波特率的設(shè)定,計(jì)數(shù)初值的設(shè)定。程序開始進(jìn)入中斷等待,當(dāng) PC 機(jī)向單片機(jī)發(fā)送數(shù)據(jù)時(shí)產(chǎn)生中斷接收允許位 RI 置 1,將SBUF(緩沖寄存器)中的值輸入到暫存器中進(jìn)行數(shù)據(jù)處理。首先判斷數(shù)據(jù)是否設(shè)定的起始標(biāo)志位‘S’如果是則開始接收起始位后的 33 個(gè)字節(jié),不是則中斷返回繼續(xù)等待。接收到第 34 個(gè)字節(jié)后便將收到的數(shù)據(jù)發(fā)送回 PC 機(jī)進(jìn)行驗(yàn)證比較。D7 D6 D5 D4 D3 D2 D1 D0EA — — ES ET1 EX1 ET0 EX0 圖 46 通信程序流程圖所有軟件編寫完成后都必須經(jīng)過編譯才能被單片機(jī)識(shí)別使用。為了減小軟件的修改和優(yōu)化難度,先把各子程序?qū)憺橐粋€(gè)可單獨(dú)執(zhí)行的完整程序。各子程序編譯沒有錯(cuò)誤后再輸入單片機(jī)進(jìn)行驗(yàn)證,這兩項(xiàng)都通過后再將所有的程序整合到一起形成一個(gè)完整的程序再進(jìn)行編譯和驗(yàn)證。詳細(xì)程序見附錄 2。RI=1?接收串口數(shù)據(jù)起始位‘S’接收起始位后 33 位數(shù)據(jù)接收到第 34 位?將第 2 位起的 32位數(shù)據(jù)發(fā)回 PC 機(jī)NNNYYY中斷開始中斷返回第 5 章 系統(tǒng)調(diào)試硬件制作和軟件編寫過后,得出實(shí)物如圖 51 所示。實(shí)物完成后必須對(duì)其進(jìn)行調(diào)試,檢查設(shè)計(jì)功能是否實(shí)現(xiàn)了。軟件硬件完成后開始進(jìn)行調(diào)試。調(diào)試可分為硬件調(diào)試,軟件調(diào)試和系統(tǒng)聯(lián)合調(diào)試。圖 51 實(shí)物圖 系統(tǒng)硬件部分調(diào)試方法硬件調(diào)試主要是調(diào)試各部分的焊接是否合格和各芯片的輸出輸入電壓是否符合設(shè)計(jì)要求,最后測試各硬件部分能否完成設(shè)計(jì)功能。因此把硬件調(diào)試按照以下四部分分步來進(jìn)行:(1)測試所有焊點(diǎn)是否有短路和虛焊的現(xiàn)象存在;(2)通電測試所有硬件芯片的輸入輸出電壓是否在設(shè)計(jì)要求的范圍內(nèi);(3)測試 ISP 下栽線的功能是否能夠?qū)崿F(xiàn);(4)測試串口系統(tǒng)的通信功能是否能夠?qū)崿F(xiàn)。由于最重要的顯示系統(tǒng)功能的測試需要軟件配合所以在硬件調(diào)試部分只測試單片機(jī)復(fù)位電平,功能部分測試放在系統(tǒng)聯(lián)合調(diào)試部分來完成。 短路與虛焊檢測 檢測工具為萬用表,使用萬用表的短路報(bào)警功能,逐個(gè)測試相臨的兩個(gè)焊點(diǎn)檢測是否短路。按照電路圖檢測需要連接的兩點(diǎn)是否短路來檢測是否已經(jīng)連接上,以此來檢測虛焊的情況。檢測和修改完成后為下一步通電檢測排除了短路的危險(xiǎn)和由于虛焊引起檢測結(jié)果不真實(shí)的麻煩。 上電測試由于系統(tǒng)測試時(shí)是采用 USB 電源為系統(tǒng)電源,所以電源輸入都為 5V。顯示系統(tǒng)中單片機(jī)、譯碼器,鎖存器,驅(qū)動(dòng)電路的電源電壓均要求為 5V 所以可同時(shí)直接接入。上電后首先觀察電路是否有過熱,異味,冒煙的現(xiàn)象出現(xiàn)。經(jīng)過觀察,沒有這些現(xiàn)象出現(xiàn)。然后測試各器件的電源,接地及一些電平應(yīng)該固定的端口的電壓。測試的結(jié)果為:各器件電源端在 ~ 之間滿足器件的電源電壓要求,單片機(jī)端口在未接負(fù)載時(shí)端口電壓為 。 串口調(diào)試串口部分的作用為單片機(jī)與 PC 機(jī)之間通信,要檢查硬件是否正常工作可以采用將 MAX232 芯片的單片機(jī)端輸出口與輸入口直接相連的辦法來測試。具體電路圖如圖 52 所示,將 MAX232 的第 10 端和第 9 端直接短接。功能上表示將單片機(jī)的輸出口與輸入口直接相連,單片機(jī)收到數(shù)據(jù)的同時(shí)就將數(shù)據(jù)發(fā)送回 PC 機(jī)。如果發(fā)送的數(shù)據(jù)能夠被接收則證明串口通信部分的硬件是正常的。 【19】 將串口與電腦 COM1相接,通過串口調(diào)試助手發(fā)送不同位數(shù)的數(shù)據(jù)再在把發(fā)送的數(shù)據(jù)與接收數(shù)據(jù)相比較。C1+1 VDD 2C13C2+4C25VEE 6T2OUT 7R2IN 8R2OUT9T2IN10T1IN11R1OUT12 R1IN 13T1OUT 14GND15VCC 165MAX232ACPE12345678911101D Connector 9C1104C2104C3104C4104VCC TX RXVCC圖 52 串口硬件調(diào)試 系統(tǒng)軟件調(diào)試方法由于已經(jīng)進(jìn)行了硬件調(diào)試,所以軟件調(diào)試主要是軟件編譯和將各功能塊程序分別寫入以驗(yàn)證其功能的可實(shí)現(xiàn)性。在進(jìn)行功能調(diào)試前必須用 KEIL C 對(duì)所有程序進(jìn)行編譯, 后方可進(jìn)行功能測試。其中測試串口程序的功能是否完善不但要連接單片機(jī)系統(tǒng)還要借助串口調(diào)試工具。串口調(diào)試工具選用的是串口調(diào)試助手,其功能是按照設(shè)定的串口、波特率向單片機(jī)發(fā)送數(shù)據(jù)和接收單片機(jī)向 PC 機(jī)發(fā)送的數(shù)據(jù)。并且能把發(fā)送和接收的數(shù)據(jù)內(nèi)容顯示在狀態(tài)欄內(nèi)。因此只要設(shè)定 PC 機(jī)向單片機(jī)發(fā)送的內(nèi)容和單片機(jī)向 PC 機(jī)發(fā)送的內(nèi)容就可以通過串口調(diào)試助手驗(yàn)證串口通信是否準(zhǔn)確,是否滿足功能要求。串口程序的設(shè)計(jì)為:設(shè)定波特率位 9600,以 0XAA 為起始標(biāo)志位,單片機(jī)接收自起始標(biāo)志位后的 32 位十六進(jìn)制數(shù)再發(fā)送會(huì) PC 機(jī)。測試程序時(shí)設(shè)定波特率為9600,選擇串口 1,無校驗(yàn),8 位數(shù)據(jù)。PC 機(jī)向單片機(jī)發(fā)送的內(nèi)容為 aa 11223344556677889900aabbccddeeff11223344556677889900aabbccddeeff。PC 機(jī)收到的數(shù)據(jù)為 11 22 33 44 55 66 77 88 99 00 AA BB CC DD EE FF 11 22 33 44 55 66 77 88 99 00 AA BB CC DD EE FF。測試表明串口程序和串口電路實(shí)現(xiàn)了設(shè)計(jì)目的。再進(jìn)行數(shù)次不同數(shù)據(jù)的發(fā)送,接收到的數(shù)據(jù)也驗(yàn)證了設(shè)計(jì)要求的實(shí)現(xiàn)。圖 53 串口調(diào)試圖串口程序測試成功后為顯示程序提供了準(zhǔn)確的顯示內(nèi)容。余下得各種顯示程序和中斷程序都編譯成功后只有聯(lián)合硬件才能驗(yàn)證其功能的可行性。 系統(tǒng)聯(lián)合調(diào)試及結(jié)果經(jīng)過硬件調(diào)試和軟件調(diào)試,排除了硬件的連接問題和驗(yàn)證了串口功能的可實(shí)現(xiàn)性。其余功能的軟件便可以在此基礎(chǔ)上調(diào)試驗(yàn)證其功能的正確性。聯(lián)合調(diào)試的具體方法如下:(1)編寫一個(gè)逐點(diǎn)掃描的顯示程序,再結(jié)合硬件電路運(yùn)行。這樣做的目的在于檢測各器件是否能夠正常運(yùn)行和顯示屏的各個(gè) LED 燈是否有損壞。結(jié)果顯示顯示屏中只有邊角出有一個(gè) LED 燈被燒壞,其他器件邏輯功能運(yùn)行正常。(2)將靜態(tài)顯示子程序與各種動(dòng)態(tài)顯示程序結(jié)合硬件電路進(jìn)行調(diào)試。系統(tǒng)運(yùn)行時(shí)顯示如圖 51 所示,顯示圖像比較清晰,各動(dòng)態(tài)顯示效果也能夠?qū)崿F(xiàn)。但顯示存在兩個(gè)問題。一是發(fā)光點(diǎn)的下方會(huì)出現(xiàn)一個(gè)很微弱的亮點(diǎn),影響了整體的顯示效果。二是同一列的 LED 燈被點(diǎn)亮的數(shù)量與其亮度出反比,即如果同一列的燈都被點(diǎn)亮則亮度比只點(diǎn)亮幾個(gè)時(shí)要暗一點(diǎn)。(3)將串口通信,顯示,硬件聯(lián)合調(diào)試。按照設(shè)定的通信協(xié)議,先由 PC 機(jī)向單片機(jī)發(fā)送起始控制字 s,接著再發(fā)送 32 比特的顯示數(shù)據(jù),最后發(fā)送控制顯示方式的顯示控制字。再發(fā)送不同的顯示數(shù)據(jù)和顯示控制字,觀察各種顯示方式的運(yùn)行情況和各種顯示方式之間的切換情況。結(jié)果是顯示屏執(zhí)行顯示控制指令,顯示所發(fā)送的內(nèi)容。 調(diào)試結(jié)果分析對(duì)調(diào)試中出現(xiàn)的問題進(jìn)行了分析,得出以下原因和修改辦法。(1)硬件的工作表現(xiàn)出不穩(wěn)定,主要是表現(xiàn)在 LED 顯示屏的驅(qū)動(dòng)電路部分和單片機(jī)系統(tǒng)部分。具體表現(xiàn)為單片機(jī)接負(fù)載后電壓被拉低值 左右,無法滿足譯碼電路的輸入要求。顯示時(shí)會(huì)有一些行驅(qū)動(dòng)的輸出不夠設(shè)計(jì)指標(biāo) ,導(dǎo)致所驅(qū)動(dòng)的那一行在顯示屏上表現(xiàn)為選定的點(diǎn)不能夠很好區(qū)分,圖像出現(xiàn)模糊。分析造成這一現(xiàn)象的原因?yàn)椋附訒r(shí)三極管 8550 遭到了高溫?fù)p壞以致工作不穩(wěn)定和焊接的電路不夠牢靠,還有就是 8550 的 e 端所接電壓過高。修改辦法為將單片機(jī)輸出端口外接 5K 的上拉電阻,替換損壞三極管。(2)虛點(diǎn)的產(chǎn)生與軟件和三極管電壓有關(guān)。修改辦法是將軟件中的延時(shí)時(shí)間調(diào)至恰當(dāng)值,將 8550 的 e 端電壓降至 3V 左右。經(jīng)過調(diào)試和修改,系統(tǒng)實(shí)現(xiàn)了題目所要求的中英文顯示,動(dòng)態(tài)顯示及上位機(jī)通信與控制的要求。 結(jié) 論經(jīng)過一段時(shí)間的工作,終于完成了基于 51 單片機(jī)的 LED 顯示系統(tǒng)的設(shè)計(jì),項(xiàng)目所要求的功能全部達(dá)到。通過這次設(shè)計(jì)收獲頗多,不僅是所作題目涉及到的軟硬件知識(shí)還有更為重要的實(shí)際經(jīng)驗(yàn)和過程中所發(fā)現(xiàn)的問題。接手題目之后從互聯(lián)網(wǎng)上對(duì) LED 進(jìn)行了詳細(xì)的資料收集,從技術(shù)和產(chǎn)業(yè)的兩方面對(duì) LED 進(jìn)行了了解。通過了解我認(rèn)識(shí)到 LED 是一門當(dāng)今應(yīng)用非常廣泛的技術(shù),整個(gè)產(chǎn)業(yè)每年都會(huì)有巨大的產(chǎn)值而且技術(shù)還在不斷發(fā)展和創(chuàng)新 [20]。從設(shè)計(jì)之初就確定了參照大屏幕顯示屏的實(shí)現(xiàn)方法和實(shí)際情況設(shè)計(jì)一款小屏幕的 LED
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1