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

正文內容

畢業(yè)設計-基于52單片機的波形發(fā)生器的設計(參考版)

2025-01-19 23:33本頁面
  

【正文】 但是在加入程序后由于將 MOV SCON, 00010000B 誤寫為 MOV SCON, 00010000H 導致無法實現(xiàn)頻率可調,最后改正后,即將正確的 74LS165的程序加入到每個波形的處理子程序中后,四種波形頻率均可調 [10]。 ( 2) 通過我在圖書館查資料,編寫完成了可以通過 8 位撥碼開關的數(shù)字量送給單片機的 累加器 A,然后取反后在送給寄存器 R3 中,然后然 R3 減 1,直到減到 0 為止 ,利用此段延時作為兩個階梯電壓之間的時間差, 從而達到實時改變四種波形的頻率的目的。 軟件 程序調試 系統(tǒng)軟件調試是通過程序調節(jié)從而使電路系統(tǒng)更好的工作,以期得到更接近準確的數(shù)據(jù),從而使電路工作輸出更精確,更接近實際。而每次送到 DAC0832 的八位數(shù)字量是根據(jù)查正弦波形數(shù)據(jù)表格而得到 。將一個周期內的正弦波形等分為 256 份,對應 256 個數(shù)字量,利用查數(shù)據(jù)表的方式來實現(xiàn) 波形的產生。 方法二: DAC0832 是 8 位的 D/A 轉換器件,其工作電壓是 0—5V,當輸入00H 數(shù)字量的時候,輸出為 0V 電壓;當輸入 07FH 數(shù)字量的時候,輸出為 電壓;當輸入 0FFH 數(shù)字量的時候,輸出為 5V 電壓。但這種波形發(fā)生器輸出 頻率范圍窄,而且電路參數(shù)設定較繁瑣,輸出的波形易受外界環(huán)境影響,不穩(wěn)定,對電路硬件要求很高,不易實現(xiàn)。 (4) 正弦波產生 子程序 1) 正弦波產生子程序 流程圖見圖 。 圖 方波產生子程序流程圖 設 R0=9 P0 口輸出 0FFH 讀撥碼開關狀態(tài),取反后存入 R3 以 R3 為延時常數(shù),延時 R0=R0+2 R0=254? R0 清零 P0 口輸出 00H 讀撥碼開關狀態(tài),取反后存入 R3 以 R3 為延時常數(shù),延時 R0=R0+2 ? R0=254? 返回 Y N 設 R0=0 口輸出讀撥碼開關狀態(tài),取反后存入以 為延時常數(shù),延時?清零口輸出讀撥碼開關狀態(tài),取反后存入以 為延時常數(shù),延時??返回N Y 基于單片機的波形發(fā)生器的設計 23 (3) 三角波產生子程序 1) 三角波產生子程序 流程圖見圖 。 圖 鋸齒波產生子程序流程圖 (2) 方波產生子程序 1) 方波產生原理 先給寄存器 R0 賦值 00H,并且將 0FFH 送給 P0 口( DAC0832 的八位數(shù)據(jù)輸入端與 P0 口相連)使得 DAC0832 電壓輸出端輸出高電平,然后讓它不斷地R7, Acc 清零 P0=R7 讀撥碼開關狀態(tài),取反后存入 R3 以 R3 為延時常數(shù),延時 R7=R7+1 R0=254? 7 255? 返回 Y N 基于單片機的波形發(fā)生器的設計 22 自加 2,直到加到 254,重新給寄存器 R0 賦值 00H,并且將 00H 送給 P0 口,使得 DAC0832 電壓輸出端輸出低電平,然后讓它不斷地自加 2,直到加到 254,可以又自動歸 0,然后再不斷地重復上述過程進而產生方波。先將 00H 給寄存器 R6 賦值,然后讓它不斷地自加 1,直到加到 255,DAC0832 可以又自動歸 0,然后再不斷地重復上述過程進而產生鋸齒波。適當選擇循環(huán)的時間,可以得到不同周期的鋸齒波。 基于單片機的波形發(fā)生器的設計 19 Y N Y N Y N Y N 圖 主程序流程圖 頻率調整子程序 (1) 程序設計思路 按鍵部分我們通過 8位撥碼開關來實現(xiàn) 8位數(shù)字量通過 74ls165的并行輸入開 始 初始化,設置常量及指針 SQUK 按下 熄滅 SQUL 熄滅 SAWL 熄滅 TRIL 熄滅 SINL 點亮 SINL 調用方波輸出程序,輸出一個方周期的方波 點亮 TRIL 點亮 SAWL 點亮 SQUL 調用鋸齒波波輸出程序,輸出一個方周期的鋸齒波波 調用三角波輸出程序,輸出一個方周期的三角波 調用正弦波輸出程序,輸出一個方周期的正弦波 SAWK按下 TRIK 按下 SINK 按下 基于單片機的波形發(fā)生器的設計 20 串行輸出的數(shù)據(jù)存入單片機的累加器 A 中,然后將 A 中的值取反后送給寄存器R3,以 R3 為延時常數(shù)進行延時,使得階梯電壓沒升高一定的數(shù)值后就以 R3 為延時常數(shù)進行延時,從 而改變波形的輸出頻率,使頻率能夠實時隨著撥碼按鍵開關量的輸入而改變,實時性較強。 主程序流程圖 主程序設計思路 :首先給單片機上電,對 LCD1602 和中斷進行初始化設置,然后進行進行按鍵掃描,如果有按鍵按下就產生外部中斷 0 中斷,首先判斷方波選擇按鍵 SQ 是否按下,若按下對應的 LED 指示燈點亮;若沒按下繼 續(xù)判斷鋸齒波選擇按鍵 ST 是否按下,若按下對應的 LED 指示燈點亮;若沒按下繼續(xù)判斷三角波選擇按鍵 TRI 是否按下,若按下對應的 LED 指示燈點亮;若沒按下繼續(xù)判斷正弦波選擇按鍵 SIN 是否按下,若按下對應的 LED 指示燈點亮,若四個按鍵均未按下,跳到主程序,等待中斷的產生。模塊化的編程方法使得程序具有可讀性和易于維護的特點。 綜合以上匯編語言的優(yōu)點,波形發(fā)生器系統(tǒng)的軟件部分由匯編語言設計編程實現(xiàn)。 匯編語言,是一種功能很強的程序設計語言,匯編語言直接同計算機的底層軟件甚至硬件進行交互,它具 有如下一些優(yōu)點: (1)能夠直接訪問與硬件相關的存儲器或 I/O 端口; (2)能夠不受編譯器的限制,對生成的二進制代碼進行完全的控制; (3)能夠根據(jù)特定的應用對代碼做最佳的優(yōu)化,提高運行速度; (4)能夠最大限度地發(fā)揮硬件的功能。 C++在這方面做了很好的改進 ,在保留了指針操作的同時又增強了安全性。從應用的角度, C 語言比其他高級語言較難掌握。具體應用 到 單片機以及嵌入式系統(tǒng)開發(fā) ,但是 它 仍 具有如下 缺點 : (1)C 語言的缺點主要是表現(xiàn)在數(shù)據(jù) 的封裝性上,這一點使得 C 在數(shù)據(jù)的安全性上做的有很大缺陷,這也是 C 和 C++的一大區(qū)別。C 語言既具有高級語言的特點,又具有匯編語言的特點。這部分電路比較簡單,采用三端穩(wěn)壓管 7805 的輸出來實現(xiàn)的單片機的供電要求,由于不是本次設計的核心部分,故在此不作詳述。 圖 “D”型 9 針插頭引腳定義 圖 單片機與 PC 機的串行接口方案 電源供電電路 電源由 12V 直流穩(wěn)壓電源經過變壓、全波整流、電容濾波、三段集成穩(wěn)壓器 7805 穩(wěn)壓后給單片機供電。由于兩者的電平不匹配,必須對單片機輸出的 TTL 電平轉換為 RS232 電平 ,即由 12V 轉換為 5V。其電路圖如圖 。 1602內部集成有顯示芯片,可以識別英文字母、阿拉伯數(shù)字和日語。 0406030201000507WRWRCSCSRF BV RE F8G ND3V C C20CS1W R 12DI 34DI 25DI 16DI 07RF B9G ND10I O UT 111I O UT 212DI 713DI 614DI 515DI 416X F E R17W R 218I L E ( B Y 1 /B Y 2 )19D A C 0 8 3 2DA C0 8 3 292% 135幅度滑變1 0 0 k 圖 幅度調整模塊電路圖 基于單片機的波形發(fā)生器的設計 15 LCD1602 顯示模塊 LCD1602 1602 液晶也叫 1602 字符型液晶它是一種專門用來顯示字母、數(shù)字、符號等的 點陣 型液晶模塊它有若干個 57或者 511等點陣字符位組成, 1602采用并口傳輸,速度比 12864 快。 0801 501 40901 001 101 201 3TXDS/L01 5080901 001 101 201 301 4R X DO F F ON12345678161514131211109D S W 1D I P S W _ 8SI10D011D112D213D314D43D54D65D76SO9C L K2QH7I N H15S H /L D1U674 LS 1 6 5 圖 頻率調整模塊電路圖 幅度調整模塊 采用將 DAC0832 的 RFB 引腳接一個 100k 的滑動變阻器來改變 DAC0832的基準電壓 Vref,由 DAC0832 的輸出電壓 Vo=(Vref/2^8)*N(N 為單片機送給DAC0832 的 8 位數(shù)字量 )知道,改變基準電壓 Vref 就可以改變 DAC0832 的輸出電壓,從而達到波形幅度的改變。 頻率調整模塊 基于單片機的波形發(fā)生器的設計 14 按鍵部分我們通過 8位撥碼開關來實現(xiàn) 8位數(shù)字量通過 74ls165的并行輸入串行輸出給單片機的方案,這樣設計的目的優(yōu)點是節(jié)省單片機的 I/O 口資源,電路結構簡單易行。由于 DAC0832 存在的非線性,輸出信號的幅值存在一定的誤差。 通過 1k 電位器與兩個 1k 的電阻進行直流偏移的調節(jié)。其電路圖 如下: 0406030201000507WRWRCSCSRF BRF BV RE FV RE FV RE F8G ND3V C C20CS1W R 12DI 34DI 25DI 16DI 07RF B9G ND10I O UT 111I O UT 212DI 713DI 614DI 515DI 416X F E R17W R 218I L E ( B Y 1 /B Y 2 )19U1DA C08 3 2321411U3L M 3 2 4100% 123R V 11 0 0 ko u tABCDU3( V + )U3( V ) 圖 DAC0832 及濾波放大電路 電路性能指標分析 :用于調壓的 DAC0832 的參考電壓是 12V,所以,峰峰值可以調節(jié)到的最大值為 12V,由于運放的電源均為 177。為了防止程序執(zhí)行過程中失步或運行紊亂,此處我們采用了上電復位電路 [8]。特殊寄存器 AUXR(地址 8EH)上的 DISRTO 位可以使此功能無效。晶振工作時, RST 腳將持續(xù) 2 個機器周期高電平將使單片機復位。晶振電路解法 如 圖 所示 ,一端 接 基于單片機的波形發(fā)生器的設計 13 在 XTAL1 引腳上,另一端 接在 XTAL2 引腳上 。 XTAL2:振蕩器反相放大器的輸出端。 (3) 應用系統(tǒng)開發(fā)具有特殊性。 其應用特點 如下 [7]: (1) 可以給 用戶 提供 大量 I/O 口線。 ( si n 1 ) 255( 255 ) / 2tDi Y A ? ? ?? ? ? 基于單片機的波形發(fā)生器的設計 12 3 硬件實現(xiàn)及模塊電路設計 單片機最小系統(tǒng)的設計 STC89C52 是片內有 ROM/EPROM 的單片機,因此,這種芯片構成的最小系統(tǒng)簡單﹑可靠。其項目管理功能強大,可使單片機程序化大為小,化繁為簡,便于管理。 WAVE6000 編譯軟件,采用中文界面。 單片機軟件 集成 開發(fā) 環(huán)境 WAVE6000 編譯軟件是南京偉福公司開發(fā)設計的 單片機開發(fā)
點擊復制文檔內容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1