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

正文內(nèi)容

基于fpga的遠(yuǎn)程監(jiān)控系統(tǒng)設(shè)計(jì)畢業(yè)論文有程序(參考版)

2024-09-01 19:21本頁面
  

【正文】 具體的在這里不再贅述,需要的可以在附錄程序中查看;最關(guān)鍵的要在數(shù)據(jù)的十六進(jìn)制的發(fā)送跟接收,盡管說在控件中有關(guān)于如何將二進(jìn)制數(shù)轉(zhuǎn)換成16 進(jìn)制的 數(shù)但是其中涉及到很多格式的書寫,要確定你的轉(zhuǎn)換位數(shù)是多少,如要達(dá)到我們的將數(shù)據(jù)連續(xù)輸出的目的我們在其中進(jìn)行不斷地?cái)?shù)據(jù)接收掃描顯示。 結(jié)合圖 34 中我們要實(shí)現(xiàn)電機(jī)的停止,啟動(dòng),串口的打開,數(shù)據(jù)的 16 進(jìn)制接收跟十六進(jìn)制控制數(shù)據(jù)發(fā)送,那么如何去測試它呢,首先我采用的是分模塊的思想去逐個(gè)驗(yàn)證。 VB 界面編程驗(yàn)證 但我們將 VB 界面布局完成,代碼編輯完成,接下來就是到了調(diào)試運(yùn)行的階段。 再有一個(gè)比較常見的串口問題在此次的課題驗(yàn)證中我們也遇到了,那就是波特率不準(zhǔn)確的問題,那么在此次的試驗(yàn)中我總結(jié)一個(gè)行知有效的思路。當(dāng)完成數(shù)據(jù)的采樣檢測,完成后狀態(tài)無條件的進(jìn)入 R_wait 狀態(tài),等待下次數(shù)據(jù)的到來,當(dāng)狀態(tài)處于 x_stop 狀態(tài)的時(shí)候無論停止位是 1, 或者 2位,狀態(tài)機(jī)都不會(huì)具體檢查 RXD,只是輸出幀接收完畢信號( rec_)給 1而已,停止位后轉(zhuǎn)太機(jī)轉(zhuǎn)回到 R_start狀態(tài),等待下一幀的起始位。在 r_center 狀態(tài)下對起始位進(jìn)行 16 個(gè)時(shí)鐘周期的 檢測之后跳轉(zhuǎn)到 x_wait 狀態(tài),等待計(jì)數(shù)滿 16 個(gè) bclk 進(jìn)入 r_sample 進(jìn)行數(shù)據(jù)的采樣檢測,同時(shí)判斷數(shù)據(jù)位的長度是否已經(jīng)達(dá)到幀長度,當(dāng)?shù)絹韯t說明停止位來臨,數(shù)據(jù)幀長度( FRAMELEN)是可以更改的,在本研究課題中我們默認(rèn)是 8,也即數(shù)據(jù)位是 8 位。完成一次幀的發(fā)送。此時(shí)如果 xmit_cmd_p 在串口 24 發(fā)送完成一個(gè)數(shù)據(jù)幀之后仍然有效那么就會(huì)錯(cuò)誤的被認(rèn)為一個(gè)新的數(shù)據(jù)發(fā)送命令又來了,顯然該幀的發(fā)送時(shí)錯(cuò)誤的。 在調(diào)試串口這個(gè)單元的時(shí)候我們首先遇到的問題是沒有將其中的狀態(tài)轉(zhuǎn)換搞清楚,為了更好的理解清楚的看到其中狀態(tài)的改變,我們調(diào)出發(fā)送跟接收模塊的狀態(tài)轉(zhuǎn)換圖如圖 4圖 43所示。 圖 41 通過圖我們可以看到輸入為十六進(jìn)制的 a,從我們的程序原理觸發(fā)我們要輸出則應(yīng)該是 10011000,仿真完全 符合程序設(shè)計(jì)。 串口通信的調(diào)試 在這里我 們?nèi)绾螌Υ谕ㄐ胚@塊進(jìn)行實(shí)時(shí)有效的驗(yàn)證與仿真,這個(gè)成了我們一個(gè)問題,經(jīng)過考慮我們決定將并行接收到的數(shù)據(jù)輸入到一個(gè)數(shù)碼管譯碼模塊( decoder_8)來分別對應(yīng)器顯示的數(shù)據(jù),其模塊仿真圖如 41所示,將串行發(fā)送的數(shù)據(jù)通過 RS232 電路輸入到 PC 端,用串口調(diào)試助手進(jìn)行初始的調(diào)試。 分頻模塊仿真( fenpin1) 在這里由于我們在試驗(yàn)中我們都采用的是一種設(shè)計(jì)思路設(shè)計(jì)的分頻,所以在這里我們就采取一個(gè)模塊進(jìn)行仿真驗(yàn)證,只對我們的思路進(jìn)行驗(yàn)證,接下來的類似的分頻模塊將不予在報(bào)告中進(jìn)行仿真分析說明。 22 電機(jī)使能控制仿真 我們可以從圖中發(fā)現(xiàn)小于 6個(gè)時(shí)鐘輸入之前 clr 為 0, ena 為 1, load 為 0;當(dāng)在第6個(gè)時(shí)鐘時(shí)期 clr 為 0, ena 為 0, load 為 1;當(dāng)為 7 的時(shí)候 ena 為 0, load 為 0, clr 為1,正好滿足我們要設(shè)計(jì)的功能。 21 鋸齒波發(fā)生器 從仿真圖中我們可以很明顯的看出, speed 是從 0 加到 254 再回到 0 繼續(xù)循環(huán),從而實(shí)現(xiàn)了鋸齒波的遞增功能。如果在啟動(dòng)仿真后,沒有出現(xiàn)仿真完成后的波形圖,而是出現(xiàn)文字“ Can’ t open Simulation Report Window ” 但 報(bào) 告 仿 真 成 功 , 則 可 以 通 過Processing1Simulation Report 自己打開仿真波 形。 ( 5)仿真器參數(shù)設(shè)定 選擇 Assignment 下拉菜單中 Settings 選項(xiàng),選擇 Settings 對話框中的CategorylSimulator 命令,在此項(xiàng)下可以觀察仿真總體設(shè)置情況;在 Simulation 欄 中確認(rèn)仿真模式為功能仿真; ( 6)啟動(dòng)仿真器 在 processing 下拉菜單中直接選擇 Start Simulation 選擇,直到出現(xiàn)仿真成功窗口出現(xiàn)。 ( 4)編輯輸入波形 選中你將要編輯的波形進(jìn)行單擊,使它變?yōu)樗{(lán)色,用設(shè)置時(shí)鐘的方式設(shè)置它,再單擊左側(cè)的時(shí)鐘設(shè)置鍵,在 clock 窗口中設(shè)置信號周期占空比等。 20 ( 2)設(shè)置仿真時(shí)間 這是為了使仿真時(shí)間更合理,才設(shè)置的仿真時(shí)間區(qū)域,在 Edit 菜單中選擇 End Time選項(xiàng),在彈出的對話框中輸入時(shí)間范圍點(diǎn)擊“ OK”結(jié)束設(shè)置。 Vwf 文件將仿真輸入矢量和仿真輸出描述成為一波形的圖形來實(shí)現(xiàn)仿真,但是也可以將仿真激勵(lì)矢量用文本表達(dá),即文本方式的矢量文件。 當(dāng)我們的工程編譯通過后,必須對整個(gè)項(xiàng)目進(jìn)行全面徹底的測試驗(yàn)證,也即仿真,來確保項(xiàng)目的功能性跟時(shí)序性,針對本次的實(shí)驗(yàn)我們只是針對功能性進(jìn)行驗(yàn)證。從細(xì)節(jié)上我們對各個(gè)模塊所要實(shí)現(xiàn)的功能及連接管教進(jìn)行了初步的預(yù)設(shè)從而更進(jìn)一步的促成了整個(gè)方案的連貫。 CommandButton 主要用于設(shè)計(jì)用戶和應(yīng)用程序的交換式訪問。 Label 控件用于窗體或者其它容器中顯示文本。 ( 3)串口發(fā)送模塊 這里出現(xiàn)了和接收模塊 不一樣的地方是輸入是個(gè)八位的總線數(shù)據(jù)輸入,輸出卻是串 行數(shù)據(jù),另一點(diǎn)不一樣的是多了一個(gè) xmi_cmd_p,這個(gè)信號其實(shí)是一個(gè)始終控制信號,用來控制何時(shí)開始發(fā)送,何時(shí)結(jié)束進(jìn)行下一次的發(fā)送 ( 4)發(fā)送控制模塊 結(jié)合數(shù)據(jù)發(fā)送的波特率及為了實(shí)現(xiàn)發(fā)送兩個(gè)字節(jié)的目的我們采用了 發(fā)送控制也 及將 50Mhz 的時(shí)鐘進(jìn)行 10000000 分頻。 ( 1)波特率發(fā)生模塊 波特率發(fā)生模塊是為了提供符合傳輸波特率的時(shí)鐘信號,兩個(gè)輸入端一個(gè)輸出端,一個(gè) 50Mhz 的時(shí)鐘 clk 輸入,一個(gè)復(fù)位高電平復(fù)位信號輸入, bclk 則是波特率時(shí)鐘信號。 串行信號接收器接收 RXD 串行信號將其轉(zhuǎn)換為并行信號數(shù)據(jù)。 TXD 是串口發(fā)送端,為輸出信號; RXD 是串口接收端,串口的基本原 17 理圖如圖 33 所示。并選擇使用一位停止位。 在信號線上會(huì)出現(xiàn)兩種狀態(tài),分別是邏輯 0 和邏輯 1,在發(fā)送空閑狀態(tài)保持高電平狀態(tài)。 ( 2)比較器 A和 B分別是兩個(gè) 8位的數(shù),分別連接的是鋸齒波的二進(jìn)制八位輸出,和直線的八位數(shù) 據(jù),兩個(gè)進(jìn)行比較, A=B 輸出 1,否則輸出 0 低電平。 in0~ in3 分別是四個(gè)計(jì)數(shù)模塊的數(shù)據(jù)信號,他們分別占用一個(gè)數(shù)碼管,沒有個(gè)數(shù)碼管有 7個(gè) led,同時(shí)點(diǎn)亮不同的 led 將會(huì)有不同的數(shù)字顯示出來,具體的 7段 led 如圖32 所示: 圖 32 我們將 in 輸出的 0~ 9 與數(shù)碼管的 9 個(gè)不同的點(diǎn)亮方式進(jìn)行對應(yīng)起來,從而實(shí)現(xiàn)了數(shù)碼管對計(jì)數(shù)的顯示 16 ( 5)計(jì)數(shù)數(shù)據(jù)鎖存 LOAD 是我們的數(shù)據(jù)鎖存使能信號有效高電平的時(shí)候, DIN 的數(shù)據(jù)將直接給予 DOUT。 15 ( 3)電機(jī)使能控制單元 根據(jù)我們的直流電機(jī) 6s 輸出原理,我們采用的是 1hz 的時(shí)鐘 Clk的輸入, ena 是計(jì) 數(shù)模塊使能信號, clr是清零信號, load 是數(shù)據(jù)鎖存使能信號,當(dāng) Clk 脈沖數(shù)小于 6時(shí)計(jì)數(shù)模塊使能打開,不清零,鎖存使能給低電平無效;當(dāng)?shù)扔?6時(shí)鎖存使能高電 平有效,計(jì)數(shù)使能無效,清零信號無效;當(dāng)?shù)扔?7的時(shí)候進(jìn)行清零,計(jì)數(shù)使能跟鎖存使能無效。 ( 2)分頻器 這里的分頻模塊有兩個(gè)但是其中的原理是一樣的,我們選用 50Mhz 的主晶振作為分頻時(shí)鐘的輸入,當(dāng)我們要的到一個(gè) 1Mhz 的輸出時(shí)候我們將使得輸入 50 個(gè)周期的時(shí)鐘脈沖沿之后我們輸出一個(gè)脈沖這樣就將 50Mhz 分為了 50 份,每份自然就是 1Mhz 了。為了能夠顯示的數(shù)據(jù)能夠在數(shù)碼管上穩(wěn)定的顯示我們加上了一個(gè) 16位的鎖存器,把所存的數(shù)據(jù)送到數(shù)碼管顯示,這樣一來會(huì)因?yàn)樵谟?jì)數(shù)過程中,數(shù)據(jù)的變化而使數(shù)碼管的顯示不斷地變化。例如 45*10 變成 450,即為在“ 45”個(gè)位后面加了一個(gè)“ 0”。最后將這個(gè)數(shù)據(jù)在數(shù)碼管上顯示出來。 14 模塊化分析 直流電機(jī)監(jiān)視模塊 電機(jī)的轉(zhuǎn)速通常是指每分鐘的轉(zhuǎn)速,也就是單位是 rpm,但是實(shí)際的測量過程中,為了減少轉(zhuǎn)速的刷新時(shí)間,通常都是 5~ 10秒刷新一次。其他的欄目根據(jù)實(shí)際的需要再詳細(xì)補(bǔ)充便可以。 要實(shí)現(xiàn)對直流電機(jī)的控制那么我們選擇從 PWM 調(diào)制波下手,我們選擇一個(gè)八位的二進(jìn)制數(shù)作為控制信號,通過串口的八位數(shù)據(jù)與基波進(jìn)行比較則分別輸出 0 兩個(gè)狀態(tài)使之達(dá)到開斷的狀態(tài)。 說完了 PWM 輸出,那么剩下的計(jì)數(shù)部分也要有深入的考慮,到底是選擇幾個(gè)十進(jìn)制模塊進(jìn)行連接這也是個(gè)問題,經(jīng)過簡單的對直流電機(jī)的速度測試,我們發(fā)現(xiàn)直流電 機(jī)的轉(zhuǎn)速最高可達(dá)到 90r/s 那么結(jié)合我們要顯示的是每分鐘的轉(zhuǎn)速,大概就是 5400r/s,由此分析我們將需要四個(gè)模塊的十進(jìn)制計(jì)數(shù)器。因此我們必須設(shè)計(jì)兩個(gè)單元去實(shí)現(xiàn)脈沖的計(jì)數(shù)跟 PWM 波的輸入兩個(gè)單元,那么我們接下里就會(huì)想到我們該選用什么樣的 PWM 波控制就成了首要的問題。 我們本次的方案的其實(shí)著手點(diǎn)就是圖 31 直流電機(jī),霍爾器件電路圖。了解了這些理論便能很好的去理解此次的課題并能從問題的根源去思考問題解決問題,避免了在試驗(yàn)中盲目的去解決問題,為設(shè)計(jì)的順利進(jìn)行打下了基石。兩中常用的配置方式: AS 模式使用串口配置器件進(jìn)行配置、 JTAG 模式使用下載電纜或者微處理器通 過 IEEE 標(biāo)準(zhǔn)引腳進(jìn)行配置。它的仿真包括四個(gè)步驟:建立波形輸入文件、設(shè)置節(jié)點(diǎn)的驗(yàn)證時(shí)序、設(shè)置仿真參數(shù)、運(yùn)行 Simulator。 ( 4)時(shí)序分析 時(shí)序分析工具的功能是分析設(shè)計(jì)中的所有邏輯,并指導(dǎo) Fitter 達(dá)到時(shí)序要求,是完整編譯的一部分。 Synthesis 建立的數(shù)據(jù)庫,將工程的邏輯跟時(shí)序要求與器件的可用資源相匹配。 ( 3)布局布線 Quartus II Fitter 也稱作 PowerFit Fitter,它的功能是進(jìn)行布局布線操作,在Quartus II 中是適配的意思。 Quartus II 軟件的設(shè)計(jì)流程如圖 圖 25 ( 1)設(shè)計(jì)輸入 Quartus II 本身具有的編輯器,如原理圖式設(shè)計(jì)輸入,文本編輯器輸入,和內(nèi)存編輯輸入。 VB 提供的網(wǎng)絡(luò)設(shè)計(jì)工具使用戶可以在VB中開發(fā)多功能的網(wǎng)絡(luò)應(yīng)用軟件 本次我主要涉及到的控件有 label、 textBox、 CommandButton、 Timer、 MSComm control Quartus II 可編程邏輯器件開發(fā)工具 Altera 可編程邏輯器件開發(fā)軟件主要是 MAX+PLUSII 和 QuartusII,其中 MAX+PLUSH II是 Altera 公司 上一代的 PLD開發(fā)軟件,比較適合小規(guī)模的邏輯器件的開發(fā),而 11 QuartusII 則是 Altera 公司新一代的 PLD 開發(fā)軟件,適合大規(guī)模的 FPGA 的開發(fā),并且Quartus 可以完成 MAX+PLUS II 的所有設(shè)計(jì)任務(wù)。 ( 4)開放的數(shù)據(jù)庫功能與網(wǎng)絡(luò)支持 VB具有很強(qiáng)的數(shù)據(jù)庫管理功能,能夠訪問包括 Microsoft SQL server 和其他企業(yè)數(shù)據(jù)庫 在內(nèi)的大部分?jǐn)?shù)據(jù)庫格式和前端應(yīng)用程序。例如對于一個(gè)按鈕來說,可以單擊也可以雙擊,那么它對于單擊或雙擊會(huì)有什么楊的反應(yīng),即如何響應(yīng)單擊或雙擊這樣的操作,這就依賴于分別對“單擊”和“雙擊”事件所編寫的不同程序代碼。例如,有兩個(gè)文本框,一個(gè)用于輸入數(shù)據(jù),一個(gè)用于顯示計(jì)算后的數(shù)據(jù),這是兩個(gè)不同的對象,完成的功能也不相同,在編程時(shí)就需要對其編寫不同的程序代碼,這 種編程的思想和方法就是面向?qū)ο蟮某绦蛟O(shè)計(jì)方法。 ( 2)面向?qū)ο蟮某绦蛟O(shè)計(jì)方法 對象是指具體的實(shí)體,在 VB 編程中對象就是用戶界面上的每個(gè)實(shí)體,如按鈕、菜單、文本框等都是“實(shí)體”。 VB提供的可視化的設(shè)計(jì)平臺(tái),在界面設(shè)計(jì)時(shí),利用提供的“工具箱”直接把各種工具放入用戶界面,“工具箱”中放的是被稱為“控件”的工具。 ( 1)可視化的程序設(shè)計(jì)工具 傳統(tǒng)程序設(shè)計(jì)語言編程時(shí),需要通過編輯計(jì)算來設(shè)計(jì)程序界面,在設(shè)計(jì)過程中看不到程序的實(shí)際顯示效果,必須在于行程序的時(shí)候才能顯示界面的設(shè)計(jì)效果。庫可由用戶生成或由 ASIC 芯片制造商提供,以便于在設(shè)計(jì)中為大家所共享。前 4 種是可分割編譯的源設(shè)計(jì)單元。只要遵循著兩條對應(yīng)關(guān)系,就很容易利用有限狀態(tài)機(jī)來描述數(shù)字電路中的控制單元。有限狀態(tài)機(jī)是一種時(shí)序邏輯電路,常用于數(shù)字電路中的控制單元。輸出信號 由輸出譯碼器根據(jù)當(dāng)前狀態(tài)和輸入條件決定。狀態(tài)機(jī)要經(jīng)過一系列的狀態(tài),下一個(gè)狀態(tài)會(huì)由狀態(tài)譯 碼器根據(jù)當(dāng)前狀態(tài)和輸入條件決定。寄存器狀態(tài)用于存儲(chǔ)狀態(tài)機(jī)的內(nèi)部狀態(tài);組合邏輯又被分為輸出譯碼器跟狀態(tài)譯碼器,狀態(tài)譯碼器能夠確定狀態(tài)機(jī)的下一個(gè)狀態(tài),輸出譯碼器確定狀態(tài)機(jī)的輸出。狀態(tài)機(jī)的下一個(gè)狀態(tài)以 9 及輸出,不僅跟輸入信號有關(guān),而且還與寄存器的當(dāng)前狀態(tài)有關(guān),狀態(tài)機(jī)可以認(rèn)為是組合邏輯跟寄存器邏輯的特殊組合。 狀態(tài)機(jī)的基本結(jié)構(gòu)跟功能 狀態(tài)機(jī)是一種時(shí)序邏輯電路,它的基本結(jié)構(gòu)邏輯框圖如圖 24 所示。這種通信方法被稱為同步通信。 當(dāng)被發(fā)送的字符 是以快位單位進(jìn)行發(fā)送時(shí),則
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1