freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

一個(gè)linux下基于電話線路的數(shù)據(jù)通信程序的設(shè)計(jì)與實(shí)現(xiàn)—免費(fèi)計(jì)算機(jī)畢業(yè)設(shè)計(jì)論文(更新版)

  

【正文】 .......................................................................................... 9 c_cflag控制項(xiàng)設(shè)置 ............................................................................. 9 c_iflag、 c_lflag和 c_oflag設(shè)置 .................................................... 10 c_cc控制字符設(shè)置 ..............................................................................11 讀寫(xiě)串口 ............................................................................................ 12 MODEM的控制 ................................................................................................ 13 MODEM的兩種工作狀態(tài) ....................................................................... 13 DTE與 DCE的握手 .............................................................................. 13 MODEM撥號(hào)連接 .................................................................................. 14 文件傳輸協(xié)議的設(shè)計(jì) ..................................................................................... 15 5 編碼實(shí)現(xiàn) ................................................................................................................. 17 串口初始化實(shí)現(xiàn) ............................................................................................ 17 串口讀寫(xiě)的實(shí)現(xiàn) ............................................................................................ 18 MODEM初始化的實(shí)現(xiàn) ..................................................................................... 19 MODEM狀態(tài)讀取的實(shí)現(xiàn) .................................................................................. 21 6 程序測(cè)試 ................................................................................................................. 21 串口傳輸文件測(cè)試 ........................................................................................ 21 MODEM撥號(hào)連接并傳輸數(shù)據(jù)測(cè)試 .................................................................... 22 結(jié) 論 ........................................................................................................................ 22 參考文獻(xiàn) ........................................................................................................................ 23 致 謝 ........................................................................................................................ 24 聲 明 ........................................................................................................................ 25 第 1 頁(yè) 共 24頁(yè) 第 2 頁(yè) 共 24頁(yè) 1 引 言 設(shè)計(jì)背景 現(xiàn)在,隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的發(fā)展,國(guó)民收入的提高,互聯(lián)網(wǎng)走進(jìn)了千家萬(wàn)戶,但仍有很多計(jì)算機(jī)用戶并沒(méi)有安裝寬帶或其它網(wǎng)絡(luò)設(shè)備。所以在 Linux 平臺(tái)的基礎(chǔ)上,選用 GCC編繹代碼。, Solaris174。當(dāng)進(jìn)行串行通訊時(shí),傳送或接 收 的每個(gè)字(例如:字節(jié)或字符)是以每次一位傳輸?shù)?。由于通信設(shè)備廠商都生產(chǎn)與 RS232C 制式兼容的通信設(shè)備,因此,它作為一種標(biāo)準(zhǔn),目前已在微機(jī)通信中廣泛采用,它不僅已被內(nèi)置于每一臺(tái)計(jì)算機(jī),同時(shí)也已被內(nèi)置于從微控制器到主機(jī)的多種類(lèi)型的計(jì)算機(jī)及其相連接的設(shè)備。 第 4 頁(yè) 共 24頁(yè) 在 RTS、 CTS、 DSR、 DTR 和 DCD等控制線上: 異步通迅 為使計(jì)算機(jī)理解進(jìn)入它的串行數(shù)據(jù),它需要一些途徑?jīng)Q定 哪 里是字符的開(kāi)始和結(jié)束。 其它常見(jiàn)的校驗(yàn)如 space 校驗(yàn) , mark 校驗(yàn) , 和無(wú)校驗(yàn)。 MODEM 簡(jiǎn)介 MODEM 目前最廣泛使用的數(shù)據(jù)傳輸通道就是模擬電話線路。目前各廠家生產(chǎn)的 MODEM 除了可以執(zhí)行最基本的 Hayes 命令集外,還有自己特有的命令。 Gcc 編譯器能將 C、 C++語(yǔ)言源程序、匯 編 程序和目標(biāo)程序編譯、連接成可執(zhí)行文件,如果沒(méi)有給出可執(zhí)行文件的名字, gcc 將生成一個(gè)名為 的文件。在連接階段,所有的目標(biāo)文件被安排在可執(zhí)行程序中的恰當(dāng)?shù)奈恢?,同時(shí),該程序所調(diào)用到的庫(kù)函數(shù)也從各自所在的檔案庫(kù)中連到合適的地方。總體設(shè)想如圖 3 所示: 圖 3 預(yù)期設(shè)計(jì)效果 總體來(lái)說(shuō),設(shè)計(jì)可以分成兩部分來(lái)進(jìn)行: RS232C 與 MODEM。設(shè)置成功后,可以像使用真正的操作系統(tǒng)一樣使用虛擬機(jī),虛擬機(jī)下面的串口是真實(shí)的物理串口,而并非是虛擬出來(lái)的。 O_RDWR 代表可讀可寫(xiě), O_NOCTTY 告訴 Linux 該程序不想成為那個(gè)端口的“控制終端”。首先必須引入文件 。 //Buadrate 115200 cfsetospeed(amp。 //NO amp。最后的停止位也可以設(shè)置成 1位或者 2位。= ~OPOST。這種模式可以用在每次讀取固定長(zhǎng)度字符串的程序中,或者所連接的設(shè)備會(huì)突然大量字符的情況下。如果選擇了 OPOST 項(xiàng),那么就是標(biāo)準(zhǔn)輸出模式。這兩個(gè)參數(shù)控制這種模式的輸入行為: c_cc[VTIME]設(shè)定字符輸入間隔時(shí)間計(jì)時(shí)器,而 c_cc[VMIN]設(shè)置滿足讀取函數(shù)的最少字節(jié)數(shù)。 設(shè)計(jì)時(shí)考慮到不能讓串口接收不到數(shù)據(jù)陷入無(wú)限等待的僵死狀態(tài),并且又得讓串口有一定長(zhǎng)的等待時(shí)間等待數(shù)據(jù)到來(lái),所以選擇了 MIN = 0, TIME 0 的組合,即在沒(méi)有數(shù)據(jù)到來(lái)時(shí),會(huì)等待 TIME 時(shí)間,如果超過(guò) TIME 仍沒(méi)有數(shù)據(jù)到來(lái),則讀取串口的函數(shù)仍可以返回。option),串口設(shè)置就完成了。同時(shí),串口波特率越高,一次性把串口數(shù)據(jù)讀完的機(jī)率也越小。 當(dāng) MODEM 處于命令狀態(tài)時(shí), MODEM 不是和遠(yuǎn)端系統(tǒng)通信,而是準(zhǔn)備接受命令,此時(shí) MODEM 一般處于掛機(jī)狀態(tài) (離線命令狀態(tài) ),但也可以處于摘機(jī)狀態(tài) (在線命令狀態(tài) )。當(dāng)對(duì)方“摘機(jī)”后,兩方建立了通信鏈路 若計(jì)算機(jī)要發(fā)送數(shù)據(jù)至對(duì)方,首先通過(guò)接口電路 (DTE)發(fā)出 RTS(請(qǐng)求發(fā)送 )信號(hào)。 在串口設(shè)置部分,已經(jīng)設(shè)置 DCD 信號(hào)不影響串口工作,即使沒(méi)有 DCD信號(hào)串口依然不會(huì)睡眠,可以始終保持準(zhǔn)備接收狀態(tài)。 ◆ En 缺省值: 1 功能描述:命令回顯。 (顯然數(shù)字型更利于判斷 MODEM 返回的結(jié)果 ) 設(shè)計(jì)中將 MODEM 初始化為無(wú)命令回顯,以數(shù)字型返回。 文件傳輸協(xié)議的設(shè)計(jì) 上面的設(shè)計(jì)已經(jīng)實(shí)現(xiàn)一方寫(xiě)入數(shù)據(jù),而另一方能接收到數(shù)據(jù)的功能了,而 且除外界干擾外,數(shù)據(jù)不會(huì)出錯(cuò)。 發(fā)送方的發(fā)送函數(shù)流程如圖 6如示: 圖 6 send函數(shù)流程 第 17 頁(yè) 共 24頁(yè) 接收方的接收函數(shù)流程如圖 7如示: 圖 7 receive函數(shù)流程 5 編碼實(shí)現(xiàn) 串口初始化實(shí)現(xiàn) 對(duì)串口進(jìn)行正確的設(shè)置,串口才能正常工作,得到期望的結(jié)果,對(duì)串口設(shè)置是通過(guò)修改 POSIX Termios 成員項(xiàng)進(jìn)行的: void init_port(void) { struct termios options。 |= (CLOCAL | CREAD)。 //1 位停止位 /*非標(biāo)準(zhǔn)輸入 */ amp。 //20s 內(nèi)讀不到數(shù)據(jù) 就退出 tcflush(fd, TCIFLUSH)。 } 在前面 ,已經(jīng)對(duì)串口進(jìn)行了設(shè)置 ,但當(dāng)時(shí)的設(shè)置 ,是用于文件傳輸?shù)?.剛才對(duì)串 口 的 設(shè)置 已經(jīng) 不 合適 用 來(lái)配 合 MODEM 工 作了 .之前 c_cc[VMIN] = 0,c_cc[VMIN]=200的含義是如果超過(guò) 20s沒(méi)有讀到數(shù)據(jù)則 read()退出 ,那是為了防止串口始終讀不到數(shù)據(jù)陷入僵死狀態(tài) .現(xiàn)在 ,當(dāng)對(duì) MODEM 進(jìn)行控制的時(shí)候 ,撥號(hào)這個(gè)過(guò)程一般都要超過(guò) 1分鐘 ,這個(gè)過(guò)程結(jié)束以后 MODEM才會(huì)把狀態(tài)返還給串口 ,所以串口應(yīng)該有長(zhǎng)時(shí)間等待的能力 ,否則 MODEM 的狀態(tài)還沒(méi)發(fā)給串口 ,串口就已 第 20 頁(yè) 共 24頁(yè) 經(jīng)從 read()退出了 .所以當(dāng)控制 MODEM的時(shí)候應(yīng)該對(duì)之前串口的設(shè)置進(jìn)行一些改動(dòng) . void init_port_for_MODEM( ) { struct termios options。options)。 tcsetattr(fd, TCSANOW, amp。再將這兩臺(tái)電腦的 RS232C 串口連接 —— 讓它們的 3 腳交叉連接 (RxD、 TxD), 5腳對(duì)接 (GND)。 將程序安裝到 Linux 機(jī)中 ,把其中有關(guān)文件傳輸協(xié)議的部分注釋掉,留下MODEM 初始化與撥號(hào)部分。 結(jié) 論 本設(shè)計(jì)最終實(shí)現(xiàn)了兩臺(tái)電腦通過(guò) MODEM 撥號(hào)傳輸數(shù)據(jù)的目的,并在完成畢 業(yè)設(shè) 計(jì) 要求的基礎(chǔ)上增加了文本傳輸協(xié)議實(shí)現(xiàn)文件傳輸。剛開(kāi)始我對(duì)設(shè)計(jì)的要求和實(shí)現(xiàn)方法都不是很了解的時(shí)候,胡亂進(jìn)行搜索,結(jié)果幾天下來(lái),搜索到的有用信息并不多,等對(duì)設(shè)計(jì)的要求進(jìn)行更深入的了解以后 ,找到了很多 第 23 頁(yè) 共 24頁(yè) 對(duì)此次設(shè)計(jì)有幫助的資料。 [4] Michael R Programming Guide for POSIX Operating Systems[EB/OL]. ,1994/2020。在此向他表示我最衷心的感謝! 在論文完成過(guò)程中,本人還得到了王中科老師和曾令明老師的熱心幫助,本人向他們表示深深的謝意! 最后向在百忙之中評(píng)審本文的各位專(zhuān)家、老師表示衷心的感謝! 作 者簡(jiǎn)介: 姓 名:馬志為 性別:男 出生年月: 19840812 民族:漢 Email: 第 25 頁(yè) 共 24頁(yè) 聲 明 關(guān)于學(xué)位論文使用權(quán)和研究成果知識(shí)產(chǎn)權(quán)的說(shuō)明 本人完全了解成都信息工程學(xué)院有關(guān)保管使用學(xué)位論文的規(guī)定,其中包括: ( 1)學(xué)校有權(quán)保管并向有關(guān)部門(mén)遞交學(xué)位論文的原件與復(fù)印件。強(qiáng)巴生長(zhǎng)在一個(gè)叫達(dá)瓦奴措的小村,那是深入藏原腹地、最接近無(wú)人區(qū)的地方,他的名字,原意是能戰(zhàn)勝大海的人。默默研究了一輩子,誰(shuí)會(huì)放棄可以證明價(jià)值的最高獎(jiǎng)勵(lì) ?到底是為什么 ?”她轉(zhuǎn)念心想,“那個(gè)高大的男人,肯定是魔鬼的化身 !” 方新教授剛剛轉(zhuǎn)過(guò)身來(lái),就被卓木喜馬拉雅山脈的中部偏東南方向,可能越過(guò)國(guó)
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1