基于51單片機(jī)的LED點(diǎn)陣顯示屏設(shè)計(jì)通信技術(shù)專業(yè)
《基于51單片機(jī)的LED點(diǎn)陣顯示屏設(shè)計(jì)通信技術(shù)專業(yè)》由會(huì)員分享,可在線閱讀,更多相關(guān)《基于51單片機(jī)的LED點(diǎn)陣顯示屏設(shè)計(jì)通信技術(shù)專業(yè)(40頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、III 目錄 摘要 II Abstract III 第一章 緒論 1 1.1 課題背景 1 1.2 選題意義 1 1.3 論文主要內(nèi)容 1 第二章 方法論證對(duì)比 3 2.1 單片機(jī)編程語言 3 2.2 控制系統(tǒng)設(shè)計(jì) 3 2.3 顯示方式 3 第三章 系統(tǒng)硬件設(shè)計(jì) 4 3.1 總體硬件設(shè)計(jì) 4 3.2 系統(tǒng)各硬件電路介紹 5 3.2.1 電源電路設(shè)計(jì)介紹 5 3.2.2 復(fù)位電路 5 3.2.3 晶振電路 6 3.2.4 按鍵電路 6 3.2.5 點(diǎn)陣驅(qū)動(dòng)模塊設(shè)計(jì)實(shí)現(xiàn) 7 3.2.6 通信系統(tǒng)硬件設(shè)計(jì)? 8 第四章 重要器件介紹 9
2、 4.1 LED點(diǎn)整顯示屏介紹 9 4.2 限流電阻 10 第五章 系統(tǒng)軟件設(shè)計(jì) 11 6.1 軟件整體介紹 11 6.2 顯示驅(qū)動(dòng)程序 12 6.3 系統(tǒng)主程序 13 第六章 系統(tǒng)的創(chuàng)作過程與調(diào)試 14 6.1 電路制作過程 14 6.1.1 設(shè)計(jì)原理圖 15 6.1.2設(shè)計(jì)PCB圖 15 6.1.3 硬件仿真 16 6.1.4轉(zhuǎn)印PCB 16 6.1.5腐蝕和打孔 16 6.1.6焊接元器件 17 6.2 硬件調(diào)試過程 17 6.3 軟件調(diào)試過程 17 總結(jié) 18 參考文獻(xiàn) 19 致謝 20 附錄一 21 附錄二 23 附錄三 24
3、基于51單片機(jī)的LED點(diǎn)陣顯示屏設(shè)計(jì) 摘要 本次設(shè)計(jì)的核心??刂茐K所用的芯片型號(hào)是STC89C52單片機(jī),我們使用4塊帶鎖存功能的串并轉(zhuǎn)換芯片74HC595外加NPN三極管作為16×16LED點(diǎn)陣顯示屏的驅(qū)動(dòng)。用PC機(jī)作為上位機(jī)與單片機(jī)進(jìn)行通信,實(shí)現(xiàn)顯示內(nèi)容的更新。該系統(tǒng)可以實(shí)現(xiàn)的功能有字符或圖片的動(dòng)態(tài)和靜態(tài)特效顯示,可顯示中、英文字符。而且該系統(tǒng)還帶有級(jí)聯(lián)擴(kuò)展端口,需要擴(kuò)展顯示屏的大小時(shí)直接連接此端口就能實(shí)現(xiàn)。系統(tǒng)采用串行傳輸方式進(jìn)行數(shù)據(jù)傳送減少了單片機(jī)I/O口的占用,簡化了電路走線。本次所選用的是價(jià)格便宜,應(yīng)用最廣泛的STC單片機(jī),而且寫入程序也非常方便,這就使得整個(gè)系統(tǒng)成本降
4、低了許多,也方便了系統(tǒng)的維護(hù)和檢修。 關(guān)鍵詞:單片機(jī)STC89C52;74HC595;16x16LED點(diǎn)陣;點(diǎn)陣字庫。 Abstract The core of the design of chip used in the model control block is STC89C52 single-chip microcomputer,we use 4 pieces of string with latch function and conversion chip 74 hc595 ar
5、e needed as a 16 x 16 plus NPN led dot matrix display driver.Using PC as a PC and single chip microcomputer communication, realize the display content updates.The system can realize the function of the characters or images of dynamic and static effects showed that can show Chinese and English charac
6、ters.With cascade expansion port, and the system also needs to extend screen size directly connect to this port.Data transfer system adopts serial transmission way for reducing the number of the SCM I/O port, simplify the circuit line.Is selected for the cheaper price, the most widely used on STC mi
7、crocontroller, and write program is also very convenient, this makes the cost down a lot of, the whole system is convenient for maintenance and overhaul of the system. Key words:single chip STC89C52; 74HC595; 16x16LED lattice; lattice fonts. 第 35 頁 第一章 緒論
8、1.1 課題背景 LED顯示技術(shù)是八十年代后期才迅速發(fā)展起來的新型顯示媒體,LED顯示屏Light Emitting Diode:又叫電子顯示屏,是由幾百甚至幾十萬個(gè)發(fā)光二極管組成的陣列。LED點(diǎn)陣顯示屏在近幾年不論是技術(shù)上還是應(yīng)用范圍方面都有了很大的進(jìn)步,目前已經(jīng)研究出了能發(fā)藍(lán)光和純綠光的LED。LED之所以應(yīng)用越來越廣泛是因?yàn)樗性S多其他器件無法相比的有點(diǎn),例如工作電壓低、亮度高、功耗小、壽命長性能穩(wěn)定、耐沖擊、抗震性強(qiáng)等,這些優(yōu)點(diǎn)使其受到人們的青睞。 目前LED顯示屏的應(yīng)用已十分廣泛了,主要包括:(1)機(jī)場航班動(dòng)態(tài)信息顯示。(2)證券交易、金融信息顯示。(3)港口、車站旅客引導(dǎo)信息提
9、示。(4)道路交通信息顯示。(5)調(diào)度指揮中心信息顯示。(6)廣告媒體新產(chǎn)品等。 LED顯示屏的種類可分為很多種,有室內(nèi)顯示屏、室外顯示屏、單色顯示顯示屏、全彩色顯示屏等。 1.2 選題意義 該設(shè)計(jì)使我們掌握了LED點(diǎn)陣顯示屏的顯示原理以及其硬件電路的設(shè)計(jì)方法,同時(shí)也了解了LED行業(yè)的發(fā)展現(xiàn)狀和趨勢。通過本次設(shè)計(jì)我們鞏固了以前學(xué)過的知識(shí)特別是硬件電路設(shè)計(jì)流程這一塊,而且對(duì)以前所學(xué)的Keil、Protel99、Proteus等設(shè)計(jì)軟件也有了進(jìn)一步的認(rèn)識(shí)和掌握,也使自己的C語言編程的能力得到了提高。其次,本次設(shè)計(jì)也為今后從事相關(guān)方面的工作奠定了一定基礎(chǔ)。因此,此課題無論是對(duì)自己的就業(yè)與今后工
10、作態(tài)度的培養(yǎng)都有非常現(xiàn)實(shí)與積極的意 義。 1.3 論文主要內(nèi)容 論文的結(jié)構(gòu)和主要內(nèi)容安排如下: (1) 設(shè)計(jì)的總體思路 根據(jù)設(shè)計(jì)的特點(diǎn),對(duì)系統(tǒng)的整體設(shè)計(jì)思路進(jìn)行簡單介紹,包括硬件部分和軟件部分。 (2) 方案的論證與對(duì)比 通過收集資料,并參照目前通用的設(shè)計(jì)方法和思路擬定幾套設(shè)計(jì)方案,最后決定選用單片機(jī)為核心控制器件,用C語言來編程,以PC機(jī)為上位機(jī),外加譯碼電路和驅(qū)動(dòng)電路的設(shè)計(jì)及方案。 (3) 系統(tǒng)硬件設(shè)計(jì) 經(jīng)過論證對(duì)比,我們選擇STC89C52單片機(jī)為控制芯片,74HC595作為譯碼器件,三極管8550為驅(qū)動(dòng)器件。在論文中詳細(xì)的列出了
11、這些器件的連接使用方法和重要器件的參數(shù)。 (4) 重要器件介紹 選擇了系統(tǒng)中比較重要的器件對(duì)其參數(shù)等信息做了詳細(xì)的介紹。 (5) 系統(tǒng)軟件設(shè)計(jì) 針對(duì)軟件的整體工作流程和各個(gè)模塊功能做了簡單介紹,對(duì)系統(tǒng)的掃描驅(qū)動(dòng)程序做了比較詳細(xì)的說明。 (6) 系統(tǒng)的制作過程與調(diào)試 分別說明了制作硬件電路的詳細(xì)過程,包括繪制原理圖、繪制PCB、制作電路板和元器件的焊接等幾個(gè)環(huán)節(jié)。最后還多調(diào)試過程中出現(xiàn)的問題進(jìn)行了說明。 (7) 結(jié)論 設(shè)計(jì)完成后對(duì)自己在整個(gè)設(shè)計(jì)過程中所遇到問題,經(jīng)驗(yàn)教訓(xùn)進(jìn)行總結(jié)。 第二章 方法論證對(duì)比 2.1 單片機(jī)編程語言
12、 目前我們針對(duì)單片機(jī)編程這一塊我們只學(xué)習(xí)了匯編語言和C語言兩種,由于我們平時(shí)主要用C語言進(jìn)行編程而匯編語言較少使用,所以最終選擇用C語言進(jìn)行編程。 2.2 控制系統(tǒng)設(shè)計(jì) 方法一:用4塊串并轉(zhuǎn)換芯片74LS164將串行數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù),再接鎖存器74LS373將數(shù)據(jù)鎖存。 方法二:用4塊具有鎖存功能的串并轉(zhuǎn)換芯片74LS595直接將串行數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù)并鎖存。 通過比較方法一所用器件較多,電路較復(fù)雜,而方法二所用器件少是電路得到了簡化,最終我們選定方法二。 2.3 顯示方式 圖文顯示的方式一般有兩種: 方式一:靜態(tài)顯示方式 此種方式的設(shè)計(jì)思路
13、簡單,但連線非常之多,單片機(jī)的管腳占用量非常大。直接經(jīng)點(diǎn)陣顯示屏連接到單片機(jī)上的話顯然是不可能,只有通過鎖存器擴(kuò)展的方式來擴(kuò)展端口,通過計(jì)算16x16的點(diǎn)陣需要256/8=32個(gè)鎖存器。這就是硬件電路變得非常復(fù)雜,而且不利于屏幕的擴(kuò)展。 方式二:動(dòng)態(tài)掃描方式 動(dòng)態(tài)掃描采用的是逐行輪流點(diǎn)亮的方式對(duì)點(diǎn)陣顯示屏的端口進(jìn)行掃描,這樣就可實(shí)現(xiàn)多行的同名端口共同使用同一套驅(qū)動(dòng)器,從而減少單片機(jī)端口的占用率,為單片機(jī)擴(kuò)展其他功能留下了空間。數(shù)據(jù)傳輸時(shí)可采用串行傳輸方式,此時(shí)只用一根信號(hào)線便可將顯示數(shù)據(jù)傳送至列驅(qū)動(dòng)器,這無疑使十分方便和經(jīng)濟(jì)的。 經(jīng)過比較,為了簡化電路提高效率我們最終選擇方式二,
14、采用動(dòng)態(tài)掃描方式。 第三章 系統(tǒng)硬件設(shè)計(jì) 3.1 總體硬件設(shè)計(jì) 總體硬件設(shè)計(jì)框圖如下: 單 片 機(jī) 列驅(qū)動(dòng)器 上位機(jī) 電源電路 16X16LED顯示 點(diǎn)陣 復(fù)位電路 行驅(qū)動(dòng)器 按鍵控制電路 圖3.1 本次設(shè)計(jì)的硬件系統(tǒng)主要有單片機(jī)系統(tǒng)、上位機(jī)、電源電路、復(fù)位電路、按鍵控制電路和點(diǎn)陣驅(qū)動(dòng)電路。其工作流程如下:單片機(jī)與上位機(jī)進(jìn)行串行通信,將顯示內(nèi)容存入單片機(jī)內(nèi)。單片機(jī)接收到顯示內(nèi)容之后,由按鍵控制電路產(chǎn)生中斷信號(hào)控制顯示方式,最后單片機(jī)將顯示代碼送入驅(qū)動(dòng)電路將點(diǎn)陣顯示屏點(diǎn)亮實(shí)
15、現(xiàn)所需要顯示的內(nèi)容。對(duì)該系統(tǒng)所實(shí)現(xiàn)的功能有以下幾點(diǎn)要求: (1)LED點(diǎn)陣顯示屏最小尺寸為16*16,必須滿足至少顯示一個(gè)漢字的要求; (2)可實(shí)現(xiàn)中英文字符,靜態(tài)和動(dòng)態(tài)等兩種以上特效顯示; (3)編寫上位機(jī)軟件,實(shí)現(xiàn)顯示內(nèi)容更新(該功能選作); (4)具有級(jí)聯(lián)擴(kuò)展功能; (5)驅(qū)動(dòng)電路所提供電流、電壓要達(dá)到點(diǎn)陣屏顯示要求,使顯示屏亮度適中。 3.2 系統(tǒng)各硬件電路介紹 3.2.1 電源電路設(shè)計(jì)介紹 圖 3.2.1 電源電路 如圖 ,為電源電路原理圖,我們采用了5V電源直接給系統(tǒng)供電,用六腳開關(guān)控制電
16、源的通斷。因?yàn)?V電源是直接從電腦上取得的比較穩(wěn)定,為了簡化電路就不需要電容濾波了。 3.2.2 復(fù)位電路 圖3.2.2 復(fù)位電路 單片機(jī)復(fù)位只需要在第9腳接持續(xù)通高電平2us就可實(shí)現(xiàn),在電路圖中,電容的的大小是10uF,電阻的大小是10k。所以根據(jù)公式,可以算出電容充電到電源電壓的0.7倍(單片機(jī)的電源是5V,所以充電到0.7倍即為3.5V),需要的時(shí)間是10K*10uF=0.1S。單片機(jī)在啟動(dòng)0.1S內(nèi)會(huì)自動(dòng)復(fù)位。當(dāng)需要手動(dòng)復(fù)位時(shí),按下按鈕電容被短路開始放電,經(jīng)過0.1S R2兩端電壓變?yōu)?.5V,單片機(jī)復(fù)位。 3.2.3 晶振電路 圖 3.2.3
17、 晶振電路 本次設(shè)計(jì)所使用的晶振為12MHz,電容大小為33pF。電容的作用是使電路產(chǎn)生諧振,讓振蕩頻率更加穩(wěn)定。 3.2.4 按鍵電路 圖3.2.4 按鍵控制電路 本次設(shè)計(jì)采用四腳輕觸開關(guān),分別接單片機(jī)P2.0與P2.1口。按鍵S6用于選擇點(diǎn)陣顯示屏的顯示方式,S7用于切換顯示內(nèi)容。P2.0與P2.1沒有接上拉電阻是因?yàn)閱纹瑱C(jī)P2口內(nèi)部已經(jīng)接有上拉電阻外部就無需再接。 3.2.5 點(diǎn)陣驅(qū)動(dòng)模塊設(shè)計(jì)實(shí)現(xiàn) 圖3.2.5 點(diǎn)陣驅(qū)動(dòng)電路 本設(shè)計(jì)所使用的行、列譯碼器均為74HC595,74HC595為帶有鎖存功能的串并轉(zhuǎn)化器。采用譯碼器解決了單片機(jī)端口
18、不足的問題,為單片機(jī)擴(kuò)展提供了跟多空間。 設(shè)計(jì)用到了4片74HC595芯片,該芯片的作用是講串行數(shù)據(jù)轉(zhuǎn)化為并行數(shù)據(jù)進(jìn)行鎖存,最后將數(shù)據(jù)輸出到點(diǎn)陣顯示,如圖3.2.5為該芯片的硬件連接方式。把4片芯片的第11腳相連,然后引出一根線SCK,該線為以為時(shí)鐘輸入引腳;將4片芯片的12腳相連,再引出一根線RCK,該線為存儲(chǔ)器時(shí)鐘輸入引腳;將第一片芯片的SER(數(shù)據(jù)輸入)端接單片機(jī)端口,Q7端接下一塊芯片的SER端,如此級(jí)聯(lián)到第四塊芯片。第四塊芯片的Q7端作為級(jí)聯(lián)擴(kuò)展端使用接到圖中J3,J3為級(jí)聯(lián)擴(kuò)展端接口。該顯示屏可以通過級(jí)聯(lián)擴(kuò)展的方式增加顯示屏的尺寸從而增加顯示內(nèi)容。J2為點(diǎn)陣顯示屏與單片機(jī)模塊的連
19、接端口。 該模塊的具體工作流程為:當(dāng)給SER端輸入串行數(shù)據(jù)信號(hào)后,再給SCK時(shí)鐘輸入引腳輸入高電平經(jīng)延時(shí)適當(dāng)時(shí)間后,串行顯示數(shù)據(jù)被移入以為寄存器中。再給RCK端輸入高電平后,數(shù)據(jù)將會(huì)被鎖存。最后將使能端E接地,就能是顯示數(shù)據(jù)并行輸出。 3.2.6 通信系統(tǒng)硬件設(shè)計(jì)? 圖3.2.6 由于單片機(jī)與PC機(jī)的信號(hào)電平不同,PC機(jī)在傳送數(shù)字“1”時(shí)C采用的是EIA電平,即傳輸線上的電平為-3V~-15V;傳送數(shù)字‘0’時(shí),傳輸線上的電平為+3V~+15V。而單片機(jī)采用的是正邏輯TTL電平,傳輸數(shù)字“1”和“0”時(shí),傳輸線上的電平分別為+5V和-5V。所以如果要使單片機(jī)與
20、PC機(jī)進(jìn)行通信就必須將電平信號(hào)進(jìn)行轉(zhuǎn)換。通過查閱相關(guān)資料得知,可用MAX232芯片講電平信號(hào)進(jìn)行轉(zhuǎn)換,這樣就可實(shí)現(xiàn)單片機(jī)與PC機(jī)之間的通信。如圖3.2.6所示為串行通信模塊原理圖,當(dāng)進(jìn)行通信使LED燈可閃爍提示。 第四章 重要器件介紹 4.1 LED點(diǎn)整顯示屏介紹 圖4.1.1 8×8點(diǎn)陣顯示屏實(shí)物圖 圖4.1.2 單色LED矩陣的內(nèi)部結(jié)構(gòu) LED點(diǎn)陣顯示屏有兩個(gè)類型,一種為共陰極另一種為共陽極。LED的顯示方式是按照顯示碼的傳送順序逐行或逐列顯示。如圖為共陰極點(diǎn)陣顯示屏的管腳排列圖,輪流給行輸出低電平進(jìn)行掃面,
21、給列輸出顯示代碼進(jìn)行即可顯示所要顯示的信息。由于每一行的顯示時(shí)間在4ms左右,閃爍頻率大于人眼的臨界閃爍頻率,所以人眼看到屏幕顯示的內(nèi)容是穩(wěn)定的。本次點(diǎn)陣屏正常工作電流為20mA, 本次設(shè)計(jì)所使用的是共陰極8×8點(diǎn)陣顯示屏,由四塊組成一塊16×16的顯示屏,從而增加顯示內(nèi)容。由于該顯示屏的實(shí)物不好區(qū)分是共陰極的還是共陽極的,這就需要用萬用表進(jìn)行測量。具體方法和步驟如下: 1、 把萬用表轉(zhuǎn)到二極管檔位; 2、 用表筆去接觸點(diǎn)陣顯示屏的任意一只管腳,用紅表筆和黑表筆皆可; 3、 用另一只表筆去測試剩下的所有引腳,看有無二極管被點(diǎn)亮,若只有一種顏色的二極管被點(diǎn)亮就將兩只表筆進(jìn)行兌換;
22、 4、將兌換過的表筆重復(fù)上一步,觀察是否有兩種顏色的二級(jí)管被點(diǎn)亮,若有,則看接固定端的是哪只表筆,若為紅表筆,就是共陽極;若為黑表筆,就是共陰接發(fā)。 4.2、限流電阻 圖4.2 限流電阻 限流電阻的作用是將電流限制在某一范圍,為LED提供穩(wěn)定的工作電流。經(jīng)過查閱相關(guān)資料得知三極管基極正常工作電流為10mA,三極管工作在放大狀態(tài)基極電壓為0.7V,單片機(jī)端口電壓為3.3V。由公式R=U/A,可得限流電阻為R=(3.3-0.7)/20=130Ω,因此電阻選擇150Ω或330Ω皆可。 第五章 系統(tǒng)軟件設(shè)計(jì) 6.1 軟件整體介紹 總體軟件設(shè)計(jì)框圖如下:
23、 按鍵檢測程序 功能函數(shù) 系統(tǒng)主程序 中斷顯示程序 初始化程序 圖6.1 軟件設(shè)計(jì)整體框圖 如圖6.1所示,軟件部分用模塊化的方式來編寫,主要包含5個(gè)模塊:系統(tǒng)主程序、按鍵檢測程序模塊、功能函數(shù)模塊、初始化程序模塊和中斷程序模塊。主程序通過適時(shí)調(diào)用初始化程序和按鍵檢測程序來實(shí)現(xiàn)系統(tǒng)的各相功能,二定時(shí)器T0則負(fù)責(zé)調(diào)用其他程序。中斷顯示程序的主要功能是根據(jù)按鍵產(chǎn)生的中斷信號(hào)將相應(yīng)的顯代碼送入點(diǎn)陣顯示屏,并產(chǎn)生各種相應(yīng)的控制信號(hào),是屏幕按照設(shè)定的參數(shù)顯示。初始化程序的作用的對(duì)系統(tǒng)及相關(guān)變量進(jìn)行初始化。 6.2 顯示驅(qū)動(dòng)
24、程序 顯示驅(qū)動(dòng)程序?qū)Χ〞r(shí)器T0進(jìn)行重新賦值之前首先要進(jìn)入中斷,從而使點(diǎn)陣顯示屏刷新頻率的穩(wěn)定性得以保證。1/16×T0 溢=1/16×f/12(65536-t),其中f為晶振頻率,t等于定時(shí)器T0的初值,定時(shí)器的工作模式是16位的形式。接下來顯示驅(qū)動(dòng)程序開始查詢當(dāng)前點(diǎn)亮行號(hào),通過調(diào)用相關(guān)功能函數(shù)來讀取下一行顯示數(shù)據(jù),并將其打入移位寄存器。由于在換行的時(shí)候會(huì)有余輝現(xiàn)象產(chǎn)生,在此可參照示波器的顯示原理在換行時(shí)將信號(hào)消隱即關(guān)閉顯示。等顯示數(shù)據(jù)被鎖存時(shí)再打開顯示即可解決拖尾現(xiàn)象。程序的流程框圖如下: 進(jìn)入中斷 定時(shí)器賦初值 判斷顯示模式調(diào)用功能函數(shù) 讀取行號(hào)并增加1 對(duì)數(shù)據(jù)進(jìn)行
25、處理 送出處理完成的數(shù)據(jù) 發(fā)送新行號(hào),打開顯示 退出中斷 圖6.1 顯示驅(qū)動(dòng)程序流程圖 6.3 系統(tǒng)主程序 本次設(shè)計(jì)的程序要求能實(shí)現(xiàn)文字和圖形的顯示,并且還有特殊顯示效果例如,靜態(tài)顯示、左移顯示、又移顯示、上移顯示和下移顯示等。而且圖象顯示要清晰不能有亂碼。 主程序一開始先是對(duì)定時(shí)器、中斷端口、寄存器等進(jìn)行初始化;然后調(diào)用按鍵檢測程序,當(dāng)有按鍵按下時(shí),系統(tǒng)判斷當(dāng)前按下選擇了什么播放模式,以及當(dāng)前需要顯示哪一段內(nèi)容。顯示模式和顯示內(nèi)容通過按鍵選定后,當(dāng)下一次中斷來臨時(shí),系統(tǒng)將會(huì)在中斷中對(duì)當(dāng)前的設(shè)置作出回應(yīng),進(jìn)而實(shí)現(xiàn)了按鍵改變顯示模式和顯示內(nèi)容的目的。 單元顯示板上一級(jí)與
26、下一級(jí)采用的是并聯(lián)的形式,即下一級(jí)接收到的信息與上一級(jí)相同。而且還可以將信息傳至下一級(jí),這樣就可以將顯示屏進(jìn)行擴(kuò)展從而顯示更多的內(nèi)容。本程序可隨時(shí)更改顯示內(nèi)容,只要將原來的顯示代碼更改即可。 第六章 系統(tǒng)的創(chuàng)作過程與調(diào)試 6.1 電路制作過程 系統(tǒng)的電路原理圖設(shè)計(jì)與PCB圖繪制好之后,下一步就要是制作電路板。本次設(shè)計(jì)我們采用的PCB設(shè)計(jì)軟件是Protel99。制作流程圖如下: 設(shè)計(jì)原理圖 繪制PCB圖 硬件仿真 轉(zhuǎn)印PCB
27、腐蝕和打孔 焊接元器件 圖6.1硬件電路開發(fā)流程 6.1.1 設(shè)計(jì)原理圖 首先在Protel99中新建工程,然后再建立Schemetic文件。建好后再添加SCH庫,并從庫中選取相應(yīng)與器件放在圖紙中。等元器件放完后在對(duì)其進(jìn)行布局最后進(jìn)行連線。連完線再編輯各個(gè)與器件的信息例如電阻值、電容值、PCB封裝等,最后還得給元器件編流水號(hào),可選擇手動(dòng)編輯和自動(dòng)編輯兩種方式,接下來在Design一欄中選擇生成網(wǎng)絡(luò)表,這樣原理圖就基本繪制完畢了。 6.1.2設(shè)計(jì)PCB圖 在原來的工程文件夾先建立一個(gè)PCB文件夾,建好后再選擇絲印層繪一個(gè)矩形框,該框的
28、大小即是電路板的實(shí)際尺寸。畫好框后再打開原理圖選擇Updata PCB,對(duì)PCB進(jìn)行更新。 更新好后再打開PCB圖并選擇裝入網(wǎng)絡(luò)表,此時(shí)與器件將被導(dǎo)入PCB。之后再改正導(dǎo)入網(wǎng)絡(luò)表時(shí)出現(xiàn)的錯(cuò)誤,很多情況下是因?yàn)镻CB庫里面沒有相應(yīng)的封裝引起的,需要自己畫,畫好后再講庫導(dǎo)入軟件中使用即可。 改正完所有的錯(cuò)誤便可對(duì)元器件進(jìn)行布局,布局時(shí)要盡量將發(fā)熱量大的元器件放置在板子邊緣;接下來要調(diào)整元器件位置盡量減少交叉線;布局時(shí)要使整體結(jié)構(gòu)盡量緊湊減少PCB板的面積。元器件布局完成后便是最重要的一步布線,布線時(shí)線寬要設(shè)置在0.5mm到1mm之間,特別是電源線和地線,線寬要設(shè)置在1mm以上,其余的
29、信號(hào)線設(shè)置為0.5mm左右,這樣既可防止腐蝕的時(shí)候斷線,又便于檢查。 在設(shè)置元器件過孔的時(shí)候要時(shí)刻注意焊盤的大小,焊盤太小可能在打孔的時(shí)候就將其打沒了最后造成無法焊接。在連接走線的時(shí)候不能走直角和銳角,盡量化成鈍角。由于本次設(shè)計(jì)所使用的元器件較少再加上實(shí)驗(yàn)室條件有限我們將板子做成單面板,但畫PCB時(shí)是按照雙面板來畫的,焊接時(shí)的在底層打飛線,這次總共打了54跟飛線。 6.1.3 硬件仿真 原理圖和PCB繪制好之后,為了驗(yàn)證理論的可行性,我們用Prpteus7.0對(duì)硬件部分進(jìn)行了仿真。仿真結(jié)果最后成功了,仿真結(jié)果如圖6.1.3所示。這也就證明我們的設(shè)計(jì)思路沒有錯(cuò),接下來就可以進(jìn)行下一步工作了
30、。 圖6.1.3 硬件仿真圖 6.1.4轉(zhuǎn)印PCB 此次轉(zhuǎn)印PCB我們采用的是熱轉(zhuǎn)印法,首先用噴墨打印機(jī)將PCB圖打印在熱轉(zhuǎn)印紙上,再將覆銅板用酒精洗凈,用電熨斗將圖形印在覆銅板上。 6.1.5腐蝕和打孔 完成熱轉(zhuǎn)印后將覆銅板放入腐蝕液進(jìn)行腐蝕,腐蝕完后再對(duì)板子進(jìn)行打孔。打孔時(shí)要特別注意不要將孔打歪了或焊盤打沒了,最后得再次檢查是否有遺漏的空。 6.1.6焊接元器件 在焊接元器件時(shí)要先焊接矮的元件再焊接高的元件,對(duì)于有極性的元件要特別注意不要焊反了,例如點(diǎn)陣顯示屏、極性電容、三極管等,一旦焊錯(cuò)很可能是整塊板子都廢掉。對(duì)于某些與器件在焊接之前要先放靜電,
31、否則靜電會(huì)使其損壞。在焊接時(shí)上錫要適量,過多過少都容易造成虛焊。 6.2 硬件調(diào)試過程 硬件調(diào)試時(shí)首先檢查是否有虛焊、漏焊和短路的地方。再對(duì)照PCB圖看看飛線有沒有打錯(cuò),元器件是否焊接反了,確認(rèn)無誤后再燒錄測試程序進(jìn)行檢測。 在硬件調(diào)試過程中所出現(xiàn)的問題如下: 1、 在電路焊接完成后,發(fā)現(xiàn)顯示屏根本不會(huì)亮,按鍵也無反應(yīng)。經(jīng)過仔細(xì)的檢查后發(fā)現(xiàn)問題出在單片機(jī)控制電路電源線還差一更沒有連上,后來將其連接好后問題得以解決,顯示屏亮了,按鍵也有反應(yīng)。 2、 在單片機(jī)內(nèi)燒錄進(jìn)測試程序后發(fā)現(xiàn)屏幕出現(xiàn)亂碼,圖象毫無規(guī)律,而且很多地方出現(xiàn)明顯的供電不足現(xiàn)象。經(jīng)過反復(fù)檢查之后發(fā)現(xiàn)電路焊接并沒有問
32、題,也無明顯短路和虛焊,最后我發(fā)現(xiàn)原來是點(diǎn)整顯示屏焊反了。 由于點(diǎn)陣屏引腳非常多若將其取下的話不是件容易的事,也容易將電路板損壞,但從新做一塊板子的話時(shí)間又明顯不夠。最后用同學(xué)說的方法還是將點(diǎn)陣屏去了下來,板子也沒被損壞。將點(diǎn)整屏從新裝過后顯示圖形變得正常了但還是有一些串碼和局部供電不足的現(xiàn)象,經(jīng)檢查發(fā)現(xiàn)是取顯示屏的時(shí)候走線被弄斷了。 將斷了的走線打上飛線后顯示內(nèi)容正常了,也沒有了串碼的和供電不足的現(xiàn)象。 這樣硬件調(diào)試就算成功了。 6.3 軟件調(diào)試過程 軟件調(diào)試的過程花了較長時(shí)間,首先將測試程序燒錄進(jìn)硬件進(jìn)行測試,確定硬件沒有錯(cuò)誤后再將自己寫的程序燒錄進(jìn)行測試。在測試的過程中出現(xiàn)
33、了許多問題如顯示各種亂碼,經(jīng)過對(duì)程序仔細(xì)認(rèn)真的分析過后,最后問題得以解決。最終實(shí)現(xiàn)了所要求的各項(xiàng)功能。 總結(jié) 在經(jīng)過我兩個(gè)多月不斷的努力下設(shè)計(jì)終于終于完成了,本次設(shè)計(jì)能夠?qū)崿F(xiàn)中英文字符以及圖形的顯示,并且LED顯示屏顯示時(shí)無串碼,亮度均勻、清晰。顯示內(nèi)容可實(shí)現(xiàn)以向上、向下、向左、向右滾動(dòng)顯示以及靜態(tài)顯示。系統(tǒng)還可通過擴(kuò)展的方式來增加所要顯示的內(nèi)容。 本系統(tǒng)具有硬件電路簡單,成本低,系統(tǒng)穩(wěn)定性好等優(yōu)點(diǎn)。但也存在著很多缺點(diǎn),例如不能與PC機(jī)進(jìn)行串行通信,實(shí)現(xiàn)顯示內(nèi)容的更新。每次跟心內(nèi)容都得取下單片機(jī)到開發(fā)板上去燒錄程序,這樣容易損壞單片機(jī)。由于時(shí)間
34、有限和老師要求串行通信模塊選做,所以這一塊就沒有做出實(shí)物。今后有時(shí)間再將通信模塊加上相信本設(shè)計(jì)將會(huì)更完美。還有就是電路布局還不合理,擴(kuò)展接口應(yīng)該放在電路板上方,這樣級(jí)聯(lián)擴(kuò)展的時(shí)候就可以減少屏幕間的縫隙使顯示效果得到優(yōu)化。 在此次設(shè)計(jì)中我得到了以下收獲: 1、在這次設(shè)計(jì)中我對(duì)本專業(yè)所學(xué)的知識(shí)有了實(shí)踐性的應(yīng)用和鞏固,尤其是keil、protel99、proteus等軟件的使用; 2、我對(duì)硬件的制作的整個(gè)過程從繪制原理圖到焊接元器件再到系統(tǒng)調(diào)試有了比較全面的了解。對(duì)今后從事相關(guān)方面的工作有很大的幫助; 3、這次設(shè)計(jì)過程鍛煉了我發(fā)現(xiàn)問題、解決問題的能力,也發(fā)現(xiàn)了自身的很多不足之處,在今
35、后一定要彌補(bǔ)。 參考文獻(xiàn) [1]張秀關(guān).單片機(jī)與計(jì)算機(jī)串口通信實(shí)踐[M].北京:電子工業(yè)出版社,2013.1. [2]李江全,魏中巖,姚帥,嚴(yán)海娟.單片機(jī)通信與控制應(yīng)用編程實(shí)例[M].北京:中國電力出版社,2011.11. [3]沈潔.LED封裝技術(shù)與應(yīng)用[M].北京:化學(xué)工業(yè)出版2012.8. [4]周志敏,紀(jì)愛華.漫步LED世界[M].北京:國防工業(yè)出版社,2013.8. [5]楊清德,楊蘭云.LED及其應(yīng)用技術(shù)問答[M].北京:電子工業(yè)出版社,2011.1. [6]Vizimulle
36、r.P.?RF?design?guide-systems,circuits,and?equations.?1995.? [7]R.Dye.?Visual?Object-Orientated?Programming,Dr.Dobbs?Macintosh?Journal.?Sept.1st?(1991). [8]繆思恩.?LED大屏幕顯示電路設(shè)計(jì)[J].電子技術(shù)應(yīng)用,1996,(08):56-77.? [9]王亭,李瑞濤,宋召清.在Windows下PC機(jī)和單片機(jī)的串行通信[J].微型機(jī)與應(yīng)用,2000(1). [10]關(guān)積珍,陸家和.?我國LED顯示屏技術(shù)和產(chǎn)業(yè)發(fā)展及展望.現(xiàn)代顯示,200
37、4,?(02):34-37.? [11]繆思恩.?LED大屏幕顯示電路設(shè)計(jì)[J].電子技術(shù)應(yīng)用,1996,(08):56-77.? [12]Dave?Jackson.?關(guān)于DSP芯片的問與答.今日電子?,1998,(12):1-7.? [13]盧彌堅(jiān).主從分布式LED大屏幕顯示系統(tǒng)[J].電腦與信息技術(shù),1997,(04):6-13.? [14]高勝東,梁采,張宏富.一種LED大屏幕顯示系統(tǒng)[J].成都?xì)庀髮W(xué)院學(xué)報(bào),1998,(03):108-120.? [15]張全福.匯編語言程序設(shè)計(jì)實(shí)驗(yàn)教學(xué)改革與探索.教學(xué)研究,2005,(06):3-5.?[9]?文哲雄.用單片機(jī)控制LED顯示
38、屏[D].佛山:佛山科學(xué)技術(shù)學(xué)院,1995.? [16]彭寧,只佩華.單片機(jī)對(duì)LED大屏幕顯示的控制系統(tǒng)[J].河北大學(xué)學(xué)報(bào)(自然科學(xué)版),1993,13(3):86-89 致謝 能順利完成此次畢業(yè)設(shè)計(jì),我首先要感謝老師對(duì)我的細(xì)心指導(dǎo)。每次沒有思路的時(shí)候我們一堆人就去找老師,老師非常耐心的給我每個(gè)人指明了方向并且認(rèn)真的解決了我們所遇到的問題。在撰寫論文的過程中,老師細(xì)心嚴(yán)謹(jǐn)?shù)闹赋鑫覀冋撐闹写嬖诘膯栴}。老師嚴(yán)謹(jǐn)認(rèn)真的工作態(tài)度給我們留下了深刻的印象,在今后的工作中我們也應(yīng)該以這樣的態(tài)度去解決問題。我還要感謝學(xué)校給我們提供
39、了這樣好的平臺(tái)讓我們順利的完成了畢業(yè)設(shè)計(jì)。畢業(yè)設(shè)計(jì)做完也就意味著我們的大學(xué)生活就此結(jié)束,回想起這四年里所經(jīng)歷的苦于甜都將成為我人生中最美好的回憶,在此,我要感謝陪我度過大學(xué)生活的所有老師和同學(xué)!
附錄一
PCB
顯示部分PCB
控制部分PCB
原理圖
顯示部分原理圖
控制部分原理圖
附錄二
實(shí)物圖
附錄三
完整程序
#include
40、P() _nop_() /* 定義空指令 */
#define uchar unsigned char
#define uint unsigned int
//#define clrbit(X,Y) X=~(1< 41、 =P1^0;
sbit R_CLK =P1^1;
//sbit OUT_OE=P1^4;
sbit MOSIO =P1^2;
sbit key0 =P2^0;
sbit key1 =P2^1;
extern uchar *disptab;
extern unsigned int tab_length;
extern tabchoose(char num);
uint Saom_num;
uchar word_num;
uchar byte_num;
uchar Speed_move;
uchar Speed_static;
uchar HZ_Num; 42、
uchar key_val;
uchar show_Val[2];
uint move_timce;
uint Flg;
uchar left_rightFlg;
uchar Movespeed=2; //移動(dòng)快慢
void delay(unsigned int i); //函數(shù)聲名
//void delay1(void);
void HC595SendData(uchar SendVal);
void InitTIMER0(void);
void SaomiaoFun();
void HC595Output();
void StaticFun 43、(unsigned char *byte_P,unsigned char ByteNum);
void Move_left(unsigned char *byte_P,unsigned char ByteNum);
void Move_right(unsigned char *byte_P,unsigned char ByteNum);
void Move_up(unsigned char *byte_P,unsigned char ByteNum);
void Move_down(unsigned char *byte_P,unsigned char ByteNum);
void 44、left_and_right(unsigned char *byte_P,unsigned char ByteNum);
void Init_sys();
void main()
{
uchar Mode_val;
uchar Mode_val0;
Mode_val=0;
Mode_val0=0;
key_val=0;
Init_sys();
while(1)
{
if(!((Kkey&0x03)==0x03))
{
// delay(5);
if(!key0)
{
while(! 45、key0);
Mode_val++;
if(Mode_val>=6) //限定模式種類
{
Mode_val=1;
}
switch(Mode_val)
{
case STATIC: {Init_sys();Mode_val0=0;tabchoose(0);HZ_Num=1;key_val=1;break;}
case LEFT : {Init_sys();Mode_val0=0;tabchoose(0);key_val=2;Movespeed=2;break;}
case RI 46、GHT : {Init_sys();Mode_val0=0;tabchoose(0);key_val=3;Movespeed=2;break;}
case UP : {Init_sys();Mode_val0=0;tabchoose(0);key_val=4;Movespeed=2;break;}
case DOWN : {Init_sys();Mode_val0=0;tabchoose(0);key_val=5;Movespeed=2;break;}
case LEFT_RIGHT: {Init_sys();Mode_val0=0;tabchoos 47、e(0);key_val=6;Movespeed=1;break;}
default : {Mode_val=0;break;}
}
}
if(key_val==1)
{
if(!key1)
{
while(!key1);
Init_sys();
HZ_Num++;
}
if(HZ_Num>(tab_length-2))
{
HZ_Num=1;
}
}
else
48、
{
if(!key1)
{
while(!key1);
Mode_val0++;
switch(Mode_val0)
{
case 1 : {tabchoose(1);Init_sys();break;}
// case 2 : {tabchoose(3);Init_sys();break;}
case 2 : {tabchoose(0);Init_sys();break;}
default: {Mode_val0=0;break;}
}
49、 }
}
}
}
}
/******************************************************************/
/* 系統(tǒng)初始化函數(shù) */
/******************************************************************/
void Init_sys()
{
Saom_num=0;
word_num=0;
byte_num=0;
50、 Speed_move=0;
Speed_static=0;
move_timce=0;
left_rightFlg=0;
Flg=0;
// OUT_OE=0; //開HC595輸出
InitTIMER0(); //初始化定時(shí)器0
}
/******************************************************************/
/* 靜態(tài)函數(shù) */
/******************* 51、***********************************************/
void StaticFun(unsigned char *byte_P,unsigned char ByteNum)
{
uchar TabB_num;
uint m; //m越大,可顯示字節(jié)越多
TabB_num=ByteNum;
m=(uint)(byte_num+32*HZ_Num);
show_Val[1]=*(byte_P+m+1);
show_Val[0]=*(byte_P+m);
}
/************************* 52、*****************************************/
/* 左移函數(shù) */
/******************************************************************/
void Move_left(unsigned char *byte_P,unsigned char ByteNum)
{
uint m;
if(move_timce==16*(ByteNum-1))//4個(gè)字
{
mo 53、ve_timce=0;
}
m=byte_num+move_timce*2;
show_Val[1]=*(byte_P+m+1);
show_Val[0]=*(byte_P+m);
}
/******************************************************************/
/* 右移函數(shù)(寫程序時(shí)有必要用筆在紙上進(jìn)行計(jì)算) */
/******************************************************************/
void Mo 54、ve_right(unsigned char *byte_P,unsigned char ByteNum)
{
uint m;
if(move_timce==16*(ByteNum-1))//ByteNum個(gè)字
{
move_timce=0;
}
///下面是刷屏分配數(shù)據(jù)的算法
if(Saom_num<(move_timce%16)) //掃描列比移動(dòng)次數(shù)小的情況
{
m=byte_num-2*(move_timce%16)+32*(move_timce/16)+32+32; //括號(hào)不能拆開,否則出錯(cuò)!這不是除法!
}
els 55、e if(Saom_num>=(move_timce%16)) //掃描列比移動(dòng)次數(shù)大的情況
{
m=byte_num-2*(move_timce%16)+32*(move_timce/16); //括號(hào)不能拆開,否則出錯(cuò)!這不是除法!
}
show_Val[1]=*(byte_P+m+1);
show_Val[0]=*(byte_P+m);
}
/******************************************************************/
/* 左右 56、交替移動(dòng) */
/******************************************************************/
void left_and_right(unsigned char *byte_P,unsigned char ByteNum)
{
uint m;
/************************************************
**************中間停留需要的變量傳遞*************
************************ 57、************************/
if(left_rightFlg==96)
{
left_rightFlg=0;
}
if((left_rightFlg==0)||(left_rightFlg==48))
{
move_timce=Flg;
}
else if((left_rightFlg==16)||(left_rightFlg==64))
{
Flg=move_timce;
}
/////////////////////////////////////////////////////
if(move_ti 58、mce==16*(ByteNum-1))
{
move_timce=0;
}
if(left_rightFlg<16)
{
m=byte_num+move_timce*2;
show_Val[1]=*(byte_P+m+1);
show_Val[0]=*(byte_P+m);
}
else if((left_rightFlg>=16)&&(left_rightFlg<48))
{
m=byte_num+Flg*2;
show_Val[1]=*(byte_P+m+1);
show_Val[0]=*(byte_P+m);
59、 }
else if((left_rightFlg>=48)&&(left_rightFlg<64))
{
///下面是刷屏分配數(shù)據(jù)的算法
if(Saom_num<(move_timce%16)) //掃描列比移動(dòng)次數(shù)小的情況
{
m=byte_num-2*(move_timce%16)+32*(move_timce/16)+32+32; //括號(hào)不能拆開,否則出錯(cuò)!這不是除法!
}
else if(Saom_num>=(move_timce%16)) //掃描列比移動(dòng)次數(shù)大的情況
{
m=byte_num-2*(move_ti 60、mce%16)+32*(move_timce/16); //括號(hào)不能拆開,否則出錯(cuò)!這不是除法!
}
show_Val[1]=*(byte_P+m+1);
show_Val[0]=*(byte_P+m);
}
else if((left_rightFlg>=64)&&(left_rightFlg<96))
{
///下面是刷屏分配數(shù)據(jù)的算法
if(Saom_num<(Flg%16)) //掃描列比移動(dòng)次數(shù)小的情況
{
m=byte_num-2*(Flg%16)+32*(Flg/16)+32+32; //括號(hào) 61、不能拆開,否則出錯(cuò)!這不是除法!
}
else if(Saom_num>=(Flg%16)) //掃描列比移動(dòng)次數(shù)大的情況
{
m=byte_num-2*(Flg%16)+32*(Flg/16); //括號(hào)不能拆開,否則出錯(cuò)!這不是除法!
}
show_Val[1]=*(byte_P+m+1);
show_Val[0]=*(byte_P+m);
}
}
/******************************************************************/
/* 62、 上移函數(shù) */
/******************************************************************/
void Move_up(unsigned char *byte_P,unsigned char ByteNum)
{
uint d;
uchar a,b;
uchar buff_Val[4];
uint m;
if(move_timce==16*(ByteNum-1))//ByteNum個(gè)字
{
move_tim 63、ce=0;
}
m=byte_num+32*(move_timce/16);
buff_Val[0]=*(byte_P+m);
buff_Val[1]=*(byte_P+m+1);
buff_Val[2]=*(byte_P+m+32);
buff_Val[3]=*(byte_P+m+32+1);
if((move_timce%16)<9) //移動(dòng)次數(shù)8次以內(nèi)
{
d=(buff_Val[1]&0xff)<<8; //上半屏
d=d+buff_Val[0];
d=d>>(move_timce%16);
a=d&0xff 64、;
d=(buff_Val[2]&0xff)<<8; //下半屏
d=d+buff_Val[1];
d=d>>(move_timce%16);
b=d&0xff;
show_Val[1]=b; //列的低字節(jié)
show_Val[0]=a; //列的高字節(jié)
}
else //移動(dòng)次數(shù)8次到16次
{
d=(buff_Val[2]&0xff)<<8; //上半屏
d=d+buff_Val[1];
d=d>>(move_timce%16-8);//關(guān)鍵步驟
a=d&0xf 65、f;
d=(buff_Val[3]&0xff)<<8; //下半屏
d=d+buff_Val[2];
d=d>>(move_timce%16-8);//關(guān)鍵步驟
b=d&0xff;
show_Val[1]=b; //列的低字節(jié)
show_Val[0]=a; //列的高字節(jié)
}
}
/******************************************************************/
/* 下移函數(shù) 66、 */
/******************************************************************/
void Move_down(unsigned char *byte_P,unsigned char ByteNum)
{
uint d;
uchar a,b;
uchar buff_Val[4];
uint m;
if(move_timce==16*(ByteNum-1))//ByteNum個(gè)字
{
move_timce=0;
}
m=byte_num+32*(move_timce/16);
buff_Val[0]=*(byte_P+m); //只要32*(move_timce/16)不變,buff_Val[]的值只與掃描列byte_num有關(guān)
buff_Val[1]=*(byte_P+m+1);
buff_Val[2]=*(byte_P+m+32);
buff_Val[3]=*(byte_P+m+32+1);
if((move_t
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 國際商法第五講國際貨物買賣法課件
- 金牌客服投訴調(diào)解員課件
- 過敏性紫癜病案討論課件
- 《英語》(新標(biāo)準(zhǔn))(供三年級(jí)起始用)第四模塊第九模塊第二單元Samhadchocolatebiscuits
- 1原子吸收光譜分析A
- 幼兒園區(qū)角環(huán)境的創(chuàng)設(shè)1
- 數(shù)據(jù)挖掘技術(shù)十課Bayes分類方法
- 精神科進(jìn)修總結(jié)
- 最新隧道施工技術(shù)指南培訓(xùn)課件
- HAPPYBIRTHDAY課件之一
- 免疫組化的原理與操作
- 詩海拾貝與詩同行課件
- 落花生徐書婷
- 第5課_“和同為一家”PPT(教育精品)
- 電力網(wǎng)無功補(bǔ)償節(jié)能技術(shù)改造及維護(hù)