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

正文內(nèi)容

一個linux下基于電話線路的數(shù)據(jù)通信程序的設(shè)計與實現(xiàn)—免費計算機畢業(yè)設(shè)計論文-文庫吧

2024-11-09 11:23 本頁面


【正文】 ................................... 21 串口傳輸文件測試 ........................................................................................ 21 MODEM撥號連接并傳輸數(shù)據(jù)測試 .................................................................... 22 結(jié) 論 ........................................................................................................................ 22 參考文獻 ........................................................................................................................ 23 致 謝 ........................................................................................................................ 24 聲 明 ........................................................................................................................ 25 第 1 頁 共 24頁 第 2 頁 共 24頁 1 引 言 設(shè)計背景 現(xiàn)在,隨著計算機網(wǎng)絡(luò)技術(shù)的發(fā)展,國民收入的提高,互聯(lián)網(wǎng)走進了千家萬戶,但仍有很多計算機用戶并沒有安裝寬帶或其它網(wǎng)絡(luò)設(shè)備。電話已經(jīng)發(fā)展了一百多年,但互聯(lián)網(wǎng)只出現(xiàn)了不到五十年,英特網(wǎng)所分布的范圍遠遠比不上公用電話網(wǎng)。 本設(shè)計的意義 如果想傳送份文件給對方,卻苦惱于無法上互聯(lián)網(wǎng),那么用 MODEM 通過電話線發(fā)送文件就變得非常有用處了。還有些特殊情況,當(dāng)單位或工廠需要幾臺計算機之間數(shù)據(jù)共享時,進入互聯(lián)網(wǎng)有安全隱患,配置局域網(wǎng)費用又很高,而且需要共享的數(shù)據(jù)很小,僅按字節(jié)計算,這時候利用 MODEM 通過公用電話網(wǎng)或電話專線傳輸數(shù)據(jù),既經(jīng)濟,又安全,維護也非常簡單。 設(shè)計方法 本設(shè)計基于 Linux 操作系統(tǒng),用 POSIX termios 函數(shù)控制計算機串口,使用AT 指令操作 MODEM 進行初始化及撥號連接,最后用一個自編的文件傳輸協(xié)議傳輸文件。 整個程 序使用 C語言實現(xiàn)。此次設(shè)計之所以選擇 Linux,是因為 Linux 有著豐富的應(yīng)用程序和開發(fā)工具,可以支持各種硬件平臺和外部設(shè)備; Linux 又是完全開放的操作系統(tǒng),很大程度上, Linux 的開放性,賦予了其無窮的生命力。 GCC的發(fā)展與 Linux 發(fā)展息息相關(guān) ,相輔相承。所以在 Linux 平臺的基礎(chǔ)上,選用 GCC編繹代碼。 AT 指令做為 MODEM 的標準化語言,提供了豐富的 MODEM 初始化、撥號、掛機等等命令, AT 命令簡單的操作方式,使 MODEM 控制變得很方便。 理論依據(jù) 本次設(shè)計所需要的開發(fā)環(huán)境的搭建并不復(fù)雜,可是因為 程序直接對計算機硬件進行操作,需要對 RS232 串行端口有比較深入的了解,必須清楚各引腳電信號的作用,串口的工作方式,針對不同工作的方式,進行不同的設(shè)置。 MODEM 的功能非常豐富,這給程序的實現(xiàn)也帶來一定難度。通過完成本設(shè)計,既有助于深入了解計算機接口,又為硬件控制編程打下了一定基礎(chǔ),而且還能熟悉 Linux程序設(shè)計。 2 設(shè)計理論依據(jù) Linux Linux 操作系統(tǒng)核心最早是由芬蘭的 Linus Torvalds 1991 年 8月在芬蘭赫爾辛基大學(xué)上學(xué)時發(fā)布的 [那年 Torvals 25 歲 ],后來經(jīng)過眾多世界頂尖的 軟件工程師的不斷修改和完善, Linux 得以在全球普及開來,在服務(wù)器領(lǐng)域及個人桌 第 3 頁 共 24頁 面版得到越來越多的應(yīng)用,在嵌入式開發(fā)方面更是具有其它操作系統(tǒng)無可比擬的優(yōu)勢,并以每年 100%的用戶遞增數(shù)量顯示了 Linux 強大的力量。 本設(shè)計中使用的 POSIX(UNIX 可移植標準 )終端控制函數(shù),少量修改就可以運行于 IRIX174。, HPUX, SunOS174。, Solaris174。, Digital UNIX174。, Linux174。,和許多其它的類 UNIX 操作系統(tǒng)。在不同的類 UNIX 操作系統(tǒng)之間的最大差別是串口設(shè)備和鎖定文件的名字。并且 Linux 支持各種體系結(jié)構(gòu)的計算機,所以本設(shè)計雖然僅在個人 PC 機上實現(xiàn),但它對于不同體系結(jié)構(gòu)的計算機,或者不同的類 UNIX 操作系統(tǒng),都有很好的可移植性。 串行端口簡介 串行通迅 計算機一次傳輸一 位 或多位的信息(數(shù)據(jù)) ,串行是指一次傳輸一位數(shù)據(jù)。串行通訊包括了大多數(shù)的網(wǎng)絡(luò)設(shè)備、鍵盤、 麥克風(fēng),調(diào)制解調(diào)器和終端。當(dāng)進行串行通訊時,傳送或接 收 的每個字(例如:字節(jié)或字符)是以每次一位傳輸?shù)摹? 每位或者為 on 或者 off。有時也能聽到以 mark 表示 on 狀態(tài)和 space 表示 off 狀態(tài)。 串行數(shù)據(jù)的速度常表示 為比特每秒 (bps) 或波特率 (波特 )。這只是用于表示每秒能夠傳送的 1和 0的數(shù)量。追溯到計算機時代的早期, 300 波特被認為是很快的速度,但今天的計算機能夠控制 RS232 速度高達 115,200 波特!當(dāng)波特率超過 1,000,通常將看到速度被表示為千波特,或 kbps (例如 , 等等)。對于超過 1,000,000 的速度表示為兆波特,或者 Mbps (例如 )。 RS232C RS232C 是 標準的串行通訊電氣接口, 是由美國 EIA(電子工業(yè)聯(lián)合會 )與BELL 等公司一起開 發(fā)并于 1969 年公布的通信協(xié)議,這個標準對串行通信接口的有關(guān)問題,如信號線功能、電器特性都作了明確規(guī)定,它適合于數(shù)據(jù)傳輸速率在0~20 000bit/s 范圍內(nèi)的通信。由于通信設(shè)備廠商都生產(chǎn)與 RS232C 制式兼容的通信設(shè)備,因此,它作為一種標準,目前已在微機通信中廣泛采用,它不僅已被內(nèi)置于每一臺計算機,同時也已被內(nèi)置于從微控制器到主機的多種類型的計算機及其相連接的設(shè)備。 RS232C 常用于連接到一個 MODEM,其他擁有 RS232 接口的設(shè)備包括打印機、數(shù)據(jù)采模塊、測試裝置和控制回路。另外, RS232 也 可以直接應(yīng)用于任何類型計算機之間的簡單連接。 EIARS232C 對電器特性、邏輯電平和各種信號線功能都作了規(guī)定。 在 TxD 和 RxD 上: 邏輯 1(MARK) = 3V~ 15V。 邏輯 0(SPACE) = +3V~ +15V。 第 4 頁 共 24頁 在 RTS、 CTS、 DSR、 DTR 和 DCD等控制線上: 信號有效 (接通, ON 狀態(tài),正電壓 ) = +3V~ +15V。 信號無效 (斷開, OFF 狀態(tài),負電壓 ) = 3V~ 15V。 由于 RS232C 并未定義連接器的物理特性,因此,出現(xiàn)了 DB2 DB15和 DB9 各種類 型的連接器,其引腳的定義也各不相同,現(xiàn)在最常見的是 DB9連接器。 DB9 的信號引腳說明如表 1 所示: 表 1 RS232 各引腳含義 RS232 Signals Pin 描述 Pin 描述 1 DCD Data Carrier Detect 6 DSR Data Set Ready 2 RXD Received Data 7 RTS Request To Send 3 TXD Transmitted Data 8 CTS Clear To Send 4 DTR Data Terminal Ready 9 RI Ring Detect 5 GND Logic Ground 還有其它兩種常見的 串行接口標準是 RS422和 RS574。 RS422使用低電壓和微分信號,允許線纜長度到 1000 英尺 (300 米 )。 RS574 定義了 9pin PC 串行接口和電壓。 異步通迅 為使計算機理解進入它的串行數(shù)據(jù),它需要一些途徑?jīng)Q定 哪 里是字符的開始和結(jié)束。 這里 僅討論異步串行數(shù)據(jù)。 在異步模式下,串行數(shù)據(jù)線保持在 mark (1)狀態(tài),直到有字符傳送。一位起 始 start 位 、 字符內(nèi)容的每一位 、 一位可選的校驗位 、 以及一位或一位半的終止位。起始位始終是一個 space (0),從而告訴計算機新的串行數(shù)據(jù)到來。數(shù)據(jù)能夠在任何時候傳送或接受,所以稱做異步。 圖 1 異步數(shù)據(jù)通訊 可選的校驗是一個簡單數(shù)據(jù)位的加和,表明了數(shù)據(jù)位包含偶數(shù)或奇數(shù)個 1。如果是偶校驗 , 當(dāng)在字符中的 1是偶數(shù)個數(shù)時,校驗位為 0; 如果是奇校驗,當(dāng)字符中 第 5 頁 共 24頁 的 1 是奇數(shù)個時,校驗位為 0。 其它常見的校驗如 space 校驗 , mark 校驗 , 和無校驗。 Space 校驗意味著校驗 始 終為 0,而 mark 校驗意味著校驗位始終為 1。無校驗意味校驗不存在或不傳輸。 余下的被稱為停止位。這可以是 1, , 或 2 位停止位在字符之間,始終是 1。停止位原先是用來給計算機時間處理前面的字符的,但現(xiàn)在只是用來同步計算機和接收字符。異步數(shù)據(jù)格式通常表示為 8N1, 7E1,諸如此類。它們相應(yīng)地表示 8位數(shù) 據(jù),無校驗, 1 位停止 和 7 位數(shù)據(jù),偶校驗, 1 位停止 。 MODEM 簡介 MODEM 目前最廣泛使用的數(shù)據(jù)傳輸通道就是模擬電話線路。計算機所能處理的數(shù)字信號不能直接進入這樣的模擬通道, MODEM 就是用來實現(xiàn)數(shù)字信號和模擬信號相互轉(zhuǎn)換的設(shè)備。 MODEM 從發(fā)送方串行接收數(shù)據(jù),然后經(jīng)過調(diào)制,將數(shù)字信號轉(zhuǎn)換為模擬信號,最后通過電話網(wǎng)絡(luò)傳送到接收方,然后接收方的 MODEM 將電話線上信號解調(diào),將模擬信號轉(zhuǎn)換為數(shù)字信號,然后進入計算機通道。即 MODEM 實現(xiàn)了計算機數(shù)據(jù)與模擬電話線路適合傳輸?shù)哪M信號之間的相互轉(zhuǎn)換。 MODEM的分類和型號眾多,為了方便 Linux 操作系統(tǒng)設(shè)置,本次設(shè)計選用外置 56K MODEM。 MODEM的工作過程如圖 2 如示: 模擬信號 數(shù)字信號 數(shù)字信號 圖 2 MODEM數(shù)模轉(zhuǎn)換 AT 命令 和其它通信標準一樣, MODEM 通信也有其自己的一套 規(guī)則和標準。 Hayes 公司的 SmartMODEM 系列產(chǎn)品已成為 MODEM 的事實上的標準,而幾乎所有應(yīng)用于計算機通信的 MODEM 均號稱與 Hayes SmartMODEM 兼容。 所謂 Hayes 兼容 MODEM,主要是指它能識別并執(zhí)行稱為 AT 命令的某些命令和命令串。目前各廠家生產(chǎn)的 MODEM 除了可以執(zhí)行最基本的 Hayes 命令集外,還有自己特有的命令。 AT 命令的建立使得 DTE(Data Terminal Equipment,用于發(fā)送和接收數(shù)據(jù)的數(shù)據(jù)終端設(shè)備 )從以上雜條中解脫出來,振鈴檢測、載波檢測、速率選擇等等都可以 由 MODEM 來完成。此時 TXD 和 RXD 不僅僅是傳輸數(shù)據(jù),還傳送 AT 命令。 DTE 發(fā)送 AT 命令到 MODEM, MODEM 執(zhí)行后通過 RXD 返回結(jié)果給 DTE。這些命令和返回結(jié)果符合 RS232C 數(shù)據(jù)格式。 MODEM 由 AT 命令和幾個特定的 SDTE MODEM MODEM DTE 第 6 頁 共 24頁 寄存器的狀態(tài)確定 DTE 發(fā)出的是命令還是數(shù)據(jù)。 3 系統(tǒng)開發(fā)環(huán)境 系統(tǒng)開發(fā)環(huán)境 本系統(tǒng)采用的軟件工具有 : Windows 平臺虛擬機: 操作系統(tǒng) : Radhat 編輯器: VI 編譯器: gcc 20200222 函 數(shù)庫: glibc 系統(tǒng)頭文件: glibc_header gcc簡介 Linux 系統(tǒng)下的 gcc( GNU C Compiler)是 GNU 推出的功能強大、性能優(yōu)越的多平臺編譯器,是 GNU 的代表作品之一。 gcc 是可以在多種硬體平臺上編譯出可執(zhí)行程序的超級編譯器,其執(zhí)行效率與一般的編譯器相比平均效率要高20%~30%。 Gcc 編譯器能將 C、 C++語言源程序、匯 編 程序和目標程序編譯、連接成可執(zhí)行文件,如果沒有給出可執(zhí)行文件的名字, gcc 將生成一個名為 的文件。在 Linux 系統(tǒng)中,可執(zhí)行文件沒 有統(tǒng)一的后綴,系統(tǒng)從文件的屬性來區(qū)分可執(zhí)行文件和不可執(zhí)行文件。而 gcc 則通過后綴來區(qū)別輸入文件的類別 。 雖然 稱 gcc 是 C語言的編譯器,但使用 gcc 由 C語言源代碼文件生成可執(zhí)行文件的過程不僅僅是編譯的過程,而是要經(jīng)歷四個
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1