日韩欧美国产精品,在线播放国产区,欧美人与物videos另类一,日韩经典欧美一区二区三区,成人午夜视频在线,无毒不卡,香蕉97碰碰视频免费

linux串口編程(中嵌教育-嵌入式linux開發(fā)ppt課件)

上傳人:29 文檔編號:251606333 上傳時間:2024-11-08 格式:PPT 頁數(shù):17 大?。?31.81KB
收藏 版權(quán)申訴 舉報 下載
linux串口編程(中嵌教育-嵌入式linux開發(fā)ppt課件)_第1頁
第1頁 / 共17頁
linux串口編程(中嵌教育-嵌入式linux開發(fā)ppt課件)_第2頁
第2頁 / 共17頁
linux串口編程(中嵌教育-嵌入式linux開發(fā)ppt課件)_第3頁
第3頁 / 共17頁

下載文檔到電腦,查找使用更方便

20 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《linux串口編程(中嵌教育-嵌入式linux開發(fā)ppt課件)》由會員分享,可在線閱讀,更多相關(guān)《linux串口編程(中嵌教育-嵌入式linux開發(fā)ppt課件)(17頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、,單擊此處編輯母版文本樣式,第二級,第三級,第四級,第五級,單擊此處編輯母版標題樣式,www.chinaEDA.cn,linux串口,應(yīng)用,開發(fā),串口,概述,串口設(shè)置,串口使用詳解,linux串口應(yīng)用開發(fā)串口概述,1,、,串口,概述,用戶常見的數(shù)據(jù)通信的基本方式有兩種:,并行通信;,串行通信;,串行通信是計算機常用的接口,如:,RS-232-C,接口。該標準規(guī)定采用一個,DB25,芯引腳連接器或,DB9,芯引腳連接器。,芯片內(nèi)部常具有,UART,控制器,其可工作于,Interrupt(,中斷模式,),或,DMA,(直接內(nèi)存訪問)模式。,1、串口概述用戶常見的數(shù)據(jù)通信的基本方式有兩種:,UART

2、,的操作主要包括以下幾個部分:,數(shù)據(jù)發(fā)送;,數(shù)據(jù)接收;,產(chǎn)生中斷;,產(chǎn)生波特率;,Loopback,模式;,紅外模式;,自動流控模式;,串口參數(shù)的配置主要包括:波特率、數(shù)據(jù)位、停止位、流控協(xié)議。,UART的操作主要包括以下幾個部分:,linux,中的串口設(shè)備文件存放于,/dev,目錄下,其中串口一,串口二對應(yīng)設(shè)備名依次為“,/dev/ttyS0”,、“,/dev/ttyS1”,。,在,linux,下操作串口與操作文件相同。,linux中的串口設(shè)備文件存放于/dev目錄下,其中串口一,2、串口詳細配置,在使用串口之前必須設(shè)置相關(guān)配置,包括:波特率、數(shù)據(jù)位、校驗位、停止位等。串口設(shè)置由下面結(jié)構(gòu)體實

3、現(xiàn):,2、串口詳細配置在使用串口之前必須設(shè)置相關(guān)配置,包括:波特,該結(jié)構(gòu)中,c_cflag,最為重要,可設(shè)置波特率、數(shù)據(jù)位、校驗位、停止位。在設(shè)置波特率時需在數(shù)字前加上,B,,如,B9600,。,B19200,。使用其需通過“與”“或”操作方式。,該結(jié)構(gòu)中c_cflag最為重要,可設(shè)置波特率、數(shù)據(jù)位、,輸入模式,c_iflag,成員控制端口接收端的字符輸入處理。,輸入模式c_iflag成員控制端口接收端的字符輸入處理,串口控制函數(shù),Tcgetattr,取屬性,(termios,結(jié)構(gòu),),Tcsetattr,設(shè)置屬性,(termios,結(jié)構(gòu),),cfgetispeed,得到輸入速度,Cfgeto

4、speed,得到輸出速度,Cfsetispeed,設(shè)置輸入速度,Cfsetospeed,設(shè)置輸出速度,Tcdrain,等待所有輸出都被傳輸,tcflow,掛起傳輸或接收,tcflush,刷清未決輸入和,/,或輸出,Tcsendbreak,送,BREAK,字符,tcgetpgrp,得到前臺進程組,ID,tcsetpgrp,設(shè)置前臺進程組,ID,串口控制函數(shù)Tcgetattr取屬性(termios結(jié)構(gòu),2.1串口配置流程,保存原先串口配置使用,tcgetattr(fd,&oldtio),函數(shù),struct termios newtio,oldtio;,tcgetattr(fd,&oldtio,);

5、,激活選項有,CLOCAL,和,CREAD,用于本地連接和接收使能。,newtio.c_cflag|=CLOCAL|CREAD;,設(shè)置波特率,使用函數(shù),cfsetispeed,、,cfsetospeed,cfsetispeed(,cfsetospeed(,2.1串口配置流程保存原先串口配置使用tcgetattr(f,設(shè)置數(shù)據(jù)位,需使用掩碼設(shè)置。,newtio.c_cflag,newtio.c_cflag|=CS8;,設(shè)置奇偶校驗位,使用,c_cflag,和,c_iflag,。,設(shè)置奇校驗:,newtio.c_cflag|=PARENB;,newtio.c_cflag|=PARODD;,newt

6、io.c_iflag|=(INPCK|ISTRIP);,設(shè)置偶校驗:,newtio.c_iflag|=(INPCK|ISTRIP);,newtio.c_cflag|=PARENB;,newtio.c_cflag,設(shè)置數(shù)據(jù)位,需使用掩碼設(shè)置。,設(shè)置停止位,通過激活,c_cflag,中的,CSTOPB,實現(xiàn)。若停止位為,1,,則清除,CSTOPB,,若停止位為,2,,則激活,CSTOPB,。,newtio.c_cflag,設(shè)置最少字符和等待時間,對于接收字符和等待時間沒有特別要求時,可設(shè)為,0,。,newtio.c_ccVTIME =0;,newtio.c_ccVMIN=0;,設(shè)置停止位,通過激活

7、c_cflag中的CSTOPB實現(xiàn)。若停,處理要寫入的引用對象,tcflush,函數(shù)刷清(拋棄)輸入緩存(終端驅(qū)動程序已接收到,但用戶程序尚未讀)或輸出緩存(用戶程序已經(jīng)寫,但尚未發(fā)送)。,int tcflush(int,filedes,int,queue,),queue,數(shù)應(yīng)當是下列三個常數(shù)之一:,TCIFLUSH,刷清輸入隊列。,TCOFLUSH,刷清輸出隊列。,TCIOFLUSH,刷清輸入、輸出隊列。,如:,tcflush(fd,TCIFLUSH);,處理要寫入的引用對象,激活配置。在完成配置后,需激活配置使其生效。使用,tsettattr(),函數(shù)。原型:,int tcgetattr(

8、int,filedes,struct termios*,termptr,);,int tcsetattr(int,filedes,int,opt,const struct termios*,termptr,);,tcsetattr,的參數(shù),opt,使我們可以指定在什么時候新的終端屬性才起作用。,opt,可以指定為下列常數(shù)中的一個:,TCSANOW,更改立即發(fā)生。,TCSADRAIN,發(fā)送了所有輸出后更改才發(fā)生。若更改輸出參數(shù)則應(yīng)使用此選擇項。,TCSAFLUSH,發(fā)送了所有輸出后更改才發(fā)生。更進一步,在更改發(fā)生時未讀的所有輸入數(shù)據(jù)都被刪除(刷清),使用如:,tcsetattr(fd,TCSAN

9、OW,&newtio),激活配置。在完成配置后,需激活配置使其生效。使用tsetta,3、串口使用詳解,在配置完串口的相關(guān)屬性后,就可對串口進行打開,讀寫操作了。其使用方式與文件操作一樣,區(qū)別在于串口是一個終端設(shè)備。,3、串口使用詳解 在配置完串口的相關(guān)屬性后,就可對串口進,3.1 打開串口,fd=open(/dev/ttyS0,O_RDWR|O_NOCTTY|O_NDELAY);,Open,函數(shù)中除普通參數(shù)外,另有兩個參數(shù),O_NOCTTY,和,O_NDELAY,。,O_NOCTTY:,通知,linix,系統(tǒng),這個程序不會成為這個端口的控制終端。,O_NDELAY:,通知,linux,系統(tǒng)不

10、關(guān)心,DCD,信號線所處的狀態(tài)(端口的另一端是否激活或者停止)。,3.1 打開串口fd=open(/dev/ttyS0,然后,恢復(fù)串口的狀態(tài)為阻塞狀態(tài),用于等待串口數(shù)據(jù)的讀入。用,fcntl,函數(shù):,fcntl,(,fd,F_SETFL,0,),;,接著,測試打開的文件描述府是否引用一個終端設(shè)備,以進一步確認串口是否正確打開。,isatty(STDIN_FILENO);,然后,恢復(fù)串口的狀態(tài)為阻塞狀態(tài),用于等待串口數(shù)據(jù)的讀入,3.2 讀寫串口,串口的讀寫與普通文件一樣,使用,read,write,函數(shù)。,read(fd,buff,8);,write(fd,buff,8);,實例見:,seri.c,3.2 讀寫串口 串口的讀寫與普通文件一樣,使用read,

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  sobing.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!