




已閱讀5頁,還剩23頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
綜合實踐 項目名稱 基于單片機的光立方設計 專業(yè)班級 學生姓名 指導教師 年 月 日 班級班級 姓名姓名 基于單片機的光立方設計基于單片機的光立方設計 I 摘 要 本課程設計制作出一個三維立體顯示圖案的 LED 光立方。主要采用 8*8*8 led 組 成的模式。距離是 14cm*14cm*20cm(長.寬.高),主要分為三個模塊:主控模塊、驅 動模塊、顯示模塊;我們所做的光立方驅動電路,主控電路等都是純手工焊接。采用 的主控芯片 32K STC89C58 芯片,驅動電路是采用我們常用的 74HC574 數字芯片。光立 方工作過程中,通過程序對電路的控制,可以在 LED 組成的立方體上顯示出各種圖形。 軟件采用自上而下的模塊化設計思想,使系統(tǒng)朝著分布式、小型化方向發(fā)展,增強系 統(tǒng)的可擴展性和運行的穩(wěn)定性。 關鍵詞關鍵詞:LED 光立方; 74HC574; 51單片機 班級班級 姓名姓名 基于單片機的光立方設計基于單片機的光立方設計 II ABSTRACT This design produced a three-dimensional pattern of the LED light cube. This product can not only like a light-emitting diode dot matrix display plane static or dynamic screen can also display three-dimensional static or dynamic images,and to break the traditional program.While increasing the display patterns and three-dimensional effect can be widely used to display and decorative display for future progress and development to guide the direction,light cube display more visual effects than the light-emitting diode dot matrix,and the picture is more rich colorful. With a combination of graphics and characters more perfect display characteristics. The design is STC89C58 MCU core controller,eight D edge flip-flop 74HC574 (tri-state) expansion I/O port completion of the hardware circuit design. Programmed by software to control the data is downloaded to the MCU to complete the designs of the show. This design software is a top-down modular design,the system moving in the direction of distributed,small development,enhance the stability of the systems scalability and running. Keywords: :52single-chip;74HC573latch;8*8*8 LED; 班級班級 姓名姓名 基于單片機的光立方設計基于單片機的光立方設計 III 目 錄 摘 要.I ABSTRACT.II 第 1 章 緒論.1 1.1 目的與要求.1 1.2 電路的設計與元件的選擇.1 1.2.1 電路設計.1 1.2.2 元件的選擇.2 第 2 章 電路工作原理.3 2.1 設計原理.3 2.2 模塊與控制器接口.3 第 3 章 方案選擇.5 3.1 電源的選擇.5 3.2 3D 顯示核心控制器.5 3.2.1 單片機.5 3.2.2 DSP 芯片.5 3.2.3 EDA.6 3.3 I/O 口擴展芯片的選擇.6 3.4 LED 發(fā)光顯示二級管.6 3.4.1 按顏色分類.7 3.4.2 按使用場合分類.7 3.4.3 按發(fā)光點直徑分類.7 第 4 章 焊接.8 4.1 焊接前準備工作.8 4.2 焊接.8 第 5 章 程序設計的選擇與分析.10 5.1 單片機 C 語言主要特點.10 5.2 單片機 C 語言與標準 C 語言的區(qū)別.10 5.3 數據類型的選用.11 5.4 算法設計問題.11 5.5 數據存儲器的分配.12 班級班級 姓名姓名 基于單片機的光立方設計基于單片機的光立方設計 IV 5.6 單片機 C 語言與匯編語言的混合編程.12 5.7 程序分析選擇.14 第 6 章 電路調試與總結.15 參考文獻.16 附錄 程序代碼.17 致謝.23 班級班級 姓名姓名 基于單片機的光立方設計基于單片機的光立方設計 1 第 1 章 緒論 1.1 目的與要求 (1)目的:轉眼間我們學習單片機已經有大半學期了,也是到了期末的考試時間 了,感到安慰的是不用考試,但是要做一個實物,做這個實物的目的是主要回顧我們 學習的單片機知識和提高我們的焊接和其他的動手實操能力(包括了數字電路和模擬 電路的知識) 。 (2)要求:要有自主創(chuàng)新,其中我們的開關是采用觸摸型開關,只要由一個 I/O 口 和 VCC 組成。 1.2 電路的設計與元件的選擇 1.2.1 電路設計 主要分為三個模塊分別是主控模塊,驅動模塊,顯示模塊。其中 P1 位一個觸摸型 的開關,C3 為去耦電容防止高頻干擾。 驅動電路:在驅動電路上,每個鎖存芯片的電源端都加了一個瓷片電容,主要的 作用是防止高頻干擾 顯示電路:所有的燈的負端都是接在一起的,下面的每一組都是控制光立方的一 個面,控制的是光立方的豎起來的面,而橫著的面由圖 3 的 74LS138 控制。 班級班級 姓名姓名 基于單片機的光立方設計基于單片機的光立方設計 2 1.2.2 元件的選擇 (1)由于光立方的程序量比較大,而且要求相對比較高,因此經過考慮之后我們 決定用 51 系列的增強型芯片 STC89C58,選擇的理由:STC89C58RD+是單時鐘/機器 周期(IT)的單片機,采集速度較普通 51 單片機快 8 一 12 倍,此外,較寬的電壓范圍(5.5 一 3.3V)增強了系統(tǒng)的適應性。 (2)串行移位芯片采用 74LS138,它還有亮度調整功能,通過調節(jié) R_EXT 端的 電阻大小或者 PWM,就可輕松做到亮度可控。層切換是通過 3-8 線譯碼器 74HC138 可代換芯片:74138 系列。對控制器輸出的層信號譯碼,然后通過 P 溝道 MOS 管放大 后驅動 LED 光立方一層的二極管陽極,此時對應移位后的并行數據就被顯示出來了。 然后通過協(xié)調層的數據和層的選通,動態(tài)顯示后就能做到立體控制與顯示。 (3)由于在剛剛接觸鎖存器的時候,就接觸了 74HC574,對它的使用也比較成 熟,因此在驅動部分使用了熟悉的 74HC574,其優(yōu)點有: 1.高阻態(tài);就是輸出既不是高電平,也不是低電平,而是高阻抗的狀態(tài);在這種狀態(tài)下, 可以多個芯片并聯(lián)輸出 2.數據鎖存;當輸入的數據消失時,在芯片的輸出端,數據仍然保持 3.數據緩沖; 加強驅動能力 4.這 8 片 74LM574 構成了 64 位的靜態(tài)顯示,可顯示一層的圖像也就是一個二維 畫面。 (4)LED 燈的選擇,出于外觀和整體的形狀美觀,我們放棄我們經常用的草帽 型 LED,采用的是方形高亮的 LED 燈 由于草帽的光發(fā)散比較厲害容易影響視角效果,從而使用方形的,同時方形的也 比較聚光。 班級班級 姓名姓名 基于單片機的光立方設計基于單片機的光立方設計 3 第 2 章 電路工作原理 2.1 設計原理 每層的 LED 排序如上圖 D0,D1,D2,D3D62,D63 分別為 64 個 LED 陣列實際排序 方式,也就是光立方的俯視圖,對應下圖分別是其數據信號 Error!Error!Error!0,Error!Error!Error!1,Error!Error!Error!2,Error!Error!Err or!3Error!Error!Error!62,Error!Error!Error!63; “光立方”是由 8 層這樣布局的 LED 組成,每層位置排列全部一致 每層 LED 的所有正極全部接到一起,然后連接 138 的行掃描驅動電路,通過 138 譯碼確定使能哪一層 數組 OUT0代表光立方從第一層 D0 到第八層 D0 的數據,以此類推數組 OUT1 代表光立方從第一層 D1 到第八層 D1 的數據。這樣數組中就包含了光立方完整的一幀 數據。 OUT0的位 0 表示光立方的 D0 的所在第一層數據(1 為點亮 0 為熄滅) ,同樣 OUT0的位 1 也就是第 2 層的數據。 2.2 模塊與控制器接口 VCC:電源 5V 可做處理器電源 GND:電路地線公共地 EN:當模塊的層掃描信號完成后,使能該信號,低電平有效,必須在下次掃描信 Y Y 軸軸 X X 軸軸 班級班級 姓名姓名 基于單片機的光立方設計基于單片機的光立方設計 4 號切換前終止使能 C,B,A:為層掃描切換,000 為第 1 層,001 為第 2 層,010 為第 3 層,011 為第 4 層,100 為第 5 層,101 為第 6 層,110 為第 7 層,111 為第 8 層。 CLK:為串行移位總線的時鐘時序 LE:寄存器輸出脈沖,將此時移位寄存器數據傳輸到輸出寄存器 DS: SDI 為串行移位總線的數據時序時鐘上升沿鎖存數據 電源:接 5V 電源。 班級班級 姓名姓名 基于單片機的光立方設計基于單片機的光立方設計 5 第 3 章 方案選擇 3.1 電源的選擇 方案一:采用普通干電池作為 LED 系統(tǒng)的電源,由于點陣系統(tǒng)耗電量較大,點陣 系統(tǒng)一般懸掛在高處上,一直不停的工作。使用干電池需經常換電池,不符合節(jié)約型 社會的要求。 方案二:采用一塊 LM7805 三端集成穩(wěn)壓器。把市電經變壓器降壓輸入電路,而 后整流送到 LM7805 三端穩(wěn)壓器穩(wěn)壓輸出作為工作電壓。不僅功率上可以滿足系統(tǒng)需 要,不需要更換電源,并且比較輕便,使用更加安全可靠。 方案三:采用 5V 電源的移動充電寶。 基于以上分析,決定選取 5V 電源的移動充電寶供電電源。 3.2 3D 顯示核心控制器 控制部分是整個系統(tǒng)的核心部分,其功能可以實現(xiàn)與上位機通信接收上位機發(fā)送 的數據和控制指令經處理過后控制顯示屏顯示內容。其常用的電子設計方法有單片機、 DSP、及 EDA 技術。 3.2.1 單片機 單片機是集成了 CPU,ROM,RAM 和 I/ O 口的微型計算機。它有很強的接口性 能,非常適合于工業(yè)控制,因此又叫微控制器(MCU)。單片機品種齊全,型號多樣 CPU 從 8,16,32 到 64 位,多采用 RISC 技術,片上 I/O 非常豐富,有的單片機集 成有 A/ D, “ 看門狗” ,PWM,顯示驅動,函數發(fā)生器,鍵盤控制等。它們的價格也 高低不等,這樣極大地滿足了開發(fā)者的選擇自由。除此之外單片機還具有低電壓和低 功耗的特點。隨著超大規(guī)模集成電路的發(fā)展,單片機在便攜式產品中大有用武之地。 3.2.2 DSP 芯片 DSP 又叫數字信號處理器。顧名思義,DSP 主要用于數字信號處理領域,非常適 合高密度,重復運算及大數據容量的信號處理。現(xiàn)在已經廣泛應用于通信、便攜式計 算機和便攜式儀表、雷達、圖像、航空、家用電器、醫(yī)療設備等領域。 DSP 區(qū)別于一 般微處理器的另一重要標志是硬件乘法器以及特殊指令,一般微處理器用軟件實現(xiàn)乘 班級班級 姓名姓名 基于單片機的光立方設計基于單片機的光立方設計 6 法,逐條執(zhí)行指令,速度慢。DSP 依靠硬件乘法器單周期完成乘法運算,而且還具有 專門的信號處理指令。它的強大數據處理能力和高運行速度,是最值得稱道的兩大特 色。芯片內置 544 字的高速 SRAM。外部可尋址 64K 字程序/數據及 I/O,令周期在 25ns50ns 之間,實時性處理比 16 位單片機快 2 倍以上,可取代一般的單片機。 3.2.3 EDA EDA(即 Electronic Design Automation) 即電子設計自動化,它是以計算機為工具, 在 EDA 軟件平臺上,對用硬件描述語言 HDL 完成的設計文件自動地邏輯編譯、邏 輯化簡、邏輯分割、邏輯綜合及優(yōu)化、邏輯布局布線、邏輯仿真,直至對于特定目標 芯片進行適配編譯、邏輯影射和編程下載等。而且 MCU 和 DSP 都是通過串行執(zhí)行指 令來實現(xiàn)特定功能,不可避免低速,而 FPGA/CPLD 則可實現(xiàn)硬件上的并行工作,在 實時測控和高速應用領域前景廣闊;另一方面,F(xiàn)PGA/CPLP 器件在功能開發(fā)上是軟件 實現(xiàn)的,但物理機制卻和純硬件電路一樣,十分可靠。 基于以上分析,三種設計方式相比較各有優(yōu)點且都能夠實現(xiàn)控制功能,但單片機 的技術門檻較低開發(fā)成本也較低非常適合初學者進行學習和鍛煉使用。現(xiàn)在市場上常 用的單片機主要有 MCS-52、AVR、ARM、PIC 等。其中應用最廣泛的單片機首推 Intel 的 52 系列,由于產品硬件結構合理,指令系統(tǒng)規(guī)范,加之生產歷史“悠久” ,有 先入為主的優(yōu)勢常作為單片機學習的教材。所以決定選取 52 系列單片機作為控制部分 的核心器件。 3.3 I/O 口擴展芯片的選擇 方案一:選取串口輸入并口輸出芯片 74LS164,雖然 I/O 口使用較少,由于本次 設計共需要 72 路 I/O 口,列驅動電路就需要 8 塊 74LS164。顯示數據是先后順序給送 去的,顯示會有延遲,而 LED 動態(tài)顯示的刷新的時間控制大約 10ms,實時性差,效 果不好。 方案二:74HC573 跟 74LS573 的管腳一樣。器件的輸入是和標準 CMOS 輸出兼 容的;加上拉電阻,他們能和 HC/ALSTTL 輸出兼容。當鎖存使能端為高時,這些器 件的鎖存對于數據是透明的(也就是說輸出同步) 。當鎖存使能變低時,符合建立時間 和保持時間的數據會被鎖存。8 塊 74HC573 共用 64 個 I/O 口,數據可以并行寫入芯片, 延遲時間少,滿足設計要求。 綜合以上比較,決定選取 74HC573 作為列線驅動 IO 口擴展芯片。 3.4 LED 發(fā)光顯示二級管 班級班級 姓名姓名 基于單片機的光立方設計基于單片機的光立方設計 7 LED 是一種固體光源,當它兩端加上正向電壓時就可以發(fā)光。采用不同的材料, 可制成不同顏色的發(fā)光二極管。作為一種新的光源,廣受歡迎而得以快速發(fā)展。從而 在各種各樣的傳媒信息的宣傳中得以體現(xiàn)。簡述其分類方法如下。 3.4.1 按顏色分類 單基色顯示屏:單一顏色(紅色、綠色、黃色、藍色等等) 。 雙基色顯示屏:紅和綠雙基色,256 級灰度、可以顯示 65536 種顏色。 全彩色顯示屏:紅、綠、藍三基色,256 級灰度的全彩色顯示屏可以顯示一千六 百多萬種顏色。 3.4.2 按使用場合分類 室內顯示屏:發(fā)光點較小,一般 3mm-8mm,顯示面積一般零點幾至十幾平 方米。 室外顯示屏:面積一般幾十平方米至幾百平方米,亮度高,可在陽光下工作,具 有防風、防雨、防水功能。 3.4.3 按發(fā)光點直徑分類 室內屏:3mm、3。75mm、5mm。 室外屏:10mm、12mm、16mm、19mm、21mm、26mm。 基于以上分析結果,加上由于成本和控制的難易程度,決定選取單色 3mm 綠光 LED 作為本次設計顯示色彩,亮度高,顯示效果很好。 班級班級 姓名姓名 基于單片機的光立方設計基于單片機的光立方設計 8 第 4 章 焊接 4.1 焊接前準備工作 準備好烙鐵、焊錫絲、鉗子等工具,以及 LED。LED 的正負極很好判別,長的引 腳為+,短的為-。LED 最好選用直徑 3mm 的 LED,推薦選綠色。長腳的 LED 可以省 很多工作量。實際測量長腳是 29mm,短腳為 27mm,由于 LED 光立方板子燈的間距 決定了,每個 LED 的間距是 20mm。這樣長短引腳都符合這個尺寸。由于所有 LED 框架焊接好后,一旦有 LED 損壞更換難度很大,所以焊接前要測試所有 LED,用一 般數字顯示萬用表打到二極管量程,用萬用表紅表筆接長引腳,黑的接短引腳。LED 正常發(fā)光并且亮度基本一致,這樣的 LED 就是好的,否則是壞燈。如果為了確保可靠 也可以焊接好一層后測試 LED 是否能點亮。 4.2 焊接 將 8 個 LED 焊接為一組,可以通過 2 種方法完成。 方法一:需要用鉗子將 LED 的正極扭彎,這個彎,一定要小,正好露出 LED 外圍 打彎正合適,LED 的正極折彎后留下的引腳長度必須大于 LED 的間距 20mm,以確保 有足夠的重合位 LED 燈腳全部折好后,就可以焊接了,為了方便焊接可以在萬能板上 面鉆幾個 2mm 的孔,間距為 8 個洞洞置以便焊接。焊接細節(jié),將一個 LED 正極的引 腳靠近到另一個 LED 正極的打彎處,然后上焊錫焊接,焊接要光亮可靠,有一定機械 強度。這樣將全部 LED 焊接成 8 個一組的 LED 燈排待用。焊接時避免用過多助焊劑, 要不會粘到 LED 表面,影響外觀。焊機避免正負 2 極短路。注意每一層的二極管都是 共陰的。 方法二:需要借助一個工藝設備,這個東西可以自己動手制作,用這個輔助焊接 當然要容易些。焊接方法也是一樣的,將一個 LED 正極的引腳靠近到另一個 LED 正 極的打彎處,然后上焊錫焊接,焊接要光亮可靠,有一定機械強度。這樣將全部 LED 焊接成 8 個一組的 LED 燈排待用。焊接小經驗,由于 LED 燈腳有一定彈性,一個 LED 的引腳靠近到另一個 LED 正極的打彎處時,一松手就又彈遠了,所以建議焊接 時多掰一點,掰過了之后利用彈性將兩個要焊接的引腳 靠進,這樣焊接會容易許多。 班級班級 姓名姓名 基于單片機的光立方設計基于單片機的光立方設計 9 班級班級 姓名姓名 基于單片機的光立方設計基于單片機的光立方設計 10 第 5 章 程序設計的選擇與分析 作為一種結構化的程序設計語言,C 語言的特點就是可以使你盡量少地對硬件進 行操作,具有很強的功能性、結構性和可移植性,常常被優(yōu)選作為單片機系統(tǒng)的編程 語言。但是基于單片機的 C 語言和標準 C 語言有很大區(qū)別,如何結合單片機的系統(tǒng)資 源,用 C 語言開發(fā)符合實際工程需要的單片機系統(tǒng),對用編程者來說具有十分重要的 意義。 5.1 單片機 C 語言主要特點 用 C 編寫程序比匯編更符合人們的思考習慣,開發(fā)者可以擺脫與硬件無必要的接 觸,更專心的考慮功能和算法而不是考慮一些細節(jié)問題,這樣就減少了開發(fā)和調試的 時間。C 語言具有良好的程序結構,適用于模塊化程序設計,因此采用 C 語言設計單片 機應用系統(tǒng)程序時,首先要盡可能地采用結構化的程序設計方法,將功能模塊化,由 不同的模塊完成不同的功能1,這樣可使整個應用系統(tǒng)程序結構清晰,易于調試和維 護。不同的功能模塊,分別指定相應的入口參數和出口參數,對于一些要重復調用的 程序一般把其編成函數,這樣可以減少程序代碼的長度,又便于整個程序的管理,還 可增強可讀性和移植性。 在實際單片機程序設計中,程序結構一般均采用如下結構: #include /*頭文件說明部份*/ unsigned char x1,x2; /*全局變量聲明部份*/ Function1( ) /*功能函數定義部份*/ main() inti,j; /* 整型變量聲明部份*/ Function1(); /* 功能函數說明部份*/ 5.2 單片機 C 語言與標準 C 語言的區(qū)別 由于現(xiàn)在越來越多的產品都采用單片機開發(fā),所完成的計算和控制工作也日趨復 雜,但是單片機系統(tǒng)是一種資源十分有限的系統(tǒng),這主要表現(xiàn)在程序存儲器資源的不 足,因此在程序設計時如何使用好這些有限的資源就顯得十分重要。用 C 語言編程雖 班級班級 姓名姓名 基于單片機的光立方設計基于單片機的光立方設計 11 然具有許多的優(yōu)點,但是生成的代碼相對要長,要是編程技術不好,生成的代碼甚至 有可能比匯編語言生成的代碼長幾倍,因此對編程者來說,應該注意到單片機 C 語言 和一般意義上的標準 C 語言的區(qū)別,對程序進行適當的優(yōu)化。 5.3 數據類型的選用 單片機 C 語言編程不同于一般的 C 語言編程的顯著的一個特點,就是要和程序存 儲器資源結合起來,雖然其提供的數據據類型十分豐富,但是只有 bit 和 char 等數據 類型是是機器語言直接支持的數據類型,用此類數據類型的語句所生成的代碼較短; 而其它的數據類型如整型、浮點型等數據要有一定的內部程序或內部函數的支持,相 對來說用該類數據類型的語句生成的代碼要長。有些 C 語言程序表面上看起來十分的 簡單,但在在實際編譯時,生成的代碼卻相當長。因此我們要按照實際需要,合理地 選用數據,可以大大的減少所生成的代碼長度。例如在 S52 中每種數據類型變量所占 用存儲器字節(jié)數和經編譯后生成的代碼長度如表 1 所示: 通過表 1 我們知道,不同的數據類型所生成的機器代碼長度相差很多,相同類型 的數據類型有無符號對機器代碼長度也有影響。在程序編譯時生成機器代碼長的數據 類型的優(yōu)先級越高,不同的數據類型在進行程序運算時要轉化為高優(yōu)先級的的數據類 型,相應的代碼長度也會增長2。因此我們應盡可能地使用 bit,char 等機器語言直接 支持的數據類型,無符號數的變量應聲明為無符號數,盡可能地減少程序中使用的數 據類型的種類。 5.4 算法設計問題 單片機 C 語言和標準 C 語言存在著很大差別,在計算機上進行 C 語言程序設計時 由于不必考慮程序代碼的長短,只需考慮程序功能實現(xiàn),但是在單片機上進行 C 語言 程序設計就必須考慮系統(tǒng)的硬件資源。有時并不是程序的算法越簡單、長度越短越好, 因為有一些算法要調用一些內部的子程序和函數,生成的機器代碼長度非常長。不同 的算法對程序代碼長度影響十分大,因此在進行程序設計時,就盡量采用程序生成代 碼短的算法,在不影響程序功能實現(xiàn)的情況下可以采用一些優(yōu)化算法2。 在單片機 C 語言編譯成機器代碼時,不同的運算生成的機器代碼的長度相差很大, 盡可能地減少程序中對某種數據類型的運算種類,越復雜的數據類型效果越明顯。在進 行數據計算時,在一定的精度范圍內,可以用一些近似的計算來完成一些運算,既不損 失精度又能減少大量的代碼。比如:用邏輯 AND/充電 Loop: JB P3.6,AD_END ;開始計數匹配 INC A CJNE A,#100,Loop AD_END: CLR P3.7; 放電 CJNE A,#100,Ret_Val ;看結果是否有溢出,有溢出說明結果不對 SJMP Con_OV;返回值 Ret_Val:DEC A MOV R7, A; A/D 轉換的結果保存在 R7 中,傳遞給主程序 Con_OV: RET END 單片機 C 程序: include unsigned char AD(unsigned char);/在 C 程序中聲明匯編模數轉換子程序 void timer0(void) interrupt 1 using 1 班級班級 姓名姓名 基于單片機的光立方設計基于單片機的光立方設計 14 unsigned char x; x=AD(); /在 C 程序中調用匯編程序 Main /主程序 在以上程序中,函數的返回值為一無符號字符型數,根據調用規(guī)則,返回值在 R7 中,這樣才可保證數據的傳遞不出錯。另外,在調用過程中,必須注意寄存器的入棧。 這樣在以后用到 A/D 轉換時,在 C 語言中調用匯編語言子程序 AD()即可。 5.7 程序分析選擇 C 語言具有很強的功能性和結構性,可以縮短單片機控制系統(tǒng)的開發(fā)周期,而且 易于調試和維護,已經成為目前單片機語言中最流行的編程語言。所以本設計選取 C 語言作為編輯語言。 班級班級 姓名姓名 基于單片機的光立方設計基于單片機的光立方設計 15 第 6 章 電路調試與總結 完工以后抱著很激動的心情,編寫了調試的程序,主要是檢查全部的燈是否會亮, 但是單把程序燒寫進去之后,發(fā)現(xiàn)有兩列沒有點亮,還好兩列的都在邊上,進而如果 換燈也相對容易,我們用排除法來檢查電路,首先是檢查燈的線路是否虛焊,斷路, 果真有一列的是斷路了,把它接上后這一列也亮了,還剩下另外一列,我們用同樣的 方法來做,從驅動電路到顯示的都沒有問題,而且在輸入那一列的電壓也正常,我們 就想不通了,是什么原因呢?我們懷疑是不是有燈壞了,我們又一個一個的檢查了這 一列燈,但是全部都會亮,經過很細心的檢查,發(fā)現(xiàn)有一個燈的亮度和其他的燈亮度 完全不同,相對比較暗,于是我們把它換了下來,接上另外一個,果然是哪個燈的問 題,原來是由于燈的阻抗很大,把那一列的電平都拉低了,使燈無法亮起來 ,在電路 的調試中就出現(xiàn)了這些的問題,相對來說還是不錯的。 經過這次的課程項目設計,我們更明確了團隊合作的是要領和精神,再次再一次 感謝老師對我們的幫助,在以后我們會做的更好。 班級班級 姓名姓名 基于單片機的光立方設計基于單片機的光立方設計 16 參考文獻 1張毅坤,陳善久,裘雪紅. 單片微型計算機原理及應用.西安電子科技大學出 版社.2008 年 5 月 2 華成英,童詩白. 模擬電子技術基礎.高等教育出版社,2007 年 8 月 3 趙輝,劉印華 . PROTEL 99 電子線路 CAD.北京郵電大學出版社.2008 年 班級班級 姓名姓名 基于單片機的光立方設計基于單片機的光立方設計 17 附錄 程序代碼 #include #define uchar unsigned char uchar t,i,k,a,s; sbit d1=P04; sbit d2=P06; sbit q0=P00; sbit q1=P01; sbit q2=P02; sbit q3=P03; sbit key=P05; void delay(uchar z) uchar x,y; for(x=z;x0;x-) for(y=11;y0;y-); void yi() P0=0 xff;d1=0;d2=1;P2=0 xa5;delay(8);P2=0 xb5;delay(8);P2=0 xc5;delay(8);P2=0 xd5;de lay(8);P2=0 xe5;delay(8);P2=0 xf5;delay(8); void er() P0=0 xff;d1=1;d2=0; P2=0 x00;delay(8);P2=0 x03;delay(8);P2=0 x04;delay(8);P2=0 x07;delay(8);P2=0 x0e;dela y(8); P2=0 x0e;delay(8);P2=0 x0f;delay(8); d1=0;d2=1; 班級班級 姓名姓名 基于單片機的光立方設計基于單片機的光立方設計 18 P2=0 x00;delay(8);P2=0 x10;delay(8);P2=0 x20;delay(8);P2=0 x30;delay(8);P2=0 x50;dela y(8);P2=0 x90;delay(8); P2=0 xa0;delay(8);P2=0 xc0;delay(8);P2=0 xf0;delay(8); void san() P0=0 xff;d1=1;d2=0; P2=0 x00;delay(8);P2=0 x03;delay(8);P2=0 x04;delay(8);P2=0 x07;delay(8);P2=0 x0e;dela y(8); d1=0;d2=1; P2=0 x00;delay(8);P2=0 x10;delay(8);P2=0 x20;delay(8);P2=0 x30;delay(8);P2=0 x40;dela y(8);P2=0 x50;delay(8);P2=0 x90;delay(8); P2=0 xa0;delay(8);P2=0 xc0;delay(8);P2=0 xf0;delay(8); void si() P0=0 xff;d1=1;d2=0; P2=0 x00;delay(8);P2=0 x01;delay(8);P2=0 x02;delay(8);P2=0 x03;delay(8);P2=0 x07;dela y(8); d1=0;d2=1; P2=0 x00;delay(8);P2=0 x10;delay(8);P2=0 x20;delay(8);P2=0 x30;delay(8);P2=0 x40;dela y(8);P2=0 x50;delay(8);P2=0 xc0;delay(8); void qi() P0=0 xff;d1=1;d2=0; P2=0 x03;delay(8);P2=0 x04;delay(8); d1=0;d2=1; P2=0 x00;delay(8);P2=0 x10;delay(8);P2=0 x20;delay(8);P2=0 x30;delay(8);P2=0 x40;dela y(8);P2=0 x50;delay(8);P2=0 xf0;delay(8); void ba() P0=0 xff;d1=1;d2=0; P2=0 x00;delay(8);P2=0 x01;delay(8);P2=0 x02;delay(8);P2=0 x03;delay(8);P2=0 x04;dela y(8);P2=0 x07;delay(8);P2=0 x0e;delay(8); 班級班級 姓名姓名 基于單片機的光立方設計基于單片機的光立方設計 19 P2=0 x0e;delay(8);P2=0 x0f;delay(8); d1=0;d2=1; P2=0 x00;delay(8);P2=0 x10;delay(8);P2=0 x20;delay(8);P2=0 x30;delay(8);P2=0 x40;dela y(8);P2=0 x50;delay(8);P2=0 x90;delay(8); P2=0 xa0;delay(8);P2=0 xc0;delay(8);P2=0 xf0;delay(8); void jiu() P0=0 xff;d1=1;d2=0; P2=0 x00;delay(8);P2=0 x01;delay(8);P2=0 x02;delay(8);P2=0 x03;delay(8);P2=0 x04;dela y(8);P2=0 x07;delay(8);P2=0 x0e;delay(8); P2=0 x0e;delay(8); d1=0;d2=1; P2=0 x00;delay(8);P2=0 x10;delay(8);P2=0 x20;delay(8);P2=0 x30;delay(8);P2=0 x40;dela y(8);P2=0 x50;delay(8);P2=0 x90;delay(8); P2=0 xa0;delay(8);P2=0 xc0;delay(8);P2=0 xf0;delay(8); void bayiqi() switch(t) case 0: P0=0 xff;P2=0 xfe;ba();break;delay(1); case 1: P2=0 xfd;ba();break;delay(1); case 2: P2=0 xfb;ba();break;delay(1); case 3: P2=0 xf7;ba();break;delay(1); case 4: P2=0 xef;ba();break;delay(1); case 5: P2=0 xf7;ba();break;delay(1); case 6: P2=0 xfb;ba();break;delay(1); case 7: P2=0 xfd;ba();break;delay(1); case 8: P2=0 xfe;ba();break;delay(1); case 9: P2=0 xfe;yi();break;delay(1); case 10: P2=0 xfd;yi();break;delay(1); case 11: P2=0 xfb;yi();break;delay(1); case 12: P2=0 xf7;yi();break;delay(1); case 13: P2=0 xef;yi();break;delay(1); case 14: P2=0 xf7;yi();break;delay(1); 班級班級 姓名姓名 基于單片機的光立方設計基于單片機的光立方
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 墻面修理規(guī)劃方案(3篇)
- 機械庫存管理方案(3篇)
- 工廠工藝方案簡單(3篇)
- 環(huán)保餐盒訂購方案(3篇)
- DB13T 5843-2023 城堡式蛋雞舍建設技術規(guī)范
- 商業(yè)結構改造方案(3篇)
- 情物質采購方案(3篇)
- 江蘇財經職業(yè)技術學院《羽毛球基礎》2023-2024學年第二學期期末試卷
- 遼寧師范高等專科學校《信息動畫設計》2023-2024學年第二學期期末試卷
- 西南大學《鋼結構原理及設計》2023-2024學年第二學期期末試卷
- 文史哲與藝術中的數學智慧樹知到期末考試答案章節(jié)答案2024年吉林師范大學
- 信息光學智慧樹知到期末考試答案章節(jié)答案2024年北京工業(yè)大學
- 《HSK標準教程1》課件
- 電大財務大數據分析編程作業(yè)3
- 諾貝爾生理學或醫(yī)學獎史話智慧樹知到期末考試答案2024年
- 行業(yè)分析報告模板(很全面-非常有用)
- 內分泌系統(tǒng)疾病教學設計教案1
- 法人變更書面催促通知合集3篇
- 廣東省初級中學教育裝備標準
- 售票員崗前培訓
- 教科版六年級下冊科學第一單元《小小工程師》教材分析及全部教案(定稿;共7課時)
評論
0/150
提交評論