基于的LED顯示錄音回放機(jī)設(shè)計(jì)_第1頁
基于的LED顯示錄音回放機(jī)設(shè)計(jì)_第2頁
基于的LED顯示錄音回放機(jī)設(shè)計(jì)_第3頁
基于的LED顯示錄音回放機(jī)設(shè)計(jì)_第4頁
基于的LED顯示錄音回放機(jī)設(shè)計(jì)_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、通信與信息工程學(xué)院 2014 /2015 學(xué)年 第 一 學(xué)期 課程設(shè)計(jì) II 實(shí)驗(yàn)報(bào)告 模 塊 名 稱 51 專 業(yè) 通信工程 學(xué) 生 班 級 110016 學(xué) 生 學(xué) 號 學(xué) 生 姓 名 指 導(dǎo) 教 師 林建中 梅霆 孟田甜 設(shè)計(jì)題目 基于 8255 的 8LED 顯示錄音回放機(jī)設(shè)計(jì) 任務(wù)要求 1、把需要錄取的信號用 AD 轉(zhuǎn)換器采樣并存儲在 SRAM 中。 2、在一組數(shù)碼管或 LCD 上顯示采樣速率和錄音時(shí)間(秒),以 及信號相關(guān)參數(shù)。 3、用 D/A 轉(zhuǎn)換器回放錄音信號,通過模擬示波器顯示。 4、在一組數(shù)碼管或 LCD 上顯示回放的播放時(shí)間或信號強(qiáng)度。 發(fā)揮部分:發(fā)揮部分: 1、用功能鍵

2、可分別設(shè)定錄音和放音的采樣速率。 2、 多段錄音管理。 3、任意組合播放。 動態(tài)顯示格式動態(tài)顯示格式: 自定 實(shí)驗(yàn)設(shè)備 及軟件 計(jì)算機(jī)、Protues 以及 Keil 軟件 同組人員 學(xué)號及姓 名 11001603 李伊竹 參考文獻(xiàn) 單片機(jī)實(shí)驗(yàn)與課程設(shè)計(jì)指導(dǎo)(Protues 仿真版 51 系列單片機(jī) 李靜 第一部分第一部分 實(shí)驗(yàn)?zāi)康暮鸵髮?shí)驗(yàn)?zāi)康暮鸵?本課程設(shè)計(jì)是在理論課程的基礎(chǔ)上,重點(diǎn)培養(yǎng)學(xué)生的動手能力,通過理論 計(jì)算、實(shí)際編程、調(diào)試、測試、分析查找故障,解決在實(shí)際設(shè)計(jì)中的問題,使 設(shè)計(jì)好的電路能正常工作,為下一部結(jié)合實(shí)際的硬件系統(tǒng)設(shè)計(jì)準(zhǔn)備條件。 1 1、總體要求:、總體要求: 以下各類設(shè)

3、計(jì)必須按照實(shí)驗(yàn)提供的單片機(jī)原理圖(dpj.pdf 文件),結(jié)合自 己所選擇的題目進(jìn)行元器件的連接。 每組學(xué)生只能選擇一個(gè)與別組不同的設(shè)計(jì)題目,按照先到先選擇的規(guī)則進(jìn) 行選題。 在仿真設(shè)計(jì)完成的基礎(chǔ)上,有能力的同學(xué)可以申請硬件實(shí)驗(yàn)板的下載并完 成軟、硬件結(jié)合的課程設(shè)計(jì)。 2 2、分類要求:、分類要求: 錄音機(jī)類錄音機(jī)類 實(shí)驗(yàn)中需要錄取的信源,可以用單片機(jī)或者信號發(fā)生器產(chǎn)生。 基本要求基本要求: 1 把需要錄取的信號用 AD 轉(zhuǎn)換器采樣并存儲在 SRAM 中。 2 在一組數(shù)碼管或 LCD 上顯示采樣速率和錄音時(shí)間(秒),以及信 號相關(guān)參數(shù)。 3 用 D/A 轉(zhuǎn)換器回放錄音信號,通過喇叭過模擬示波器

4、顯示。 4 在一組數(shù)碼管或 LCD 上顯示回放的播放時(shí)間或信號強(qiáng)度。 發(fā)揮部分:發(fā)揮部分: 1 用功能鍵可分別設(shè)定錄音和放音的采樣速率。 2 多段錄音管理。 3 任意組合播放。 動態(tài)顯示格式動態(tài)顯示格式: 自定 根據(jù)提供的參考工程,在 proteus 平臺自己重新畫出實(shí)驗(yàn)所需要的電氣原理圖, 并在此基礎(chǔ)上編寫相對應(yīng)的程序,實(shí)現(xiàn)其功能,學(xué)習(xí) proteus 軟件的使用,其中 包括原理圖器件的選取、原理圖的電氣連接、程序的編寫編譯以及運(yùn)行,并能 查出其錯(cuò)誤等。 第二部分第二部分 實(shí)驗(yàn)工具及實(shí)驗(yàn)器件實(shí)驗(yàn)工具及實(shí)驗(yàn)器件 1.Proteus 以及以及 Keil 軟件的軟件的介紹介紹 Proteus 是英

5、國 Labcenter 公司開發(fā)的電路及單片機(jī)系統(tǒng)設(shè)計(jì)與仿真軟件。 Proteus 可以實(shí)現(xiàn)數(shù)字電路、模擬電路及微控制器系統(tǒng)與外設(shè)的混合電路系統(tǒng)的 電路仿真、軟件仿真、系統(tǒng)協(xié)同仿真和 PCB 設(shè)計(jì)等功能。Proteus 是目前唯一 能對各種處理器進(jìn)行實(shí)時(shí)仿真、調(diào)試與測試的 EDA 工具,真正實(shí)現(xiàn)了在沒有目 標(biāo)原型時(shí)就可對系統(tǒng)進(jìn)行調(diào)試、測試和驗(yàn)證。Proteus 軟件大大提高了企業(yè)的產(chǎn) 品開發(fā)效率,降低了開發(fā)風(fēng)險(xiǎn)。由于 Proteus 軟件逼真、真實(shí)的協(xié)同仿真功能, 它也特別適合于作為配合單片機(jī)課堂教學(xué)和實(shí)驗(yàn)的學(xué)習(xí)工具。 Proteus 軟件提供了 30 多個(gè)元器件庫、7000 余種元器件。元器

6、件涉及電阻、 電容、二極管、三極管、變壓器、繼電器、各種放大器、各種激勵(lì)器、各種微 控制器、各種門電路和各種終端等。Proteus 軟件還提供有交直流電壓表、邏輯 分析儀、示波器、定時(shí)/計(jì)數(shù)器和信號發(fā)生器等測試信號工具用于電路測試。 Keil C51 是美國 Keil Software 公司出品的 51 系列兼容單片機(jī) C 語言軟件開 發(fā)系統(tǒng),與匯編相比,C 語言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯 的優(yōu)勢,因而易學(xué)易用。Keil 提供了包括 C 編譯器、宏匯編、連接器、庫管理 和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個(gè)集成開發(fā)環(huán)境 (uVision)將這些部分組合在一起。

7、運(yùn)行 Keil 軟件需要 WIN98、NT、WIN2000、WINXP 等操作系統(tǒng)。如果你使用 C 語言編程,那么 Keil 幾乎就是你的不二之選,即使不使用 C 語言而僅用匯編語言編程,其方便 易用的集成環(huán)境、強(qiáng)大的軟件仿真調(diào)試工具也會令你事半功倍。 應(yīng)用 Keil 進(jìn)行軟件仿真開發(fā)的主要步驟為:編寫源程序并保存建立工程并 添加源文件設(shè)置工程編譯/匯編、連接,產(chǎn)生目標(biāo)文件程序調(diào)試。Keil 使 用“工程”(Project)的概念,對工程(而不能對單一的源程序)進(jìn)行編譯/匯 編、連接等操作。工程的建立、設(shè)置、編譯/匯編及連接產(chǎn)生目標(biāo)文件的方法非 常易于掌握。首先選擇菜單 File-New,在源

8、程序編輯器中輸入?yún)R編語言或 C 語言源程序(或選擇 File-Open,直接打開已用其它編輯器編輯好的源程序文 檔)并保存,注意保存時(shí)必須在文件名后加上擴(kuò)展名.asm(.a51)或.c;然后選 擇菜單 Project-New Project,建立新工程并保存(保存時(shí)無需加擴(kuò)展名,也可 加上擴(kuò)展名.uv2);工程保存后會立即彈出一個(gè)設(shè)備選擇對話框,選擇 CPU 后 點(diǎn)確定返回主界面。這時(shí)工程管理窗口的文件頁(Files)會出現(xiàn)“Target1”, 將其前面+號展開,接著選擇 Source Group1,右擊鼠標(biāo)彈出快捷菜單,選擇 “Add File to Group Source Group1”

9、,出現(xiàn)一個(gè)對話框,要求尋找并加入 源文件(在加入一個(gè)源文件后,該對話框不會消失,而是等待繼續(xù)加入其它文 件)。加入文件后點(diǎn) close 返回主界面,展開“Source Group1”前面+號,就會 看到所加入的文件,雙擊文件名,即可打開該源程序文件。緊接著對工程進(jìn)行 設(shè)置,選擇工程管理窗口的 Target1,再選擇 Project-Option for TargetTarget1(或點(diǎn)右鍵彈出快捷菜單再選擇該選項(xiàng)),打開工程屬性設(shè) 置對話框,共有 8 個(gè)選項(xiàng)卡,主要設(shè)置工作包括在 Target 選項(xiàng)卡中設(shè)置晶振頻 率、在 Debug 選項(xiàng)卡中設(shè)置實(shí)驗(yàn)仿真板等,如要寫片,還必須在 Output

10、選項(xiàng)卡 中選中“Creat Hex Fi”;其它選項(xiàng)卡內(nèi)容一般可取默認(rèn)值。工程設(shè)置后按 F7 鍵(或點(diǎn)擊編譯工具欄上相應(yīng)圖標(biāo))進(jìn)行編譯/匯編、連接以及產(chǎn)生目標(biāo)文件。 成功編譯/匯編、連接后,選擇菜單 Debug-Start/Stop Debug Session(或按 Ctrl+F5 鍵)進(jìn)入程序調(diào)試狀態(tài),Keil 提供對程序的模擬調(diào)試功能,內(nèi)建一個(gè)功 能強(qiáng)大的仿真 CPU 以模擬執(zhí)行程序。Keil 能以單步執(zhí)行(按 F11 或選擇 Debug-Step)、過程單步執(zhí)行(按 F10 或選擇 Debug-Step Over)、全速執(zhí)行等 多種運(yùn)行方式進(jìn)行程序調(diào)試。如果發(fā)現(xiàn)程序有錯(cuò),可采用在線匯編功

11、能對程序 進(jìn)行在線修改(Debug-Inline Assambly),不必執(zhí)行先退出調(diào)試環(huán)境、修改源 程序、對工程重新進(jìn)行編譯/匯編和連接、然后再次進(jìn)入調(diào)試狀態(tài)的步驟。對于 一些必須滿足一定條件(如按鍵被按下等)才能被執(zhí)行的、難以用單步執(zhí)行方 式進(jìn)行調(diào)試的程序行,可采用斷點(diǎn)設(shè)置的方法處理(Debug-Insert/Remove Breakpoint 或 Debug-Breakpoints等)。在模擬調(diào)試程序后,還須通過編程器 將.hex 目標(biāo)文件燒寫入單片機(jī)中才能觀察目標(biāo)樣機(jī)真實(shí)的運(yùn)行狀況。在 PROTEUS 繪制好原理圖后,調(diào)入已編譯好的目標(biāo)代碼文件:*.HEX,可以在 PROTEUS 的原

12、理圖中看到模擬的實(shí)物運(yùn)行狀態(tài)和過程。 2.51 單片機(jī)單片機(jī) AT89C51 51 單片機(jī)是對目前所有兼容 Intel 8031 指令系統(tǒng)的單片機(jī)的統(tǒng)稱。該系列單片 機(jī)的始祖是 Intel 的 8031 單片機(jī),后來隨著 Flash rom 技術(shù)的發(fā)展,8031 單片機(jī) 取得了長足的進(jìn)展,成為目前應(yīng)用最廣泛的 8 位單片機(jī)之一,其代表型號是 ATMEL 公司的 AT89 系列,它廣泛應(yīng)用于工業(yè)測控系統(tǒng)之中。目前很多公司都 有 51 系列的兼容機(jī)型推出,在目前乃至今后很長的一段時(shí)間內(nèi)將占有大量市場。 51 單片機(jī)是基礎(chǔ)入門的一個(gè)單片機(jī),還是應(yīng)用最廣泛的一種。需要注意的是 52 系列的單片機(jī)一般不

13、具備自編程能力。 當(dāng)前常用的 51 系列單片機(jī)主要產(chǎn)品有: *Intel 的:80C31、80C51、87C51,80C32、80C52、87C52 等; *ATMEL 的:89C51、89C52、89C2051 等; 89C51 單片機(jī)的內(nèi)部結(jié)構(gòu)為: 單一+5V 電源供電; CPU:由運(yùn)算和控制邏輯組成,同時(shí)還包括中斷系統(tǒng)和部分外部特殊功能 寄存器; RAM:用以存放可以讀寫的數(shù)據(jù),如運(yùn)算的中間結(jié)果、最終結(jié)果以及欲顯 示的數(shù)據(jù); ROM:用以存放程序、一些原始數(shù)據(jù)和表格; I/O 口:四個(gè) 8 位并行 I/O 口,既可用作輸入,也可用作輸出; T/C:兩個(gè)定時(shí)/記數(shù)器,既可以工作在定時(shí)模式,

14、也可以工作在記數(shù)模式; 五個(gè)中斷源的中斷控制系統(tǒng); 一對全雙工 UART(通用異步接收發(fā)送器)的串行 I/O 口,用于實(shí)現(xiàn)單片 機(jī)之間或單片機(jī)與微機(jī)之間的串行通信; 片內(nèi)振蕩器和時(shí)鐘產(chǎn)生電路,石英晶體和微調(diào)電容需要外接。最高振蕩頻率為 12M。 3.八進(jìn)制八進(jìn)制 3 3 態(tài)非反轉(zhuǎn)透明鎖存器態(tài)非反轉(zhuǎn)透明鎖存器74HC57374HC573 特點(diǎn):三態(tài)總線驅(qū)動輸出;置數(shù)全并行存?。痪彌_控制輸入;使能輸入有改善 抗擾度的滯后作用。 4. 原理說明:八個(gè)鎖存器都是透明的 D 型鎖存器,當(dāng)使能(G)為高時(shí),Q 輸出 將隨數(shù)據(jù)(D)輸入而變。當(dāng)使能為低時(shí),輸出將鎖存在已建立的數(shù)據(jù)電平上。 輸出控制不影響鎖存

15、器的內(nèi)部工作,即老數(shù)據(jù)可以保持,甚至當(dāng)輸出被關(guān)閉時(shí), 新的數(shù)據(jù)也可以置入。這種電路可以驅(qū)動大電容或低阻抗負(fù)載,可以直接與系 統(tǒng)總線接口并驅(qū)動總線,而不需要外接口。特別適用于緩沖寄存器,I/O 通道, 雙向總線驅(qū)動器和工作寄存器。 PIN No 引腳號 SYMBOL 符 號 NAME AND FUNCTION 名稱及功 能 1OE 3 State output Enable Input (Active LOW)3 態(tài)輸出使能輸入(低電平) 2, 3, 4, 5, 6, 7, 8, 9D0 to D7Data Inputs 數(shù)據(jù)輸入 12,13,14,15,16,17, 18,19 Q0 to Q

16、73 State Latch Outputs 3 態(tài)鎖存輸出 11LELatch Enable Input 鎖存使能輸入 10GNDGround 接地(0V) 20VCCPositive Supply Voltage 電源電壓 A8 A9 A10 A11 A12 A13 A14 A15 ADCS DACS 8255A0 8255A1 8255CS CON D0 2 D1 3 D2 4 D3 5 D4 6 D5 7 D6 8 D7 9 Q0 19 Q1 18 Q2 17 Q3 16 Q4 15 Q5 14 Q6 13 Q7 12 LE 11 OE 1 U7 74HC573 4.可編程并行 I/O

17、 接口芯片 8255A 8255 是 Intel 公司生產(chǎn)的可編程并行 I/O 接口芯片,有 3 個(gè) 8 位并行 I/O 口。 具有 3 個(gè)通道 3 種工作方式的可編程并行接口芯片(40 引腳)。 其各口功能 可由軟件選擇,使用靈活,通用性強(qiáng)。8255 可作為單片機(jī)與多種外設(shè)連接時(shí)的 中間接口電路。 8255 作為主機(jī)與外設(shè)的連接芯片,必須提供與主機(jī)相連的 3 個(gè)總線接口,即 數(shù)據(jù)線、地址線、控制線接口。同時(shí)必須具有與外設(shè)連接的接口 A、B、C 口。 由于 8255 可編程,所以必須具有邏輯控制部分,因而 8255 內(nèi)部結(jié)構(gòu)分為 3 個(gè)部 分:與 CPU 連接部分、與外設(shè)連接部分、控制部分。

18、特點(diǎn):(1)一個(gè)并行輸入/輸出的 LSI 芯片,多功能的 I/O 器件,可作為 CPU 總線與 外圍的接口. (2)具有 24 個(gè)可編程設(shè)置的 I/O 口,即 3 組 8 位的 I/O 口為 PA 口,PB 口和 PC 口. 它們又可分為兩組 12 位的 I/O 口,A 組包括 A 口及 C 口(高 4 位,PC4PC7),B 組 包括 B 口及 C 口(低 4 位,PC0PC3).A 組可設(shè)置為基本的 I/O 口,閃控(STROBE) 的 I/O 閃控式,雙向 I/O3 種模式;B 組只能設(shè)置為基本 I/O 或閃控式 I/O 兩種模式, 而這些操作模式完全由控制寄存器的控制字決定. RESE

19、T:復(fù)位輸入線,當(dāng)該輸入端處于高電平時(shí),所有內(nèi)部寄存器(包括控制寄 存器)均被清除,所有 I/O 口均被置成輸入方式。 CS:芯片選擇信號線,當(dāng)這個(gè)輸入引腳為低電平時(shí),即/CS=0 時(shí),表示芯片被選中, 允許 8255 與 CPU 進(jìn)行通訊;/CS=1 時(shí),8255 無法與 CPU 做數(shù)據(jù)傳輸. RD:讀信號線,當(dāng)這個(gè)輸入引腳為低電平時(shí),即/RD=0 且/CS=0 時(shí),允許 8255 通過 數(shù)據(jù)總線向 CPU 發(fā)送數(shù)據(jù)或狀態(tài)信息,即 CPU 從 8255 讀取信息或數(shù)據(jù)。 WR:寫入信號,當(dāng)這個(gè)輸入引腳為低電平時(shí),即/WR=0 且/CS=0 時(shí),允許 CPU 將 數(shù)據(jù)或控制字寫入 8255。

20、D0D7:三態(tài)雙向數(shù)據(jù)總線,8255 與 CPU 數(shù)據(jù)傳送的通道,當(dāng) CPU 執(zhí)行輸入 輸出指令時(shí),通過它實(shí)現(xiàn) 8 位數(shù)據(jù)的讀/寫操作,控制字和狀態(tài)信息也通過數(shù)據(jù) 總線傳送。 PA0PA7:端口 A 輸入輸出線,一個(gè) 8 位的數(shù)據(jù)輸出鎖存器/緩沖器, 一個(gè) 8 位的數(shù)據(jù)輸入鎖存器。 PB0PB7:端口 B 輸入輸出線,一個(gè) 8 位的 I/O 鎖存器一個(gè) 8 位的輸入輸出緩 沖器。 PC0PC7:端口 C 輸入輸出線,一個(gè) 8 位的數(shù)據(jù)輸出鎖存器/緩沖器, 一個(gè) 8 位的數(shù)據(jù)輸入緩沖器。端口 C 可以通過工作方式設(shè)定而分成 2 個(gè) 4 位的端口, 每個(gè) 4 位的端口包含一個(gè) 4 位的鎖存器,分別

21、與端口 A 和端口 B 配合使用,可 作為控制信號輸出或狀態(tài)信號輸入端口。 A1,A0:地址選擇線,用來選擇 8255 的 PA 口,PB 口,PC 口和控制寄存器. 當(dāng) A1=0,A0=0 時(shí),PA 口被選擇; 當(dāng) A1=0,A0=1 時(shí),PB 口被選擇; 當(dāng) A1=1,A0=0 時(shí),PC 口被選擇; 當(dāng) A1=1.A0=1 時(shí),控制寄存器被選擇. 5.三態(tài)輸出的八 D 透明鎖存器 74LS373 373 的輸出端 O0O7 可直接與總線相連。 當(dāng)三態(tài)允許控制端 OE 為低 電平時(shí),O0O7 為正常邏輯狀態(tài),可用來驅(qū)動負(fù)載或總線。當(dāng) OE 為高電平 時(shí),O0O7 呈高阻態(tài),即不驅(qū)動總線,也不

22、為總線的負(fù)載,但鎖存器內(nèi)部的邏 輯操作不受影響。 當(dāng)鎖存允許端 LE 為高電平時(shí),O 隨數(shù)據(jù) D 而變。 當(dāng) LE 為低電平時(shí),O 被鎖存在已建立的數(shù)據(jù)電平。當(dāng) LE 端施密特觸發(fā)器 的輸入滯后作用,使交流和直流噪聲抗擾度被改善 400mV。 引出端符號: D0D7 數(shù)據(jù)輸入端 OE 三態(tài)允許控制端(低電平有效)LE 鎖存允許端 O0O7 輸出端 WR D0 D1 D2 D3 D4 D5 D6 D7 A8 A9 A10 A11 A12 RD D0 D1 D2 D3 D4 D5 D6 D7 ALE A0 10 A1 9 A2 8 A3 7 A4 6 A5 5 A6 4 A7 3 A8 25 A9

23、 24 A10 21 A11 23 A12 2 CE 20 CS 26 WE 27 OE 22 D0 11 D1 12 D2 13 D3 15 D4 16 D5 17 D6 18 D7 19 U6 6264 D0 3 Q0 2 D1 4 Q1 5 D2 7 Q2 6 D3 8 Q3 9 D4 13 Q4 12 D5 14 Q5 15 D6 17 Q6 16 D7 18 Q7 19 OE 1 LE 11 U9 74LS373 6.ADC0804 ADC0804 為一只具有 20 引腳 8 位 CMOS 連續(xù)近似的 A/D 轉(zhuǎn)換器 主要技術(shù)指標(biāo)如下: (1) 高阻抗?fàn)顟B(tài)輸出(2) 分辨率:8 位(

24、0255) (3) 存取時(shí)間:135 ms (4) 轉(zhuǎn)換 時(shí)間:100 ms(5) 總誤差:-1+1LSB(6) 工作溫度:ADC0804C 為 0 度70 度; ADC0804L 為-40 度85 度 (7) 模擬輸入電壓范圍:0V5V (8) 參考電壓: 2.5V (9) 工作電壓:5V(10) 輸出為三態(tài)結(jié)構(gòu)。引腳功能說明: 1.PIN1 (CS ):Chip Select,與 RD、WR 接腳的輸入電壓高低一起判斷讀取或 寫入與否,當(dāng)其為低位準(zhǔn)(low) 時(shí)會 active。2 PIN2 ( RD ):Read。當(dāng) CS 、RD 皆為低位準(zhǔn)(low) 時(shí),ADC0804 會將轉(zhuǎn)換后的數(shù)

25、字訊號經(jīng)由 DB7 DB0 輸出至其它處理單元。3. PIN3 (WR ):啟動轉(zhuǎn)換的控制訊號。當(dāng) CS 、WR 皆 為低位準(zhǔn)(low) 時(shí) ADC0804 做清除的動作,系統(tǒng)重置。當(dāng) WR 由 01 且 CS 0 時(shí),ADC0804 會開始轉(zhuǎn)換信號,此時(shí) INTR 設(shè)定為高位準(zhǔn)(high)。4. PIN4、PIN19 (CLK IN、CLKR):頻率輸入/輸出。頻率輸入可連接處理單元的 訊號頻率范圍為 100 kHz 至 800 kHz。而頻率輸出頻率最大值無法大于 640KHz,一般可選用外部或內(nèi)部來提供頻率。若在 CLK R 及 CLK IN 加上電 阻及電容,則可產(chǎn)生 ADC 工作所需

26、的時(shí)序,其頻率約為:5. PIN5 ( INTR ): 中斷請求。轉(zhuǎn)換期間為高位準(zhǔn)(high),等到轉(zhuǎn)換完畢時(shí) INTR 會變?yōu)榈臀粶?zhǔn)(low)告 知其它的處理單元已轉(zhuǎn)換完成,可讀取數(shù)字?jǐn)?shù)據(jù)。6. PIN6、PIN7 (VIN(+)、 VIN(-):差動模擬訊號的輸入端。輸入電壓 VINVIN(+) VIN(-),通常使用 單端輸入,而將 VIN(-)接地。7. PIN8 (AGND):模擬電壓的接地端。 7.DAC0832 ADCS RD WR INPUT VIN+ 6 VIN- 7 VREF/2 9 CLK IN 4 A GND 8 RD 2 WR 3 INTR 5 CS 1 D GND

27、10 DB7(MSB) 11 DB6 12 DB5 13 DB4 14 DB3 15 DB2 16 DB1 17 DB0(LSB) 18 CLK R 19 VCC 20 U5 ADC0804 R3 10KR4 10K R5 1K R6 1K C1 0.1U INPUT DAC0832 是 8 分辨率的 D/A 轉(zhuǎn)換集成芯片。與微處理器完全兼容。這個(gè) DA 芯 片以其價(jià)格低廉、接口簡單、轉(zhuǎn)換控制容易等優(yōu)點(diǎn),在單片機(jī)應(yīng)用系統(tǒng)中得到 廣泛的應(yīng)用。D/A 轉(zhuǎn)換器由 8 位輸入鎖存器、8 位 DAC 寄存器、8 位 D/A 轉(zhuǎn)換 電路及轉(zhuǎn)換控制電路構(gòu)成。 DAC0832 的主要特性參數(shù)如下: 分辨率為

28、8 位;電流穩(wěn)定時(shí)間 1us;可單緩沖、雙緩沖或直接數(shù)字輸入;只需 在滿量程下調(diào)整其線性度;單一電源供電(+5V+15V);低功耗,200mW。 DAC0832 結(jié)構(gòu): D0D7:8 位數(shù)據(jù)輸入線,TTL 電平,有效時(shí)間應(yīng)大于 90ns(否則鎖存器的數(shù) 據(jù)會出錯(cuò));ILE:數(shù)據(jù)鎖存允許控制信號輸入線,高電平有效;CS:片選信號 輸入線(選通數(shù)據(jù)鎖存器),低電平有效;WR1:數(shù)據(jù)鎖存器寫選通輸入線, 負(fù)脈沖(脈寬應(yīng)大于 500ns)有效。由 ILE、CS、WR1 的邏輯組合產(chǎn)生 LE1, 當(dāng) LE1 為高電平時(shí),數(shù)據(jù)鎖存器狀態(tài)隨輸入數(shù)據(jù)線變換,LE1 的負(fù)跳變時(shí)將輸 入數(shù)據(jù)鎖存;XFER:數(shù)據(jù)傳

29、輸控制信號輸入線,低電平有效,負(fù)脈沖(脈寬應(yīng) 大于 500ns)有效;WR2:DAC 寄存器選通輸入線,負(fù)脈沖(脈寬應(yīng)大于 500ns)有效。由 WR1、XFER 的邏輯組合產(chǎn)生 LE2,當(dāng) LE2 為高電平時(shí), DAC 寄存器的輸出隨寄存器的輸入而變化,LE2 的負(fù)跳變時(shí)將數(shù)據(jù)鎖存器的內(nèi) 容打入 DAC 寄存器并開始 D/A 轉(zhuǎn)換。IOUT1:電流輸出端 1,其值隨 DAC 寄 存器的內(nèi)容線性變化;IOUT2:電流輸出端 2,其值與 IOUT1 值之和為一常數(shù); Rfb:反饋信號輸入線,改變 Rfb 端外接電阻值可調(diào)整轉(zhuǎn)換滿量程精度;Vcc: 電源輸入端,Vcc 的范圍為+5V+15V;VR

30、EF:基準(zhǔn)電壓輸入線,VREF 的范 圍為-10V+10V;AGND:模擬信號地 DGND:數(shù)字信號地 DAC0832 的工作方式: 根據(jù)對 DAC0832 的數(shù)據(jù)鎖存器和 DAC 寄存器的不同的控制方式,DAC0832 有 三種工作方式:直通方式、單緩沖方式和雙緩沖方式。 D0 D1 D2 D3 D7 D6 D5 D4 DACS WR VREF 8 GND 3 VCC 20 CS 1 WR1 2 DI3 4 DI2 5 DI1 6 DI0 7 RFB 9 GND 10 IOUT1 11 IOUT2 12 DI7 13 DI6 14 DI5 15 DI4 16 XFER 17 WR2 18 I

31、LE(BY1/BY2) 19 U3 DAC0832 +5V 第三部分第三部分 實(shí)驗(yàn)原理圖及程序代碼實(shí)驗(yàn)原理圖及程序代碼 1.硬件部分電路設(shè)計(jì)硬件部分電路設(shè)計(jì) 本次實(shí)驗(yàn)設(shè)計(jì)的是一個(gè)基于 8255 的 8LED 顯示錄音回放機(jī)設(shè)計(jì)實(shí)驗(yàn),基于 8255 口是指顯示和鍵盤都由 8255 的 I/O 口控制,使用 8255 可編程并行口芯片, 設(shè)定為工作方式 0, PC 口做輸入,PA 口做輸出,使得達(dá)到控制通過按鍵選擇 在 8LED 上顯示采樣速率和錄音時(shí)間(秒),以及信號相關(guān)參數(shù)。通過方波輸 入信號,進(jìn)行 AD 轉(zhuǎn)換,存儲相應(yīng)數(shù)據(jù)在 SRAM 中,最后進(jìn)行 DA 轉(zhuǎn)換回放錄 音信號,通過喇叭過模擬示

32、波器顯示,該電路的顯示部分按要求則使用型號為 LM016 的 8LED 液晶顯示器,通過 P0 口傳送數(shù)據(jù)然后由 8LED 顯示出來。另 外,電路中還設(shè)計(jì)了兩個(gè)按鍵,分別是采樣和回放鍵。 KEY1 KEY2 R8 10K R9 10K 開開始始/暫暫停停采采樣樣 開開始始/暫暫停?;鼗胤欧?完整電路圖如下: 2.2.軟件部分設(shè)計(jì)軟件部分設(shè)計(jì) *基于 8255 的 8LED 顯示語音播放機(jī)設(shè)計(jì)程序*/ #include #include /*宏定義*/ #define uint unsigned int #define uchar unsigned char /*芯片端口地址定義*/ #defi

33、ne COM8255 XBYTE0X7FFF /8255 的命令口 #define PA8255 XBYTE0X1FFF /8255 的 PA #define PB8255 XBYTE0X3FFF /8255 的 PB #define PC8255 XBYTE0X5FFF /8255 的 PC #define DAC0832 XBYTE0XBFFF /DAC0832 口 #define ADC0804 XBYTE0X77FF /ADC0804 口 uchar dis_buf=0 xc0,0 x40,0 xc0,0 xff,0 xc0,0 x40,0 xc0,0 xc0;/數(shù)碼管顯 示緩存,格式

34、為 MM-NN-SS Uchar code du_code=0 xC0,0 xF9,0 xA4,0 xB0,0 x99,0 x92,0 x82,0 xF8,0 x80,0 x90, ; /8 段共陽極 數(shù)碼管顯示碼值 uchar code bit_code=0 x01,0 x02,0 x04,0 x08,0 x10,0 x20,0 x40,0 x80;/數(shù) 碼管顯示的位值 /*系統(tǒng)引腳定義*/ sbit key1=P30; /key1 sbit key2=P31; /key2 sbit CON=P33; /74HC573 的鎖存端 /*定義系統(tǒng)變量*/ uchar num=0,second=0

35、,minute=0; /定義時(shí)間變量 bit flag1=0,flag2=0; /定義狀態(tài)標(biāo)志位 uchar count=0; uchar A; /*延時(shí)子程序*/ void delayms(uchar x) /ms 延時(shí)函數(shù) uchar y; for(;x0;x-) for(y=110;y0;y-) ; /*鍵盤掃描程序*/ void keyscan() if(key1=0) /判斷 key1 是否被按下 delayms(20); /延時(shí)消抖 if(key1=0) /判斷 key2 是否被按下 flag1=1; TR0=TR0; /開始/暫停計(jì)時(shí) if(flag2=1)/判斷上一個(gè)狀態(tài)是否為

36、回放狀態(tài) flag2=0; num=0; second=0; minute=0; /時(shí)間信息清零 while(!key1); /等待 key1 松開 if(key2=0) /判斷 key2 是否被按下 delayms(20); /延時(shí)消抖 if(key2=0) /判斷 key2 是否被按下 flag2=1; TR0=TR0; /開始/暫停計(jì)時(shí) if(flag1=1) flag1=0; /采樣狀態(tài)標(biāo)志位清零 num=0; second=0; minute=0;/時(shí)間信息清零 while(!key2); /等待 key2 松開 void trans_data() if(flag1=1) dis_b

37、uf0=du_code1 dis_buf1=du_code0; dis_buf2=du_code0; else dis_buf0=du_codeA/100; dis_buf1=du_codeA%100/10; dis_buf2=du_codeA%10; dis_buf4=du_codesecond/10; dis_buf5=du_codesecond%10 dis_buf6=du_codenum/10; dis_buf7=du_codenum%10; /*系統(tǒng)初始化程序*/ void Initial() /CON=1;/鎖存器地址鎖存 COM8255=0 x89;/定義 8255 的 A 口為

38、輸出,B 口和 C 口為輸入 /CON=0; TMOD=0 x11; /定義定時(shí)器的工作方式 TH0=(65536-10000)/256; TL0=(65536-10000)%256;/給 T0 裝初值 TH1=(65536-500)/256; TL1=(65536-500)%256;/給 T1 裝初值 ET0=1; /開 T0 的中斷 ET1=1; /開 T1 的中斷 EA=1; /開總中斷 TR0=0; /關(guān)閉 T0 TR1=1; /*主程序*/ void main() uint x=0 xE000; /定義 SRAM 地址變量 uchar temp;/定義系統(tǒng)臨時(shí)變量 Initial()

39、; /系統(tǒng)初始化 while(1) keyscan(); x=0 xE000; while(flag1=1) /判斷狀態(tài)標(biāo)志位 if(TR0=1) /判斷計(jì)時(shí)是否開始 ADC0804=0 xff; /將口置 1,啟動 AD delayms(1); /延時(shí) temp=ADC0804; /讀取 AD 轉(zhuǎn)換的數(shù)據(jù) XBYTEx=temp; /將 AD 轉(zhuǎn)換的數(shù)據(jù)存入 SRAM 中 x+; /地址值加 1 if(x=0 xFFFF) /判斷 SRAM 的地址范圍 x=0 xE000; keyscan(); trans_data(); x=0 xE000; /將地址清零 while(flag2=1) /回放循環(huán) if(TR0=1) /判斷是否正在進(jìn)行回放 temp=XBYTEx; /從 SRAM 中讀取數(shù)據(jù) A=temp; x+; /6264 地址加 1 if(x=0 xfff) /判斷地址范圍 x=0 xE000; TR0=0; /CON=1; DAC0832=t

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論