[問題] UART Interface

看板LinuxDev作者 (Walter von Schenkopp)時間18年前 (2007/04/05 23:19), 編輯推噓1(102)
留言3則, 2人參與, 最新討論串1/1
我先說明我的情況,我目前正在做GPRS模組的實驗 就是用WinXP的超級終端機去開com1 (com1連接gprs module) 對gprs模組送AT command 超級終端機的設定是鲍率9600,傳輸資料為8 bits, 沒有同位元檢查,停止位元為1 bit。 現在我要把這個設定移到Linux系統上來做(Orz 其實是Embedded Linux) 所以我要自己搞一個tty介面,現在要來求救的就是這個介面的相關設定。 如果我要把這個介面的模式設定成跟XP的超級終端機一樣的話 我該把ttyS0設定為正規模式亦或是非正規模式? open後面需除了正規/非正規,O_RDWD,O_NOCTTY外需不需要加上O_NDELAY旗標? 還有Termios結構中的options.c_iflag和option.c_oflag需不需要做特別的設定? 鮑率9600我這樣子的設定options.c_flag|=(B9600|CLOCAL|CREAD); 正確否? 至於8 bits 無同位元檢查 停止位元1 bit 設定如下 options.c_cflag &= ~PARENB; options.c_cflag &= ~CSTOPB; options.c_cflag |= CS8; @@ 這樣不曉得有沒有問題 至於局部模式c_lflag除了正規/非正規外還需不需要另外加上什麼其他的設定? 例如:ECHO ECHOE? 特殊控制字元c_cc 因為AT command需要輸入<CR>還有ctrl+z這樣的訊號 那c_cc我應該要如何去設定呢? Orz 這部分我看書完全看不懂 不好意思問題有點多<(_ _)> -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.127.81.110

04/07 00:43, , 1F
建議...用pyserial 然後在windows linux 板子上通吃..
04/07 00:43, 1F

04/07 00:44, , 2F
當然...size會有點大就是了 xD~ 不過先拿來驗証不錯
04/07 00:44, 2F

04/07 08:11, , 3F
好的 我去做做看 <(_ _)>
04/07 08:11, 3F
文章代碼(AID): #165HEDR2 (LinuxDev)
文章代碼(AID): #165HEDR2 (LinuxDev)