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

正文內(nèi)容

基于labview的pc與單片機(jī)的串口通信的循環(huán)計(jì)數(shù)設(shè)計(jì)方法畢業(yè)設(shè)計(jì)論文(編輯修改稿)

2024-07-23 10:52 本頁面
 

【文章內(nèi)容簡介】 簡單,速度不太好,但是資料成熟,上手容易。經(jīng)三方比較,STC89C52RC實(shí)惠,資料成熟且其前,并且滿足本設(shè)計(jì)需要,容易學(xué)習(xí),所以選擇該單片機(jī)小系統(tǒng)。方案一: Visual 2013用FMC語言編寫windows窗體控件,里面也有串口控件,需要學(xué)習(xí)C++語言。方案二: 用C語言需要學(xué)習(xí)java語言,java程序?qū)W習(xí)比較困難。方案三: 用Labview編寫上位機(jī),可視化的編程環(huán)境,圖形化的編程語言,方便快捷并且容易簡單。 通過對(duì)比這些,我們選擇用Labview來編寫本次上位機(jī)。由于其編程方便,開發(fā)周期短,語言容易學(xué)習(xí)。 方案一: 利用1602液晶顯示屏,1602可以顯示英文和數(shù)字,并有成熟的文檔資料,程序編寫起來稍微復(fù)雜點(diǎn),價(jià)格也較貴。方案二: 利用諾基亞5110LCD液晶顯示屏模塊顯示。可以顯示英文漢字,相對(duì)比較便宜。方案三: 用數(shù)碼管顯示,數(shù)碼管編寫程序簡單,價(jià)格低廉,資料齊全,電路設(shè)計(jì)比較簡單,只能顯示數(shù)字。 因?yàn)槲覀兇舜卧O(shè)計(jì)只需要顯示循環(huán)變動(dòng)的數(shù)字,所以我們選擇數(shù)碼管顯示電路。第四章 LabVIEW上位機(jī)設(shè)計(jì) 上位機(jī)上可以設(shè)置通信波特率、數(shù)據(jù)位、停止位,同時(shí)設(shè)有打開串口按鈕、停止運(yùn)行按鈕、清空發(fā)送去按鈕、清空接收區(qū)按鈕;還有接收數(shù)據(jù)顯示文本框和發(fā)送數(shù)據(jù)顯示文本框,用戶通過設(shè)置串口通信參數(shù)和打開串口按鈕即可與下位機(jī)進(jìn)行串口通信,并將下位機(jī)發(fā)回的數(shù)據(jù)實(shí)時(shí)顯示到PC機(jī)上,同時(shí)還可以控制循環(huán)的初始值。上位機(jī)通過編寫串口通訊程序,在labview中是VISA,包括VISA參數(shù)配置包括波特率,數(shù)據(jù)位,停止位,校驗(yàn)位等。通過WRITE VISA發(fā)送串口信息,通過READ VISA讀取串口信息,并顯示出來。:接收區(qū)打開串口 發(fā)送數(shù)據(jù)發(fā)送區(qū)清空接收區(qū)清空發(fā)送區(qū)運(yùn)行和調(diào)試程序創(chuàng)建框圖程序創(chuàng)建前面板建立VI:開始打開串口串口初始化清空緩存區(qū)發(fā)送數(shù)據(jù)發(fā)送串口數(shù)據(jù)清空發(fā)送緩存區(qū)發(fā)送數(shù)據(jù)發(fā)送循環(huán)初值 上位機(jī)LabVIEW串口通訊的實(shí)現(xiàn) 本上位機(jī)主要用到串口通信模塊,VISA是本設(shè)計(jì)的重點(diǎn)所在,也是一個(gè)重要樞紐。 程序外層用一個(gè)循環(huán)結(jié)構(gòu)加枚舉變量,同時(shí)在循環(huán)結(jié)構(gòu)上添加以個(gè)移位寄存器,使得程序先初始化,再進(jìn)入到接收和發(fā)送函數(shù)。 VISA子VI如下圖 子VI前面板通過前面板就可以設(shè)置波特率為9600,數(shù)據(jù)位為8位,無奇偶校驗(yàn),1個(gè)停止位。 上位機(jī)主程序框圖主程序有一個(gè)循環(huán)結(jié)構(gòu),和若干個(gè)條件結(jié)構(gòu)和一個(gè)事件觸發(fā)結(jié)構(gòu)構(gòu)成。 程序設(shè)計(jì)的步驟如下:1.建立新VI程序 打開Labview應(yīng)用程序,點(diǎn)擊新建按鈕,然后選擇VI從而創(chuàng)建一個(gè)新的VI程序。2.程序前面板設(shè)計(jì) 在新建的前面板設(shè)計(jì)區(qū)右擊鼠標(biāo)右鍵,有一個(gè)工具選擇塊,我們可一點(diǎn)擊左上角將其鎖定到前面板。(1)添加一個(gè)字符串輸入控件:點(diǎn)擊控件express字符串輸入控件,雙擊將其添加到前面板上,并將標(biāo)簽改為“發(fā)送循環(huán)數(shù)據(jù)(十六進(jìn)制)”,將鼠標(biāo)移動(dòng)到該控件上并點(diǎn)擊鼠標(biāo)右鍵,選擇“十六進(jìn)制顯示”。(2)添加一個(gè)字符串顯示控件:點(diǎn)擊控件express字符串輸入控件,雙擊將其添加到前面板上,并將標(biāo)簽改為“接收緩沖區(qū)”,將鼠標(biāo)移動(dòng)到該控件上并點(diǎn)擊鼠標(biāo)右鍵,選擇“正常顯示”。(3)添加一個(gè)串口資源檢測控件:控件新式I/OVISA資源名稱; (4)添加一個(gè)確定按鈕控件:控件express按鈕與開關(guān)ok按鈕,將標(biāo)題改為“打開串口”。(5)添加一個(gè)停止按鈕控件:控件express按鈕與開關(guān)ok按鈕,將標(biāo)題改為“停止運(yùn)行”。(6)添加一個(gè)清空接收區(qū)按鈕控件:控件express按鈕與開關(guān)ok按鈕,將標(biāo)題改為“清空接收區(qū)”。(7)添加一個(gè)停止按鈕控件:控件express按鈕與開關(guān)ok按鈕,將標(biāo)題改為“清空發(fā)送區(qū)”。(8)添加一個(gè)停止按鈕控件:控件express按鈕與開關(guān)ok按鈕,將標(biāo)題改為“發(fā)送字符”。(9)點(diǎn)擊接收區(qū),右擊鼠標(biāo)選擇自動(dòng)換行。3.框圖程序設(shè)計(jì)添加函數(shù)并連線 在前面板點(diǎn)擊窗口,選擇顯示到程序框圖,或者用快捷鍵ctrl+E。(1)添加一個(gè)枚舉常量:編程數(shù)值枚舉常量。(2)添加4個(gè)數(shù)值常量:編程數(shù)值數(shù)值常量,值分別為9600(波特率)、8(數(shù)據(jù)位)、0(校驗(yàn)位,無)、1(停止位)。(3)添加一個(gè)While循環(huán)結(jié)構(gòu):編程結(jié)構(gòu)While循環(huán)。(4)在while循環(huán)結(jié)構(gòu)上右擊創(chuàng)建移位寄存器。(5)關(guān)閉串口函數(shù):編程儀器I/O串口(Serial)VISA關(guān)閉。(6)讀取串口函數(shù):編程儀器I/O串口(Serial)VISA讀取。(7)寫入串口函數(shù):編程儀器I/O串口(Serial)VISA寫入。(8)在前面板添加一個(gè)字符串組合框:新式字符串組合切換到框圖面板修改標(biāo)簽為端口號(hào)。(9)在端口號(hào)后面添加一個(gè)條件結(jié)構(gòu),點(diǎn)擊條件結(jié)構(gòu)在下拉菜單,選擇在后面添加分支,總共有3個(gè)分支0、4,。(10)在條件結(jié)構(gòu)分支0中加入VISA資源名稱修改名字為ASRL1::INSTR。同樣在1和4中添加ASRL2::INSTR和ASRL3::INSTR一直到ASRL5::INSTR(11)添加一個(gè)波特率選擇組合框,在前面板添加一個(gè)字符串組合框:新式字符串組合切換到框圖面板修改標(biāo)簽為波特率。:(12)在波特率號(hào)后面添加一個(gè)條件結(jié)構(gòu),點(diǎn)擊條件結(jié)構(gòu)在下拉菜單,選擇在后面添加分支,總共有3個(gè)分支0、2,。(13)分別在0 1 2 分支中計(jì)入數(shù)字常量,2400 9600 和115200。(14)右鍵選擇循環(huán)結(jié)構(gòu)的條件端子,設(shè)置為“真時(shí)停止”,圖標(biāo)變?yōu)?。并點(diǎn)擊創(chuàng)建常量F就是一直在里面循環(huán),我們的退出是用關(guān)閉程序的STOP。(15)編輯對(duì)話框錯(cuò)誤輸出:編輯對(duì)話框與用戶程序建議錯(cuò)誤處理器并將其和VISA資源配置設(shè)置的錯(cuò)誤輸出連接。(15)添加一個(gè)條件結(jié)構(gòu),真和假兩個(gè)分支,?連接到錯(cuò)誤代碼端子。(16)在真分支中添加但按鈕對(duì)話框,輸入為(串口不存在或一打開)。(17)將VISA串口字節(jié)數(shù)函數(shù)的輸出端口VISA資源名稱與VISA讀取函數(shù)的輸入端口VISA資源名稱相連。(18)添加一個(gè)條件結(jié)構(gòu),并在里面添加兩個(gè)條件結(jié)構(gòu),里面的分別為發(fā)送數(shù)據(jù)的條件結(jié)構(gòu)和接收數(shù)據(jù)的條件結(jié)構(gòu)。(19)在最外層的條件結(jié)構(gòu)也添加兩個(gè)條件結(jié)構(gòu),一個(gè)為清空發(fā)送區(qū)另一個(gè)為清空接收區(qū)。(20)將打開串口按鈕連接到第二層條件結(jié)構(gòu)的?好上。在第二層內(nèi)添加一個(gè)定時(shí)器控件,并創(chuàng)建一個(gè)20的常量。(21)按要求連接各個(gè)控件。 。 PC與單片機(jī)串口通信程序框圖(22)在while循環(huán)外部再建一個(gè)事件結(jié)構(gòu):編程結(jié)構(gòu)事件結(jié)構(gòu)。(23)將第一個(gè)分支改變?yōu)椤巴V埂敝蹈淖儭#?4)在外面添加一個(gè)停止程序控件:編程應(yīng)用程序控件停止,(25)在內(nèi)部將停止按鈕拖拽進(jìn)來,并將各個(gè)按鈕的狀態(tài)恢復(fù)到默認(rèn)值,并將串口關(guān)閉。 停止程序事件框圖4.調(diào)試運(yùn)行程序當(dāng)編輯好程序框圖后及時(shí)點(diǎn)擊保存按鈕。在使用串口線與單片機(jī)相連,并確定通信狀態(tài)正常后,單擊快捷工具欄中的“連續(xù)運(yùn)行”按鈕,運(yùn)行程序。 程序運(yùn)行界面操作步驟: 點(diǎn)擊坐上角連續(xù)運(yùn)行按鈕。 根據(jù)電腦設(shè)備管理的口選擇口。設(shè)置波特率為9600。點(diǎn)擊打開按鈕,指示燈亮表示正常。停止運(yùn)行為退出vi程序。在發(fā)送循環(huán)數(shù)據(jù)框內(nèi)輸入16進(jìn)制數(shù),單片機(jī)收到后會(huì)以此數(shù)值為初值進(jìn)行循環(huán)計(jì)數(shù),并將結(jié)果義字符串的形式返回給上位機(jī)。第五章 單片機(jī)下位機(jī)設(shè)計(jì) 下位機(jī)流程圖程序流程圖:開始定時(shí)器0、串口、數(shù)碼管初始化定時(shí)器中斷 Y循環(huán)計(jì)數(shù)值加1 N 退出中斷 串口中斷 Y Num_Count = SBUF。 N 退出中斷 數(shù)碼管實(shí)時(shí)顯示循環(huán)計(jì)數(shù)值 設(shè)計(jì)目的和實(shí)現(xiàn)方案 設(shè)計(jì)目的本課題主要設(shè)計(jì)單片機(jī)串口通信,以LABVIEW作為上位機(jī),以串行通信為媒介實(shí)現(xiàn)嵌入式和電腦上之間進(jìn)行通信。串型通信方式是是電子信息領(lǐng)用和工業(yè)控制里面常用的交流信息的方式,因?yàn)槠涮攸c(diǎn)的限制適用于對(duì)傳送數(shù)據(jù)速度不高的場合,但是串口通信成本低廉通信方式簡單。用LabView編輯出的人性化的上位機(jī)界面,是縮短了了研發(fā)的時(shí)間,并使得不同設(shè)備的相互通信變得非常簡單。 實(shí)現(xiàn)方案本設(shè)計(jì)基于LabVIEW虛擬儀器編寫串口上位機(jī)控制系統(tǒng),同時(shí)編寫以單片機(jī)為核心的數(shù)碼管動(dòng)態(tài)顯示系統(tǒng),上位機(jī)可以控制單片機(jī)循環(huán)顯示的初始數(shù)值,下位機(jī)將顯示的數(shù)值實(shí)時(shí)發(fā)回上位機(jī)進(jìn)行顯示。 下位機(jī)硬件設(shè)計(jì) 系統(tǒng)總硬件電路 在該論文設(shè)計(jì)的串口通信控制系統(tǒng)中,硬件電路有主控制電路、數(shù)碼管顯示電路、led顯示電路、電源指示電路、復(fù)位電路、始終電路、數(shù)碼管驅(qū)動(dòng)電路、CH340 USB轉(zhuǎn)串口電路。 主控制系統(tǒng) 主控電路負(fù)責(zé)循環(huán)數(shù)的計(jì)時(shí)顯示,和跟上位機(jī)的通信,因?yàn)镻0口沒有驅(qū)動(dòng)電路所以需要加上拉電阻。 單片機(jī)在發(fā)生異常時(shí)可以通過復(fù)位按鈕來恢復(fù)系統(tǒng)正常工作,51單片機(jī)的復(fù)位信號(hào)為高電平,因此可以通過外部電路實(shí)現(xiàn)自動(dòng)復(fù)位、手動(dòng)復(fù)位或看門狗復(fù)位。因?yàn)槲覀冇玫氖荢TC89C52RC沒有內(nèi)部看門狗復(fù)位所以我們?cè)O(shè)計(jì)手動(dòng)復(fù)位電路,剛開始電容充電,在陶瓷電容的陽極充滿電,當(dāng)復(fù)位按鈕按下時(shí)電容會(huì)放電并保持一段時(shí)加大到單片機(jī)復(fù)位的效果。復(fù)位電路路比較簡單,是電阻和電容組合二實(shí)現(xiàn)的。串口電路是本設(shè)計(jì)的的關(guān)鍵技術(shù),主要用到了串口轉(zhuǎn)USB通信,實(shí)現(xiàn)單片機(jī)與電腦之間的通信。本電路的串口通信使用USB轉(zhuǎn)串口芯片CH340是一個(gè)USB總線的轉(zhuǎn)接芯片, 串口電路 單片機(jī)要想正常工作就必須有一個(gè)時(shí)鐘電路,就像生命需要心臟跳動(dòng)一樣,80C51內(nèi)部有高增益反響放大器,輸入輸出分別為XTAL1,輸出引腳為XTAL2,從而構(gòu)成一個(gè)穩(wěn)定的自激振蕩器。外部時(shí)鐘電路為單片機(jī)的工作提供一個(gè)時(shí)間基準(zhǔn),51單片機(jī)右兩種方式提供這種震蕩頻率,因?yàn)槲覀冇玫?9C52RC沒有內(nèi)部震蕩源,所以我們選
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1