国产三级在线看完整版-内射白嫩大屁股在线播放91-欧美精品国产精品综合-国产精品视频网站一区-一二三四在线观看视频韩国-国产不卡国产不卡国产精品不卡-日本岛国一区二区三区四区-成年人免费在线看片网站-熟女少妇一区二区三区四区

儀器網(wǎng)(yiqi.com)歡迎您!

| 注冊2 登錄
網(wǎng)站首頁-資訊-話題-產(chǎn)品-評測-品牌庫-供應(yīng)商-展會-招標(biāo)-采購-知識-技術(shù)-社區(qū)-資料-方案-產(chǎn)品庫-視頻

問答社區(qū)

設(shè)計一個用8250實現(xiàn)串口通信

米洛去吧 2011-06-17 03:16:24 357  瀏覽
  •  

參與評論

全部評論(2條)

  • yangmin5257 2011-06-18 00:00:00
    建議 去 我的領(lǐng)地 5d6d 的 proteus 論壇看看 那里有很多 單片機(jī)仿真實例,包括proteus 仿真圖 和 源碼

    贊(17)

    回復(fù)(0)

    評論

  • lanlingeoawake 2011-06-20 00:00:00
    數(shù)據(jù)接收存儲技術(shù)革新是信號采集處理領(lǐng)域內(nèi)的一個重要課題。利用這種技術(shù),可以把信號的實時采集和精確處理在時間上分為兩個階段,有利于獲得令人更滿意的處理結(jié)果。在無線數(shù)傳接收設(shè)備中應(yīng)用數(shù)據(jù)接收存儲方法時,除了要滿足數(shù)據(jù)傳輸速率和差錯控制方面的要求外,還需要考慮如何使設(shè)備易于攜帶、接口簡單、使用方便。 傳統(tǒng)外設(shè)接口技術(shù)不但數(shù)據(jù)傳輸速率較低,獨(dú)占中斷、I/O地址、DMA通道等計算機(jī)系統(tǒng)關(guān)鍵資源,容易造成資源沖突問題,而且使用時繁雜的安裝配置手續(xù)也給終端用戶帶來了諸多不便。近年來,USB接口技術(shù)迅速發(fā)展,新型計算機(jī)紛紛對其提供支持。USB2.0是USB技術(shù)發(fā)展的Z新成果,利用USB2.0接口技術(shù)開發(fā)計算機(jī)外設(shè),不但可以借用其差錯控制機(jī)制[1][6]減輕開發(fā)人員的負(fù)擔(dān)、獲得高速數(shù)據(jù)傳輸能力(480Mb/s),而且可以實現(xiàn)便捷的機(jī)箱外即插即用特性,方便終端用戶的使用。 1 無線數(shù)傳接設(shè)備總體構(gòu)成 無線數(shù)傳接收設(shè)備是某靶場測量系統(tǒng)的一個重要組成部分。如圖1所示,該設(shè)備由遙測接收機(jī)利用天線接收經(jīng)過調(diào)制的無線電波信號,解調(diào)后形成傳輸速率為4Mb/s的RS-422電平差分串行數(shù)據(jù)流。以幀同步字打頭的有效數(shù)據(jù)幀周期性地出現(xiàn)在這些串行數(shù)據(jù)中。數(shù)據(jù)轉(zhuǎn)存系統(tǒng)從中提取出有效的數(shù)據(jù)幀,并在幀同步字后插入利用GPS接收機(jī)生成的本地時間信息,用于記錄該幀數(shù)據(jù)被接收到的時間,然后送給主機(jī)硬件保存。 在無線數(shù)傳接收設(shè)備中,數(shù)據(jù)轉(zhuǎn)存系統(tǒng)是實現(xiàn)數(shù)據(jù)接收存儲的關(guān)鍵子系統(tǒng)。下面將詳細(xì)介紹該系統(tǒng)的硬件實現(xiàn)及工作過程。 2 數(shù)據(jù)轉(zhuǎn)存系統(tǒng)基本構(gòu)成及硬件實現(xiàn) 數(shù)據(jù)轉(zhuǎn)存系統(tǒng)主要由FPGA模塊、DSP模塊、USB2.0接口芯片構(gòu)成,各個模塊之間的相互關(guān)系如圖2所示示。圖中,4Mb/s的串行數(shù)據(jù)輸入信號SDI已由RS-422差分電平轉(zhuǎn)換為CMOS電平。為突出ZD,不太重要的信號連線未在圖中繪出。下面分別介紹這幾個模塊的主要功能。 2.1 FPGA模塊實現(xiàn)及春功能 FPGA模塊在Altera公司ACEX系列的EP1K30TI144-2芯片中實現(xiàn)。其中主要的功能子模塊有:位同步邏輯、幀同步邏輯、授時時鐘和譯碼邏輯。位同步邏輯主要由數(shù)字鎖相環(huán)構(gòu)成,用于從串行數(shù)據(jù)輸入信號SDI中恢復(fù)出位時鐘信號。幀同步邏輯從位同步邏輯的輸出信號提取幀同步脈沖。兩者為DSP利用其同步串行口接收串行數(shù)據(jù)作好準(zhǔn)備。這樣,利用一對差分信號線就可以接收同步串行數(shù)據(jù),簡化了印制電路板的外部接口。授時時鐘在DSP和GSP接收機(jī)的協(xié)助下生成精度為0.1ms的授時信息。譯碼邏輯用于實現(xiàn)系統(tǒng)互聯(lián)。 2.2 DSP模塊實現(xiàn)及其功能 DSP模塊是數(shù)據(jù)轉(zhuǎn)存系統(tǒng)的主控模塊,在T1公司16位定點(diǎn)DSP芯片TMS320F206[4]中實現(xiàn)。在DSP的外部數(shù)據(jù)空間還配置了32KX16的高速SRAM,可以緩存80余幀數(shù)據(jù),用于提高系統(tǒng)的差錯控制能力。DSP利用同步串行口接收FPGA送來的同步串行數(shù)據(jù),利用異步串口接收GPS接收機(jī)送來時間信息(用于初始化FPGA授時時鐘),利用外部總線接口訪問FPGA授時時鐘、外部SRAM、ISP1581的片內(nèi)寄存器??梢钥闯鯠SP模塊主要用于完成數(shù)據(jù)幀的接收、重組以及轉(zhuǎn)存調(diào)度等任務(wù)。 ISP1581芯片是PHILIPS公司推出的高速USB2.0設(shè)備控制器,實現(xiàn)了USB2.0/1.1物理層、協(xié)議層,完全符合USB2.0規(guī)范,即支持高速(480Mb/s)操作,又支持全速(12Mb/s)操作。ISP1581沒有內(nèi)嵌微處理器,但對微處理器操作了靈活的接口。在上電時,通過配置BUS——CONF、DAO、MODE1、MODE0、DA1引腳電平可以適應(yīng)絕大多數(shù)的微處理器接口類型。例如,通過BUS_CONF/DA0引腳,總線配置可以選擇普通處理器模塊(Generic Phocessor mode)中分割總線模式(Split Bus Mode);在普通處理器模式下,通過MODE0/DA1引腳可以選擇讀寫選通為8051風(fēng)格或者M(jìn)otorola風(fēng)格。 在數(shù)據(jù)轉(zhuǎn)存系統(tǒng)中,ISP1581用于處理主機(jī)的高速數(shù)據(jù)傳輸。它工作在普通處理器接口模式下,采用8051風(fēng)格的讀寫選通信號,由DSP芯片TMS320F206控制。兩者在選定工作方式下的信號連線如圖3所示,圖中未畫出的信號引腳可以懸空,供電引腳的連接方式在參考資料[2]第46頁有簡明描述。在FPGA譯碼邏輯的作用下,ISP1581的片內(nèi)寄存器被映射在DSP的片外數(shù)據(jù)空間中。DSP通過8位地址線選擇要訪問的寄存器,在讀寫選通信號的控制下,利用16位數(shù)據(jù)線與選定的寄存器交換數(shù)據(jù)。在訪問ISP1581單字節(jié)寄存器時,數(shù)據(jù)總線高字節(jié)內(nèi)容無關(guān)緊要。ISP1581通過中斷引腳INT向DSP報告發(fā)生的總線事件,利用D+、D-引腳完成與主機(jī)的數(shù)據(jù)交換。 3 數(shù)據(jù)轉(zhuǎn)存系統(tǒng)的工作過程 系統(tǒng)加電后,當(dāng)FPGA配置過程結(jié)束時,如果有串行數(shù)據(jù)輸入,位同步邏輯和幀同步邏輯便啟動同步過程。同時,DSP片內(nèi)FLASH中復(fù)位中斷服務(wù)程序c_int0()[4]被立即執(zhí)行,在建立好C語言的工作環(huán)境下,它會調(diào)用主函數(shù)main()。在main()中,需要安排好一系列有先后順序的初始化工作。其中,ISP1581的初始化過程比較復(fù)雜,需要考慮設(shè)備采用的供電方式(這里為自供電[6]方式)、插接主機(jī)和系統(tǒng)上電的先后次序,并需要與USB總線枚舉[1][6]過程相結(jié)合。 在FPGA中的位同步邏輯和幀同步邏輯均進(jìn)入同步狀態(tài),且DSP主控模塊配合主機(jī)完成初始化任務(wù)后,即可啟動數(shù)據(jù)的傳輸過程。下面介紹一下ISP1581的初始化過程及DSP控制的數(shù)據(jù)幀的接收機(jī)轉(zhuǎn)存流程。 3.1 ISP1581的初始化 在初始化過程中,首先需要設(shè)置影響ISP1581自身工作方式的一些寄存器,然后與主機(jī)端USB系統(tǒng)配合進(jìn)行,應(yīng)答來自主機(jī)端的設(shè)備請求。當(dāng)數(shù)據(jù)轉(zhuǎn)存系統(tǒng)板作為USB 2.0設(shè)備通過連接器連到主機(jī)USB根集線器上的一個端口時,主機(jī)便可檢測到這一連接,接著給該端口加電,檢測設(shè)備并激活該端口,向USB設(shè)備發(fā)送復(fù)位信號。設(shè)備收到這一復(fù)位信號后,即進(jìn)入缺省狀態(tài),此后就能夠通過缺省通信通道響應(yīng)主機(jī)端送來的設(shè)備請求。主機(jī)通過描述符請求(GET_DESCRIPTOR)獲得設(shè)備端的詳細(xì)信息,通過設(shè)置地址請求(SET_ADDRESS)設(shè)置設(shè)備地址,通過設(shè)置配置請求(SET_CONFIGURATION)選定合適的設(shè)備配置。在設(shè)備成功響應(yīng)了這些設(shè)備請求之后,就可以與主機(jī)通信了。 在響應(yīng)主機(jī)請求的過程中,DSP需要配置ISP1581的端點(diǎn)以實現(xiàn)不同類型的傳輸通道。根據(jù)數(shù)據(jù)傳輸速率的要求,除了缺省的控制通道外,系統(tǒng)中實現(xiàn)了一個批傳輸(bulk)[1]類型的輸入通道。這樣,ISP1581就可以像FIFO一樣方便地從數(shù)據(jù)轉(zhuǎn)存系統(tǒng)向主機(jī)傳輸數(shù)據(jù),而且具有差錯控制能力,簡化了設(shè)備端軟件設(shè)計的復(fù)雜性。 3.2 數(shù)據(jù)幀的接收轉(zhuǎn)存過程 系統(tǒng)正常工作時,需要與主機(jī)端程序相互配合。主要端需要開發(fā)者實現(xiàn)的程序包括設(shè)備驅(qū)動程序和應(yīng)用程序。在Windows 2000操作系統(tǒng)下,USB設(shè)備驅(qū)動程序為WDM模型的驅(qū)動程序,開發(fā)環(huán)境DriverStudio為WDM型驅(qū)動程序提供了框架結(jié)構(gòu),使得驅(qū)動開發(fā)變得非常容易(參見參考文獻(xiàn)[5]第八、九、十章)。驅(qū)動程序接收應(yīng)用程序的請求,利用USB總線驅(qū)動程序(US-BD)和主機(jī)控制器驅(qū)動程序(HCD)通過主機(jī)控制器安排USB總線事務(wù),設(shè)備端則根據(jù)這些事務(wù)調(diào)度相應(yīng)的數(shù)據(jù)幀的傳輸。關(guān)于主機(jī)端口如何安排總線事務(wù)可以查閱參考文獻(xiàn)[1]。以下著重介紹設(shè)備端數(shù)據(jù)的調(diào)度過程。 數(shù)據(jù)幀的接收轉(zhuǎn)存過程主要由DSP負(fù)責(zé),DSP在外部SRAM中建立了一個數(shù)據(jù)幀的隊列,如圖4所示。系統(tǒng)主要工作在中斷驅(qū)動模式下,與同步串行口相關(guān)的中斷服務(wù)程序負(fù)責(zé)建立隊列的尾部,對應(yīng)于ISP1581中斷引腳INT的中斷服務(wù)程序負(fù)責(zé)建立隊列的頭部。 當(dāng)以幀同步字打頭的一幀數(shù)據(jù)以串行位流的形式到來時,F(xiàn)PGA產(chǎn)生的幀同步脈沖可以直接啟動DSP同步串行口接收數(shù)據(jù),該同步脈沖同時以中斷方式通知DSP為一幀數(shù)據(jù)的接收做好準(zhǔn)備。DSP接到通知后,首先檢查外部SRAM中是否有足夠的空間容納一幀數(shù)據(jù)。如果沒有空間,則丟棄當(dāng)前數(shù)據(jù)幀(根據(jù)設(shè)計,這種情況是很少見的);如果有空間,則為當(dāng)前數(shù)據(jù)幀保留足夠的空間。接著在幀起始位置填寫幀步字,讀取授時時鐘的當(dāng)前值并填寫在幀同步字后。這樣,一個新的數(shù)據(jù)幀(圖4中數(shù)據(jù)幀F(xiàn)_N)就建立了,但是并沒有加入到隊列中,而是要等待來自同步串行口的后繼數(shù)據(jù)嵌入該幀中后再加入到隊列中。 同步串行口的接收緩沖區(qū)在接收到若干字(由初始化時的設(shè)置決定)后,會向DSP提出中斷請求。在中斷服務(wù)程序中,DSP讀取接收緩沖區(qū)中的內(nèi)容,并將其填入上述新開辟的幀F(xiàn)_N中。在一幀數(shù)據(jù)接收完畢后,就將該幀添加到隊列的尾部,表示該幀數(shù)據(jù)已經(jīng)準(zhǔn)備好(圖4中數(shù)據(jù)幀F(xiàn)_R),可以通過ISP1581送給主機(jī)硬件保存。 DSP在查詢到隊列中有已經(jīng)準(zhǔn)備好的數(shù)據(jù)幀存在時,就設(shè)置ISP1581的端點(diǎn)索引寄存器(Endpoint Index Register)使其指向初始化時配置的批傳輸輸入端點(diǎn),然后將隊列首幀數(shù)據(jù)通過ISP1581的數(shù)據(jù)端口寄存器(Data Port Register)填寫在端點(diǎn)緩沖區(qū)中。在端點(diǎn)緩沖區(qū)被填滿后,它就自動生效。在不能填滿端點(diǎn)緩沖區(qū)的情況下,可以通過設(shè)置控制功能寄存器(Control Function Register)的VENDP位[2]強(qiáng)制該端點(diǎn)緩沖區(qū)生效。端點(diǎn)緩沖區(qū)生效后,在USB總線上下一IN令牌到來時,該端點(diǎn)緩沖區(qū)中的數(shù)據(jù)就通過USB總線傳輸?shù)街鳈C(jī)中。主機(jī)成功接收到數(shù)據(jù)后,會給ISP1581以ACK應(yīng)答。能夠通過INT引腳報告給DSP,DSP就可以繼續(xù)往端點(diǎn)中填寫該幀其余數(shù)據(jù)。 在隊列首幀數(shù)據(jù)被成功轉(zhuǎn)移到主機(jī)后,DSP就丟棄首幀數(shù)據(jù)。如果隊列在還有數(shù)據(jù)幀,則將次首幀作為首幀,繼續(xù)前述傳輸過程;如果沒有要傳輸?shù)臄?shù)據(jù)幀,則為隊列首幀指針Head_Ptr賦空值(NULL),等待新的數(shù)據(jù)幀的到來。 USB2.0是計算機(jī)外設(shè)接口技術(shù)發(fā)展的Z新成功,具有廣闊的應(yīng)用前景。本文介紹了PHILIPS公司USB2.0接口芯片ISP1581在無線數(shù)據(jù)接收設(shè)備中的應(yīng)用。高性能、便攜化的無線數(shù)據(jù)傳接收設(shè)備。其在靶場實彈試驗中受到了用戶的好評。 PC機(jī)的RS-232C串行口是使用Z多的接口之一。因此,4串口、8串口等以增加串口數(shù)量為目的的ISA總線卡產(chǎn)品大量問世。一般串口應(yīng)用只是使用了RXD和TXD兩條傳輸線和地線所構(gòu)成的串口的Z基本的應(yīng)用條件,而本文介紹一個利用PC機(jī)的RS-232串口加上若干電路來實現(xiàn)多串口需求的接口電路。 1.PC機(jī)串口的RTS和DTR及擴(kuò)展電路 RTS和DTR是PC機(jī)中8250芯片的MODEM控制寄存器的兩個輸出引角D1和D0位,口地址為COM1的是3FCH,口地址為COM2的是2FCH。我們可以利用對MODEM控制寄存器3FCH或2FCH的寫操作對其進(jìn)行控制。從而利用該操作和擴(kuò)展電路實現(xiàn)對TXD和RXD進(jìn)行多線擴(kuò)展,圖1是其擴(kuò)展電路。 在圖1所示的PC機(jī)串口擴(kuò)展電路中,74LS161是二進(jìn)制計數(shù)器,1腳是清0端,2腳是計數(shù)端,計數(shù)脈沖為負(fù)脈沖信號,4051是八選一雙向數(shù)字/模擬電子開關(guān)電路,其中一片用于正向輸出,一片用于反向輸出。該擴(kuò)展電路工作原理是通過控制PC機(jī)串口的DTR輸出的高低電平來形成74LS161的P2腳計數(shù)端的負(fù)脈沖信號,使161的輸出端P14(QA)、P13(QB)、P12(QC)、P11(QD)腳依次在0000到1111十六個狀態(tài)中變化,本電路僅使用了QA、QB、QC三個輸出來形成對4051的ABC控制,Z終使得4051(1)的輸入端TXD依次通過與TX1~TX8導(dǎo)通而得到輸出信號,4051(2)的輸出端RXD與RX1~RX8依次導(dǎo)通形成輸入信號。由于RXD和TXD的導(dǎo)通是一一對應(yīng)的,因此串口通信就可以依次通過與多達(dá)8個帶有三線基本串口的外部設(shè)備進(jìn)行通信傳輸以實現(xiàn)數(shù)據(jù)傳送。PC機(jī)端的電平轉(zhuǎn)換電路是將RS232電平轉(zhuǎn)換為TTL電平,外設(shè)端的電平轉(zhuǎn)換電路是將TTL電平轉(zhuǎn)換為RS232電平。由于這種轉(zhuǎn)換有許多電路可以實現(xiàn),因而,這里不再介紹。 2.電路使用程序 對PC機(jī)串口COM1的編程如下: …… … ;對COM1口的波特率等設(shè)置; MOV DX,3FCH MOV AL,XXXXXX01B OUT DX,AL;D1生成RTS負(fù)脈沖,對74LS161輸出端清0 MOV AL,XXXXXX11B; OUT DX,AL ;4051的RX1和TX1導(dǎo)通 CALL COM ;調(diào)用通信子程序,與diyi個外部設(shè)備通信; MOV CX,7 ;設(shè)置循環(huán)計數(shù)器; NEXT:MOV DX ,3FCH MOV AL,XXXXXX10B OUT DX ,AL ;D0位生成DTR的負(fù)脈沖,形成161的P2腳計數(shù)脈沖 MOV AL,XXXXXX11B OUT DX,AL ;RX2和TX2導(dǎo)通 CALL COM ;調(diào)用通信子程序,與第二個外部設(shè)備通信 LOOP NEXT ;循環(huán)與另外6個外部設(shè)備通信 … … ;通信子程序略 3.使用說明 由于該擴(kuò)展的多路接口在通信時共用一個子程序,因此在與某一路導(dǎo)通時,系統(tǒng)只能與這一路的外部設(shè)備進(jìn)行通信聯(lián)絡(luò)。 如果工作現(xiàn)場需要立即和某一路通信,則需要對3FCH的D1位執(zhí)行兩個寫操作并在RTS腳形成負(fù)脈沖,以對7416I清0后,再連接執(zhí)行若干次對DTR的兩次寫操作。例如想對第4路外設(shè)通信,則需要執(zhí)行完成對74LS161清0后,再連續(xù)三次對3FCH的D0位進(jìn)行兩個寫操作以形成DTR腳的負(fù)脈沖,然后即可調(diào)用通信子程序。 如需使用PC機(jī)的COM2串口,只需將程序中的3F8H~3FDH全部換成2F8H~2FDH即可。 如果使用十六選一雙向數(shù)字/模擬電子開關(guān)電路,可將74LS161的QA、QB、QC、QD四個輸出端接至電子開關(guān)的四個控制端A、B、C、D,這樣就可以達(dá)到一個PC機(jī)的RS232口與16個帶有串口的外設(shè)的數(shù)據(jù)通信。

    贊(5)

    回復(fù)(0)

    評論

熱門問答

設(shè)計一個用8250實現(xiàn)串口通信
 
2011-06-17 03:16:24 357 2
實現(xiàn)串口通信分析用什么軟件
 
2015-12-20 17:06:57 406 1
電子負(fù)載與單片機(jī)怎么實現(xiàn)串口通信
 
2014-07-15 00:25:30 537 2
一臺計算機(jī)上兩個串口如何實現(xiàn)通信?
 
2018-03-13 13:48:56 469 1
一臺計算機(jī)上兩個串口如何實現(xiàn)通信
 
2013-04-23 05:14:16 590 3
基于LabVIEW的加速度傳感器串口通信設(shè)計怎么做
 
2018-11-18 02:59:19 394 0
設(shè)計一個數(shù)字頻率計,用quartus 2實現(xiàn)
不管用什么,只要能實現(xiàn)就好,具體指標(biāo)如下 頻率測量范圍 1hz-100000hz 測量分辨率 1hz 測量通道靈敏度 50mvpp 通道輸入阻抗 不小于120K歐 測量誤差 正負(fù)1 測量顯示 6位數(shù)碼管 如果不能給個完整的方案,請?zhí)嵋恍?yīng)該注意的地方。。比如50mvpp在哪里體現(xiàn)... 不管用什么,只要能實現(xiàn)就好,具體指標(biāo)如下 頻率測量范圍 1hz-100000hz 測量分辨率 1hz 測量通道靈敏度 50mvpp 通道輸入阻抗 不小于120K歐 測量誤差 正負(fù)1 測量顯示 6位數(shù)碼管 如果不能給個完整的方案,請?zhí)嵋恍?yīng)該注意的地方。。比如50mvpp在哪里體現(xiàn)出來,輸入阻抗在哪里體現(xiàn),還有基本的我知道過程應(yīng)該是測控信號發(fā)生器,計數(shù)器,鎖存器,譯碼器,再到led顯示模塊,具體有什么注意的地方波形應(yīng)該怎么樣請講一下。。 100分求解 展開
2011-11-17 04:54:48 465 2
觸摸屏如何同時跟兩個控制器實現(xiàn)串口通信
 
2012-12-15 19:52:18 524 1
可否幫忙寫一個基于8250的RS232異步通信系統(tǒng)程序
 
2018-12-06 16:44:19 305 0
modbus rtu串口通信
公司買了一個溫度巡檢儀,功能有限,我想通過自己做的軟件來增強(qiáng)巡檢儀的功能,但對串口通信編程知之甚少。現(xiàn)通過監(jiān)控原程序得到以下數(shù)據(jù):write requests: 01 03 00 01 00 01 D5 CA 01 01 00 50 00 20 3D C3 01 03 00 60 00 10 44 18 read requests: 01 03... 公司買了一個溫度巡檢儀,功能有限,我想通過自己做的軟件來增強(qiáng)巡檢儀的功能,但對串口通信編程知之甚少?,F(xiàn)通過監(jiān)控原程序得到以下數(shù)據(jù):write requests: 01 03 00 01 00 01 D5 CA 01 01 00 50 00 20 3D C3 01 03 00 60 00 10 44 18 read requests: 01 03 02 00 02 39 85 01 01 04 00 00 00 00 FB D1 01 03 20 4E 20 4E 20 4E 20 4E 20 4E 20 4E 20 4E 20 4E 20 4E 20 4E 20 4E 20 4E 20 4E 20 4E 20 4E 20 4E 20 AE 38 從中能不能翻譯出什么東西?? 后來我又根據(jù)已有資料及網(wǎng)上相關(guān)程序編寫了以下通訊程序: Private Sub Command1_Click() '發(fā)請求 Dim btSend(23) As Byte btSend(0) = &H1 '目標(biāo)站號 btSend(1) = &H3 '功能碼 btSend(2) = &H0 'I0.0地址(0000)高字節(jié) btSend(3) = &H1 'i0.0地址(0000)低字節(jié) btSend(4) = &H0 '讀取個數(shù)高字節(jié) btSend(5) = &H1 '讀取個數(shù)低字節(jié) btSend(6) = &HD5 btSend(7) = &HCA btSend(8) = &H1 btSend(9) = &H1 btSend(10) = &H0 btSend(11) = &H50 btSend(12) = &H0 btSend(13) = &H20 btSend(14) = &H3D btSend(15) = &HC3 btSend(16) = &H1 btSend(17) = &H3 btSend(18) = &H0 btSend(19) = &H60 btSend(20) = &H0 btSend(21) = &H10 btSend(22) = &H44 btSend(23) = &H18 ComK3.Output = CVar(btSend) Dim btReceive As Variant With ComK3 Do DoEvents Loop Until .InBufferCount = 5 .InputLen = 30 btReceive = .Input Text1.Text = Hex$(btReceive(1)) Text2.Text = Hex$(btReceive(2)) Text3.Text = Hex$(btReceive(3)) Text4.Text = Hex$(btReceive(4)) ' Text5.Text = Hex$(btReceive(5)) 'Text6.Text = Hex$(btReceive(6)) ' Text7.Text = Hex$(btReceive(7)) ' Text8.Text = Hex$(btReceive(8)) ' Text9.Text = Hex$(btReceive(9)) ' Text10.Text = Hex$(btReceive(10)) ' Text11.Text = Hex$(btReceive(11)) ' Text12.Text = Hex$(btReceive(12)) ' Text13.Text = Hex$(btReceive(13)) ' Text14.Text = Hex$(btReceive(14)) ' Text15.Text = Hex$(btReceive(15)) ' Text16.Text = Hex$(btReceive(16)) ' End If End With End Sub Private Sub Form_Load() With ComK3 .CommPort = 1 .Settings = "9600,N,8,2" .InputMode = comInputModeBinary '二進(jìn)制收發(fā) .InBufferSize = 512 .OutBufferSize = 512 If (Not .PortOpen) Then .PortOpen = True End With End Sub 能收到4個亂碼,應(yīng)該是錯誤標(biāo)示,原程序待CRC驗證,我驗證不出,所以先刪除了。期望大俠們幫我修改下程序 展開
2009-07-05 16:19:26 440 2
單片機(jī)串口通信原理
 
2011-04-15 07:22:02 506 4
總線通信與串口通信有什么區(qū)別
請教下大蝦們,常說的總線有profibus、can、modbus、FF、devicenet等,這些是不是以走什么協(xié)議來命名的?那我可以說:“它走can協(xié)議嗎?”而常見的串口通信modbus,MPI,PPI等與總線通信... 請教下大蝦們,常說的總線有profibus、can、modbus、FF、devicenet等,這些是不是以走什么協(xié)議來命名的?那我可以說:“它走can協(xié)議嗎?”而常見的串口通信modbus, MPI , PPI等與總線通信有什么區(qū)別呢? 展開
2017-09-03 18:20:12 568 1
串口通信和串行通信有什么區(qū)別?
 
2017-09-03 22:50:26 609 2
壓力傳感器串口通信的問題
Z近在用壓力傳感器在做串口通信,需要將壓力傳感器傳出的數(shù)據(jù)通過串口解析然后保存到數(shù)據(jù)庫中??墒窃谥亓?,也就是壓力不變的情況下,串口接收到的數(shù)據(jù)一直在循環(huán)變化。到底哪些才是... Z近在用壓力傳感器在做串口通信,需要將壓力傳感器傳出的數(shù)據(jù)通過串口解析然后保存到數(shù)據(jù)庫中。可是在重量,也就是壓力不變的情況下,串口接收到的數(shù)據(jù)一直在循環(huán)變化。到底哪些才是需要的數(shù)據(jù)格式呢?壓力不可能在一直變化的啊。接收到的數(shù)據(jù)應(yīng)該如何解析呢?如何轉(zhuǎn)化為我們所需要的壓力數(shù)值呢?(壓力傳感器沒有什么協(xié)議之類的描述,只給了模擬量和壓力之間的計算公式)。 大神求指點(diǎn)?。。?! 我們購買的壓力傳感器輸出的是模擬信號,我們用了ADC將其轉(zhuǎn)化為數(shù)值信號,但是輸出的數(shù)據(jù)格式不知道如何解析。另外,有測量介質(zhì)是固體的數(shù)字壓力傳感器嗎?我查了好像大部分?jǐn)?shù)字壓力傳感器都是測液壓和氣壓的啊,沒有測量固體壓力的。高手幫忙啊! 展開
2013-04-26 08:49:26 482 2
求"串口通信技術(shù)的研究與實現(xiàn)"論文目錄
論文要求(本科畢業(yè)論文):(1)串口通信是計算機(jī)常用的通信形式。本設(shè)計要求學(xué)生設(shè)計串口發(fā)生器,并在此基礎(chǔ)上采集串口發(fā)生器所發(fā)出的數(shù)據(jù),進(jìn)行在線顯示(2)完成硬件設(shè)計,也即串口發(fā)生器... 論文要求(本科畢業(yè)論文): (1)串口通信是計算機(jī)常用的通信形式。本設(shè)計要求學(xué)生設(shè)計串口發(fā)生器,并在此基礎(chǔ)上采集串口發(fā)生器所發(fā)出的數(shù)據(jù),進(jìn)行在線顯示 (2)完成硬件設(shè)計,也即串口發(fā)生器,能夠定時、連續(xù)的向串口發(fā)送數(shù)據(jù) (3)完成串口通信編程(VC編程),實現(xiàn)數(shù)據(jù)的接收和顯示。 展開
2008-05-24 19:32:46 402 1
63201電子負(fù)載如何設(shè)置串口通信
 
2015-06-02 13:50:35 401 1
九針串口通信連接線的接法
九針串口通信連接線的接法是不是只要用到三根線就可以,其中,公對公母對母,,公對母各是怎么樣接的用,數(shù)字123456789表示就可以啦希望高手能說明白一點(diǎn)... 九針串口通信連接線的接法 是不是只要用到三根線就可以, 其中,公對公 母對母,,公對母 各是怎么樣接的 用,數(shù)字 123456789 表示就可以啦 希望高手能說明白一點(diǎn) 展開
2013-03-26 10:18:50 956 4
用matlab設(shè)計一個濾波器
數(shù)字濾波器設(shè)計及在語音信號分析中的應(yīng)用。 步驟: 1、語音信號采集 錄制一段課程設(shè)計學(xué)生的語音信號并保存為文件,要求長度不小于10秒,并對錄制的信號進(jìn)行采樣;錄制時可以使用Windows自帶的錄音機(jī),或者使用其它專業(yè)的錄音軟件,錄制時需要配備錄音硬件... 數(shù)字濾波器設(shè)計及在語音信號分析中的應(yīng)用。 步驟: 1、語音信號采集 錄制一段課程設(shè)計學(xué)生的語音信號并保存為文件,要求長度不小于10秒,并對錄制的信號進(jìn)行采樣;錄制時可以使用Windows自帶的錄音機(jī),或者使用其它專業(yè)的錄音軟件,錄制時需要配備錄音硬件(如麥克風(fēng)),為便于比較,需要在安靜、干擾小的環(huán)境下錄音。 2、語音信號分析 使用MATLAB繪出采樣后的語音信號的時域波形和頻譜圖。根據(jù)頻譜圖求出其帶寬,并說明語音信號的采樣頻率不能低于多少赫茲。 3、含噪語音信號合成 在MATLAB軟件平臺下,給原始的語音信號疊加上噪聲,噪聲類型分為如下幾種:(1)白噪聲;(2)單頻噪色(正弦干擾);(3)多頻噪聲(多正弦干擾);(4)其它干擾,可設(shè)置為低頻、高頻、帶限噪聲,或Chirp干擾、沖激干擾。繪出疊加噪聲后的語音信號時域和頻譜圖,在視覺上與原始語音信號圖形對比,也可通過Windows播放軟件從聽覺上進(jìn)行對比,分析并體會含噪語音信號頻譜和時域波形的改變。 4、數(shù)字濾波器設(shè)計及濾波,完成以下題目中的一個 給定濾波器的規(guī)一化性能指標(biāo)(參考指標(biāo),實際中依據(jù)每個同學(xué)所疊加噪聲情況而定)例如:通帶截止頻率wp=0.25*pi, 阻通帶截止頻率ws=0.3*pi; 通帶Z大衰減Rp=1 dB; 阻帶Z小衰減Rs=15 dB,每個題目至少設(shè)計出5個用不同方法的不同類型濾波器。 題目(1):采用窗函數(shù)法與等波紋法分別設(shè)計各型FIR濾波器(低通、高通、帶通、帶阻中的至少3種類型)來對疊加噪聲前后的語音信號進(jìn)行濾波處理,繪出濾波器的頻域響應(yīng),繪出濾波后信號的時域波形和頻譜,并對濾波前后的信號進(jìn)行對比,分析信號的變化;在相同的性能指標(biāo)下比較各方法的濾波效果,并從理論上進(jìn)行分析(或解釋)。 題目(2):采用雙線性變換法與脈沖響應(yīng)不變法,分別利用不同的原型低通濾波器(Butterworth型與切比雪夫I型)來設(shè)計各型IIR濾波器(低通、高通、帶通、帶阻中的至少3種類型),繪出濾波器的頻域響應(yīng);并用這些數(shù)字濾波器對含噪語音信號分別進(jìn)行濾波處理,比較不同方法下設(shè)計出來的數(shù)字濾波器的濾波效果,并從理論上進(jìn)行分析(或解釋)。 5、回放語音信號 對濾波后的語音信號進(jìn)行回放,感覺濾波前后語音信號的變化。 6、設(shè)計一個語音信號分析與處理系統(tǒng)界面(選作) 利用MATLAB的界面設(shè)計功能,設(shè)計一個MATLAB環(huán)境下的人機(jī)交互界面,完成上述濾波器的設(shè)計及濾波過程,要求能夠接收輸入的設(shè)計參數(shù),查看設(shè)計結(jié)果及濾波結(jié)果。我的郵箱是471147021@QQ.com 哪位高手知道這方面的問題,給我點(diǎn)提示嘛,或者將答案發(fā)到我的郵箱里,謝謝了?。?! 展開
2009-06-24 07:58:04 718 2
用MATLAB設(shè)計一個低通濾波器
Z好解釋一下各種參數(shù)怎么設(shè)置 都是怎么計算出來的
2018-11-20 10:57:29 405 0
如何利用OMRON CP1H串口進(jìn)行Modbus-RTU通信
 
2018-11-18 18:31:24 500 0

4月突出貢獻(xiàn)榜

推薦主頁

最新話題