Component中SIO怎么用

這篇文章主要為大家展示了“Component中SIO怎么用”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“Component中SIO怎么用”這篇文章吧。

公司主營業(yè)務(wù):成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè)、移動(dòng)網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。成都創(chuàng)新互聯(lián)公司是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來驚喜。成都創(chuàng)新互聯(lián)公司推出江北免費(fèi)做網(wǎng)站回饋大家。

組件INCLUDE_SIO,Serial IO,串口IO

Component中SIO怎么用

包含了它之后,VxWorks就會(huì)調(diào)用usrSerial.c的usrSerialInit()來加載串口設(shè)備

Component中SIO怎么用

通常BSP里都會(huì)把N_UART_CHANNELS定義為2,所以VxWorks啟動(dòng)后,就可以看到兩個(gè)串口了

Component中SIO怎么用

 

如果沒有包含組件INCLUDE_PC_CONSOLE,VxWorks還會(huì)把第CONSOLE_TTY(0)個(gè)串口當(dāng)作系統(tǒng)的標(biāo)準(zhǔn)IO設(shè)備,默認(rèn)波特率是CONSOLE_BAUD_RATE(9600)。這樣的話,printf()的結(jié)果就會(huì)從串口0輸出。不過在X86的設(shè)備里,通常還是用pcConsole來做系統(tǒng)的標(biāo)準(zhǔn)IO,printf()的結(jié)果也就是從顯卡輸出了

Component中SIO怎么用

如果Target沒有網(wǎng)卡或者沒有網(wǎng)卡驅(qū)動(dòng),在開發(fā)過程中,可以通過串口連接WDB,也就是用串口來進(jìn)行調(diào)試。默認(rèn)用的是WDB_TTY_CHANNEL(1),因此Target最好至少有兩個(gè)串口。不過串口的傳輸速率比網(wǎng)卡慢很多,調(diào)試起來是很吃力的

Component中SIO怎么用

 

我當(dāng)前的Target是X86的CPU,VxWorks鏡像包含了PC console組件,并使用END連接WDB,因此兩個(gè)串口都是空閑的。

串口是以字節(jié)為單位來傳輸數(shù)據(jù)的,接下來看看應(yīng)用層怎么操作它吧。

用串口線把VxWorks的串口0與Host的串口連接起來,Host端打開一個(gè)串口工具,例如我Windows端用的PuTTY,串口的配置一般就是用默認(rèn)值:波特率9600,數(shù)據(jù)位8,停止位1,奇偶校驗(yàn)無,流控?zé)o

Component中SIO怎么用

因?yàn)閂xWorks在初始化串口時(shí),一般用的初值也是這樣的

Component中SIO怎么用

直接在Shell里試試吧

Component中SIO怎么用

Host的串口工具里就可以收到字符串hello了

Component中SIO怎么用

還是寫段代碼吧: 這段代碼打開串口,讀取串口的默認(rèn)配置,然后發(fā)送一段字符

Component中SIO怎么用

執(zhí)行結(jié)果為

Component中SIO怎么用

再跑一個(gè)接收的例子

Component中SIO怎么用

從Host端的串口工具里輸入一些字符,以'q'結(jié)束

Component中SIO怎么用

這個(gè)例子很簡單,只是把接收到的信息,用printf()打印出來。在具體項(xiàng)目里就要用更復(fù)雜的操作來代替printf()了

最后看看串口的ioctl()都支持那些操作,例如可以用SIO_BAUD_SET或FIOBAUDRATE來設(shè)置波特率

Component中SIO怎么用

如果想要自己擴(kuò)展串口的功能,可以在驅(qū)動(dòng)文件的ioctl函數(shù)添加分支,編號(hào)至少從0x100a開始

這正是:

VX默認(rèn)倆串口(/tyCo/x),可做系統(tǒng)I與O(no PC Console)。

默認(rèn)配置最常用(CS8),更多功能見Control(ioctl)。

以上是“Component中SIO怎么用”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

當(dāng)前標(biāo)題:Component中SIO怎么用
標(biāo)題路徑:http://bm7419.com/article12/jcsjgc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作全網(wǎng)營銷推廣、Google、搜索引擎優(yōu)化、App開發(fā)、自適應(yīng)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名