秋霞电影网午夜鲁丝片无码,真人h视频免费观看视频,囯产av无码片毛片一级,免费夜色私人影院在线观看,亚洲美女综合香蕉片,亚洲aⅴ天堂av在线电影猫咪,日韩三级片网址入口

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

上傳人:29 文檔編號(hào):251606333 上傳時(shí)間:2024-11-08 格式:PPT 頁數(shù):17 大?。?31.81KB
收藏 版權(quán)申訴 舉報(bào) 下載
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課件)》由會(huì)員分享,可在線閱讀,更多相關(guān)《linux串口編程(中嵌教育-嵌入式linux開發(fā)ppt課件)(17頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

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

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

3、現(xiàn):,2、串口詳細(xì)配置在使用串口之前必須設(shè)置相關(guān)配置,包括:波特,該結(jié)構(gòu)中,c_cflag,最為重要,可設(shè)置波特率、數(shù)據(jù)位、校驗(yàn)位、停止位。在設(shè)置波特率時(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,得到前臺(tái)進(jìn)程組,ID,tcsetpgrp,設(shè)置前臺(tái)進(jìn)程組,ID,串口控制函數(shù)Tcgetattr取屬性(termios結(jié)構(gòu),2.1串口配置流程,保存原先串口配置使用,tcgetattr(fd,&oldtio),函數(shù),struct termios newtio,oldtio;,tcgetattr(fd,&oldtio,);

5、,激活選項(xiàng)有,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è)置奇偶校驗(yàn)位,使用,c_cflag,和,c_iflag,。,設(shè)置奇校驗(yàn):,newtio.c_cflag|=PARENB;,newtio.c_cflag|=PARODD;,newt

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

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

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

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

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

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

最新文檔

相關(guān)資源

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

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

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


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