當前位置:首頁 » 操作系統 » linux讀寫串口

linux讀寫串口

發布時間: 2022-09-20 13:15:30

linux內核自帶的s3c2440串口驅動里怎麼配置串口啊,該怎麼讀寫串口呢

是的,串口設備也是字元設備呀
但是一般serial
0會被當作console,也就是你在pc上通過超級終端等進去的那個

❷ 如何在linux內核模塊中對串口進行讀寫

是的,串口設備也是字元設備呀 但是一般serial 0會被當作console,也就是你在pc上通過超級終端等進去的那個

❸ 如何在Linux下用java讀寫串口設備

java 是否有許可權訪問該串口

❹ linux下串口讀寫問題掛死

這樣寫肯定會寫死的啊..寫(也就是串口發送數據)實際應用不會這么頻繁的.樓主可以在寫後加上一個sleep(1);這樣就不會寫死了..
高並發讀寫這樣設計也是錯誤的應該用隊列來處理..

❺ linux串口讀取問題

首先你確定你那串口是否有東西可讀? 就是你上面說的「一個文件不停的寫數據到串口」!你可以先不這樣讀取,你可以在終端上用cat試試是否有數據可讀:cat /dev/ttyS0

如果有的話,那你就檢查串口設置是否正確,如波特率,數據位,停止位,校驗位等!

最後就是你讀取的函數了,看看先不要用printf列印字元串了,先看看十六進制是否有,然後再看字元等!

就是以上一些,你還可以參考Linux下串口文檔,網路上很多的……

❻ 關於linux下QT中讀寫串口的問題

一、程序設計的基礎,例如:基本的編程語言基礎,至少對數據類型、程序的結構及流程式控制制等最基本的內容要相當清楚!另外有不少同學都問到數據結構的基礎,我一直認為數據結構和演算法的學習是幫助形成程序設計邏輯思維的很好訓練方式,對於程序員的長期專業素養的提高一定有好處,所以建議即使已經在嵌入式行業中工作之後也應該多補充一些相關的知識。許多在學校沒有學過數據結構的同學往往認為這部分非常枯燥、難學。而實際上如果你能明白研究計算機存儲和數據組織方式的意義,就一定能夠充分體會到數據結構的價值和魅力。
二、操作系統工作原理,這部分往往是非計算機專業的同學在學校時沒有接觸過的。而由於嵌入式軟體設計相關的多任務環境、模塊間的同步與通信協同、驅動設計等往往都需要有對操作系統工作機制的了解和掌握作為基礎,因此建議沒有系統學習過的同學,找一本相關的操作系統工作原理書籍認真看一下。
三、基本的硬體基礎,由於嵌入式Linux開發往往是ARM+Linux路線,所以為了能夠在後續培訓過程中很好地掌握主流嵌入式微處理器的結構與原理(例如:ARM9),就需要對硬體工作原理有初步的了解和掌握,建議看一下諸如計算機組成原理、體系結構等相關的專業書籍。
有沒有基礎知識及基礎知識的多少在很大程度上影響著你能否學習嵌入式linux及學習進度,因此,各個培訓機構在學員入學前讀會對其進行基礎知識考查,像其中的東方賽富嵌入式學院對這一塊更加看重,因為他們是保障真正100%就業,對學員入學的要求更加嚴格!

❼ linux怎麼讀取串口數據

#include<stdio.h>
#include<stdlib.h>
#include<unistd.h>
#include<sys/types.h>
#include<sys/stat.h>
#include<fcntl.h>
#include<termios.h>
#include<errno.h>

#defineFALSE-1
#defineTRUE0

intspeed_arr[]={B38400,B19200,B9600,B4800,B2400,B1200,B300,B38400,B19200,B9600,B4800,B2400,B1200,B300,};
intname_arr[]={38400,19200,9600,4800,2400,1200,300,38400,19200,9600,4800,2400,1200,300,};
voidset_speed(intfd,intspeed){
inti;
intstatus;
structtermiosOpt;
tcgetattr(fd,&Opt);
for(i=0;i<sizeof(speed_arr)/sizeof(int);i++){
if(speed==name_arr[i]){
tcflush(fd,TCIOFLUSH);
cfsetispeed(&Opt,speed_arr[i]);
cfsetospeed(&Opt,speed_arr[i]);
status=tcsetattr(fd,TCSANOW,&Opt);
if(status!=0){
perror("tcsetattrfd1");
return;
}
tcflush(fd,TCIOFLUSH);
}
}
}

intset_Parity(intfd,intdatabits,intstopbits,intparity)
{
structtermiosoptions;
if(tcgetattr(fd,&options)!=0){
perror("SetupSerial1");
return(FALSE);
}
options.c_cflag&=~CSIZE;
switch(databits)
{
case7:
options.c_cflag|=CS7;
break;
case8:
options.c_cflag|=CS8;
break;
default:
fprintf(stderr,"Unsupporteddatasize ");return(FALSE);
}
switch(parity)
{
case'n':
case'N':
options.c_cflag&=~PARENB;/*Clearparityenable*/
options.c_iflag&=~INPCK;/*Enableparitychecking*/
break;
case'o':
case'O':
options.c_cflag|=(PARODD|PARENB);
options.c_iflag|=INPCK;/*Disnableparitychecking*/
break;
case'e':
case'E':
options.c_cflag|=PARENB;/*Enableparity*/
options.c_cflag&=~PARODD;
options.c_iflag|=INPCK;/*Disnableparitychecking*/
break;
case'S':
case's':/*asnoparity*/
options.c_cflag&=~PARENB;
options.c_cflag&=~CSTOPB;break;
default:
fprintf(stderr,"Unsupportedparity ");
return(FALSE);
}

switch(stopbits)
{
case1:
options.c_cflag&=~CSTOPB;
break;
case2:
options.c_cflag|=CSTOPB;
break;
default:
fprintf(stderr,"Unsupportedstopbits ");
return(FALSE);
}
/*Setinputparityoption*/
if(parity!='n')
options.c_iflag|=INPCK;
tcflush(fd,TCIFLUSH);
options.c_cc[VTIME]=150;
options.c_cc[VMIN]=0;/*UpdatetheoptionsanddoitNOW*/
if(tcsetattr(fd,TCSANOW,&options)!=0)
{
perror("SetupSerial3");
return(FALSE);
}
return(TRUE);
}

intmain()
{
printf("Thisprogramupdateslasttimeat%s%s ",__TIME__,__DATE__);
printf("STDIOCOM1 ");
intfd;
fd=open("/dev/ttyS0",O_RDWR);
if(fd==-1)
{
perror("serialporterror ");
}
else
{
printf("open");
printf("%s",ttyname(fd));
printf("succesfully ");
}

set_speed(fd,115200);
if(set_Parity(fd,8,1,'N')==FALSE){
printf("SetParityError ");
exit(0);
}
charbuf[]="fe55aa07bc010203040506073d";
write(fd,&buf,26);
charbuff[512];
intnread;
while(1)
{
if((nread=read(fd,buff,512))>0)
{
printf(" Len:%d ",nread);
buff[nread+1]='';
printf("%s",buff);
}
}
close(fd);
return0;
}

熱點內容
內置存儲卡可以拆嗎 發布:2025-05-18 04:16:35 瀏覽:336
編譯原理課時設置 發布:2025-05-18 04:13:28 瀏覽:378
linux中進入ip地址伺服器 發布:2025-05-18 04:11:21 瀏覽:612
java用什麼軟體寫 發布:2025-05-18 03:56:19 瀏覽:32
linux配置vim編譯c 發布:2025-05-18 03:55:07 瀏覽:107
砸百鬼腳本 發布:2025-05-18 03:53:34 瀏覽:945
安卓手機如何拍視頻和蘋果一樣 發布:2025-05-18 03:40:47 瀏覽:742
為什麼安卓手機連不上蘋果7熱點 發布:2025-05-18 03:40:13 瀏覽:803
網卡訪問 發布:2025-05-18 03:35:04 瀏覽:511
接收和發送伺服器地址 發布:2025-05-18 03:33:48 瀏覽:372