注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)C/C++及其相關(guān)Visual C++/Turbo C串口通信編程實(shí)踐

Visual C++/Turbo C串口通信編程實(shí)踐

Visual C++/Turbo C串口通信編程實(shí)踐

定 價(jià):¥55.00

作 者: 龔建偉,熊光明編著
出版社: 電子工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: VC++

ISBN: 9787121002533 出版時(shí)間: 2004-10-01 包裝: 膠版紙
開(kāi)本: 26cm 頁(yè)數(shù): 378 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  本書(shū)從編程實(shí)踐的角度詳細(xì)介紹了Windows環(huán)境下和DOS環(huán)境下的串口通信的基本方法,并根據(jù)當(dāng)前串口與網(wǎng)絡(luò)結(jié)合發(fā)展的趨勢(shì),介紹了串口與網(wǎng)絡(luò)TCP/IP、遠(yuǎn)程控制與監(jiān)測(cè)相結(jié)合的一些解決方案和編程要點(diǎn)。由于編程步驟詳盡,初學(xué)VisualC++/C(甚至是以前完全沒(méi)有接觸過(guò)VisualC++)的讀者也能很快編寫(xiě)出VisualC++的串口通信程序。本書(shū)配光盤(pán),書(shū)中實(shí)例源程序和相關(guān)資料可在對(duì)應(yīng)章節(jié)的文件夾中找到。本書(shū)是從事串口及網(wǎng)絡(luò)通信的技術(shù)人員和學(xué)習(xí)者的極佳參考資料,也可以作為數(shù)據(jù)通信課程的輔助教材。前言本書(shū)內(nèi)容本書(shū)從編程實(shí)踐的角度詳細(xì)介紹了Windows環(huán)境下和DOS環(huán)境下的串口通信的基本方法,并根據(jù)當(dāng)前串口與網(wǎng)絡(luò)結(jié)合的發(fā)展趨勢(shì),介紹了串口與網(wǎng)絡(luò)TCP/IP、遠(yuǎn)程控制與監(jiān)測(cè)相結(jié)合的一些解決方案和編程要點(diǎn)。本書(shū)共分三部分,第一部分是編程實(shí)例,包括前十章,從體驗(yàn)輕松的串口編程開(kāi)始,在有了一定的感性知識(shí)后,由淺入深地介紹了各種編程方法,并將一些串口通信的基礎(chǔ)知識(shí)融入其中,使讀者不知不覺(jué)中掌握了許多基本概念??紤]到當(dāng)前DOS環(huán)境下的串口編程還應(yīng)用很廣,本書(shū)也深入地介紹了DOS環(huán)境下TurboC的編程。串口與網(wǎng)絡(luò)通信總是伴隨著數(shù)據(jù)包的處理和存儲(chǔ),因此本書(shū)也介紹了各種協(xié)議的數(shù)據(jù)通信包處理實(shí)例。有不少編程知識(shí)在Windows和DOS環(huán)境下是通用的。串口通信與網(wǎng)絡(luò)通信相結(jié)合是當(dāng)前串口通信的發(fā)展趨勢(shì),所以本書(shū)以具體產(chǎn)品實(shí)例介紹了串口網(wǎng)絡(luò)化的解決方案。第二部分為第11章,匯集了常用串行通信的基本概念和規(guī)范,介紹了各種接線匹配方法,將第一部分中分散的基礎(chǔ)知識(shí)進(jìn)行了總結(jié)。第三部分是一些較深層次技術(shù)問(wèn)題的探討,其中對(duì)不占用串口資源的串口數(shù)據(jù)捕捉給出了實(shí)例程序,并簡(jiǎn)要介紹了虛擬串口的應(yīng)用,并對(duì)這些問(wèn)題的相關(guān)知識(shí)進(jìn)行了必要的說(shuō)明。附錄介紹了TurboC3.0/2.0的用法,列出了常用的ASCII碼表,供通信編程的較高層次學(xué)習(xí)者使用。本書(shū)光盤(pán)中收錄了書(shū)中可獨(dú)立運(yùn)行的源代碼和相關(guān)程序資料,方便讀者學(xué)習(xí)。本書(shū)特色在本書(shū)寫(xiě)作中,作者有意識(shí)地重點(diǎn)介紹了一些應(yīng)用簡(jiǎn)單但功能很強(qiáng)的類(lèi),如果讀者不想花很多時(shí)間了解串口通信的底層,而急于在短時(shí)間內(nèi)(比如1個(gè)小時(shí))完成編程任務(wù),不管在Windows或DOS環(huán)境下,您應(yīng)用這些類(lèi)來(lái)解決問(wèn)題無(wú)疑是最佳的選擇。本書(shū)讀者對(duì)象為從事串口及網(wǎng)絡(luò)通信的技術(shù)人員和學(xué)習(xí)者,由于編程步驟詳盡,初學(xué)VisualC++/C(甚至是以前完全沒(méi)有接觸過(guò)VisualC++)的讀者也能很快編寫(xiě)出VisualC++的串口通信程序,同時(shí),本書(shū)也可以作為數(shù)據(jù)通信課程的輔助教材。串口調(diào)試助手是作者自己編制的軟件,是一個(gè)工程技術(shù)人員和學(xué)習(xí)者廣泛應(yīng)用的串口調(diào)試工具,本書(shū)中放入了該軟件的源代碼和詳細(xì)編程步驟。最后要強(qiáng)調(diào)的是:數(shù)據(jù)通信技術(shù)無(wú)論是串行通信還是網(wǎng)絡(luò)通信,其本質(zhì)內(nèi)容都是類(lèi)似的,即數(shù)據(jù)處理及用戶(hù)層的通信協(xié)議是一致的;學(xué)習(xí)過(guò)程中經(jīng)常能做到觸類(lèi)旁通,這一點(diǎn),我們?cè)谕ㄐ啪幊讨幸⒁怏w會(huì)。致謝除署名作者外,本書(shū)第10章的10.1節(jié)完全來(lái)自科腦工作室,還摘錄了一些參考文獻(xiàn)的內(nèi)容,同時(shí)還得到了MOXA公司(http://www.moxa.com.cn)的串口聯(lián)網(wǎng)產(chǎn)品信息和技術(shù)支持,在此謹(jǐn)表謝意。技術(shù)支持作者近幾年在自己的日訪問(wèn)量近千次的個(gè)人技術(shù)主頁(yè)(http://www.gjwtech.com)中收到很多朋友的問(wèn)題,部分典型的問(wèn)題可以在本書(shū)中找到答案。歡迎讀者到作者個(gè)人技術(shù)主頁(yè)上進(jìn)行交流。作者2004.07于北京

作者簡(jiǎn)介

  龔建偉,工學(xué)博士,目前在北京理工大學(xué)從事科研究與教學(xué)工作。主要從事計(jì)算機(jī)控制技術(shù)、順人和智慧能車(chē)輛技術(shù)、數(shù)據(jù)通信技術(shù)的研究。

圖書(shū)目錄

第1章  輕松體驗(yàn)串口通信編程與調(diào)試 1    1.1  使用串口調(diào)試助手來(lái)體驗(yàn)串口通信 1    1.2  體驗(yàn)Windows環(huán)境下的Visual C++串口通信編程 4    1.3  體驗(yàn)DOS環(huán)境下Turbo C串口通信編程 12    第2章  多線程串口編程工具CSerialPort類(lèi) 16    2.1  CSerialPort類(lèi)的功能及成員函數(shù)介紹 16    2.2  應(yīng)用CSerialPort類(lèi)編制基于對(duì)話(huà)框的應(yīng)用程序 30    2.3  應(yīng)用CSerialPort類(lèi)編制基于單文檔的應(yīng)用程序 35    2.4  對(duì)CSerialPort類(lèi)的改進(jìn) 40    2.4.1  改進(jìn)一:ASCII文本和二進(jìn)制數(shù)據(jù)發(fā)送方式兼容 40    2.4.2  改進(jìn)二:也許能解決內(nèi)存泄漏 43    2.4.3  改進(jìn)三:徹底關(guān)閉串口,釋放串口資源 44    第3章  控件MSComm串口編程 46    3.1  MSComm控件介紹 46    3.1.1  VC中應(yīng)用MSComm控件編程步驟 46    3.1.2  MSComm控件串行通信處理方式 47    3.1.3  MSComm 控件的屬性說(shuō)明 48    3.1.4  MSComm控件錯(cuò)誤信息 55    3.2  使用MSComm控件的幾個(gè)疑難問(wèn)題 56    3.2.1  使用VARIANT 和SAFEARRAY 數(shù)據(jù)類(lèi)型從串口讀寫(xiě)數(shù)據(jù) 56    3.2.2  MSComm控件能離開(kāi)對(duì)話(huà)框獨(dú)立存在嗎 59    3.2.3  如何發(fā)送接收ASCII值為0和大于128的字符 60    3.2.4  在同一程序中用MSComm控件控制多個(gè)串口的具體操作方法 62    3.2.5  解決使用控件編程時(shí)程序占用的內(nèi)存會(huì)不斷增大的問(wèn)題 62    3.2.6  在MSComm控件串口編程時(shí)遇到的其他問(wèn)題 63    3.3  在基于單文檔(SDI)程序中應(yīng)用MSComm控件 63    3.4  應(yīng)用MSComm控件控制多個(gè)串口實(shí)例 69    3.5  串口與MODEM撥號(hào)應(yīng)用簡(jiǎn)例 76    3.5.1  創(chuàng)建工程 76    3.5.2  代碼分析 78    3.5.3  應(yīng)用 85    第4章  Windows API串口編程 87    4.1  Windows API串口編程概述 87    4.2  API串口編程中用到的結(jié)構(gòu)及相關(guān)概念說(shuō)明 89    4.2.1  DCB(Device Control Block)結(jié)構(gòu) 89    4.2.2  超時(shí)設(shè)置COMMTIMEOUTS結(jié)構(gòu) 92    4.2.3  OVERLAPPED異步I/O重疊結(jié)構(gòu) 94    4.2.4 通信錯(cuò)誤與通信設(shè)備狀態(tài) 95    4.2.5  串行通信事件 96    4.3  Windows API串行通信函數(shù) 97    4.4  Win32 API串口通信編程的一般流程和特殊實(shí)例 116    4.4.1  Win32 API串口通信編程的一般流程 116    4.4.2  用查詢(xún)方式讀串口 116    4.4.3  同步I/O讀寫(xiě)數(shù)據(jù) 117    4.4.4  關(guān)于流控制的設(shè)置問(wèn)題 118    4.5  CSerialPort類(lèi)中的API函數(shù)編程應(yīng)用剖析 119    4.6  Win32 API串口編程TTY(虛擬終端)實(shí)例 128    4.6.1  建立程序工程 128    4.6.2  建立串口設(shè)置對(duì)話(huà)框 129    4.6.3  編寫(xiě)CTermDoc類(lèi)的相關(guān)代碼 132    4.6.4  小結(jié) 141    4.6.5 在CTermView類(lèi)中字添加符鍵入處理代碼與串口接收處理代碼 142    第5章  串口調(diào)試助手V2.2編程 147    5.1  建立SCOMM程序工程實(shí)現(xiàn)界面功能 147    5.2  串口的初始化及關(guān)閉 150    5.3  串口數(shù)據(jù)的發(fā)送與接收及十六進(jìn)制數(shù)據(jù)的處理 151    5.3.1  十六進(jìn)數(shù)據(jù)發(fā)送處理 152    5.3.2  手動(dòng)發(fā)送處理 152    5.3.3  自動(dòng)發(fā)送處理 153    5.3.4  接收處理及十六進(jìn)制顯示 154    5.4  其他輔助功能的實(shí)現(xiàn) 156    5.4.1  接收數(shù)據(jù)的文件保存 156    5.4.2  實(shí)現(xiàn)小文件發(fā)送 158    5.4.3  圖釘按鈕功能使程序能浮在最上層 161    5.4.4  對(duì)話(huà)框動(dòng)畫(huà)圖標(biāo)的實(shí)現(xiàn) 162    5.4.5  超鏈接功能的實(shí)現(xiàn) 164    5.4.6  如何打開(kāi)幫助網(wǎng)頁(yè)文件 164    第6章  DOS環(huán)境下的Turbo C串口編程及通用實(shí)例GSerial類(lèi) 168    6.1  PC機(jī)異步通信適配器8250及其編程操作 169    6.1.1  INS8250內(nèi)部寄存器及其選擇方式 169    6.1.2  波特率設(shè)置 169    6.1.3  數(shù)據(jù)位、奇偶校驗(yàn)、停止位等數(shù)據(jù)格式設(shè)置 170    6.1.4  查詢(xún)I/O方式相關(guān)設(shè)置 171    6.1.5  中斷I/O通信方式相關(guān)設(shè)置 171    6.1.6  MODEM寄存器 172    6.2  COMRXTX程序?qū)嵗?nbsp;173    6.3  通用實(shí)例程序GSerial類(lèi) 175    6.4  用GSerial類(lèi)控制多串口 186    6.5  多串口編程PC機(jī)高號(hào)中斷8259A可編程中斷控制器的控制 195    第7章  串口通信用戶(hù)層協(xié)議的編制與數(shù)據(jù)處理方法 197    7.1  通信協(xié)議的編制 197    7.1.1  為什么要編制用戶(hù)通信協(xié)議 197    7.1.2  串口通信中用戶(hù)層協(xié)議編制原則 199    7.1.3  在串口通信中幾種常用的用戶(hù)層協(xié)議 200    7.2  串口通信數(shù)據(jù)包處理方法編程實(shí)例 202    7.2.1  編程任務(wù) 203    7.2.2  編程步驟 203    7.2.3  程序測(cè)試 216    第8章  單片機(jī)串口通信 218    8.1  單片機(jī)串口硬件系統(tǒng)及C51程序開(kāi)發(fā) 218    8.1.1  較典型的單片機(jī)硬件系統(tǒng)實(shí)例 218    8.1.2  C51語(yǔ)言及程序簡(jiǎn)介 220    8.1.3  開(kāi)發(fā)C51程序的利器Keil C51 uVision2及串口程序仿真 221    8.2  C51單片機(jī)串口通信程序?qū)嵗?nbsp;226    8.2.1  實(shí)例一 226    8.2.2  實(shí)例二 227    第9章  串口與網(wǎng)絡(luò)結(jié)合的解決方案及編程 230    9.1  串口與網(wǎng)絡(luò)結(jié)合的硬件解決方案 230    9.2典型串口與聯(lián)網(wǎng)的設(shè)備 231    9.2.1  NPort5400系列產(chǎn)品的特點(diǎn) 231    9.2.2  NPort 5400系列產(chǎn)品的典型應(yīng)用介紹 233    9.2.3  NPort5400系列產(chǎn)品的設(shè)置與編程測(cè)試 235    9.3  與Access數(shù)據(jù)庫(kù)結(jié)合的串口通信實(shí)例 237    9.3.1  微機(jī)網(wǎng)絡(luò)檢測(cè)系統(tǒng)說(shuō)明 237    9.3.2  創(chuàng)建ODBC數(shù)據(jù)源 238    9.3.3  創(chuàng)建工程 239    9.3.4  程序簡(jiǎn)介 244    9.4  與WinSock結(jié)合的串口通信實(shí)例 246    9.4.1 客戶(hù)端應(yīng)用程序 247    9.4.2  服務(wù)器應(yīng)用程序 252    9.5  在已經(jīng)編好的串口通信程序中加入網(wǎng)絡(luò)通信功能 260    9.5.1參照MFC AppWizard創(chuàng)建WinSockets程序 261    9.5.2  利用Windows Sockets API和第三方提供的類(lèi)進(jìn)行編程 262    9.6  串口通信用于遙控操作簡(jiǎn)例 262    第10章  計(jì)算機(jī)串口與其他設(shè)備通信編程實(shí)例 266    10.1通過(guò)串口收發(fā)短消息 266    10.1.1  SMS編碼規(guī)范及編碼與解碼例程 266    10.1.2  AT命令收發(fā)短消息實(shí)例 273    10.1.3  “實(shí)時(shí)”接收短消息的方法 281    10.1.4  用串口收發(fā)SMS短信編程的一些討論 283    10.2  計(jì)算機(jī)與Rabbit 2000嵌入式系統(tǒng)通信編程實(shí)例 286    10.2.1  Rabbit 2000微處理器介紹 286    10.2.2  動(dòng)態(tài)C(Dynamic C)語(yǔ)言介紹 287    10.2.3  某車(chē)載無(wú)線調(diào)度系統(tǒng)實(shí)例介紹 288    10.3  計(jì)算機(jī)與PLC通信程序?qū)嵗?nbsp;294    10.4  MATLAB環(huán)境串口編程通信實(shí)例 295    10.4.1  MATLAB串口類(lèi)Serial應(yīng)用 295    10.4.2  通過(guò)串口使MATLAB Simulink與下位機(jī)通訊進(jìn)行控制 299    10.4.3  xPC目標(biāo)環(huán)境下串口通信實(shí)現(xiàn) 299    第11章  串口通信基本概念及標(biāo)準(zhǔn) 302    11.1  串口通信基本概念 302    11.1.1  串行通信概述 302    11.1.2  單工、半雙工和全雙工的定義 305    11.1.3  同步傳送與異步傳送 306    11.1.4  串行通信協(xié)議 306    11.2  RS-232-C串口標(biāo)準(zhǔn) 309    11.2.1  RS-232-C標(biāo)準(zhǔn) 309    11.2.2  RS-232-C串行通信接線實(shí)例 312    11.3  RS-422/485串口標(biāo)準(zhǔn) 314    11.3.1  概述 314    11.3.2  RS-422與RS-485串行接口標(biāo)準(zhǔn) 315    11.3.3  RS-422與RS-485的網(wǎng)絡(luò)安裝注意要點(diǎn) 317    11.3.4  RS-232、RS422、RS485電氣參數(shù)對(duì)比 318    11.4  串口調(diào)試注意事項(xiàng) 318    11.5  常用數(shù)據(jù)校驗(yàn)法 318    11.5.1  奇偶校驗(yàn) 318    11.5.2  循環(huán)冗余碼校驗(yàn) 319    11.6  串口連接和TCP/IP連接對(duì)比 320    11.7  現(xiàn)場(chǎng)總線與RS-232、RS-485的本質(zhì)區(qū)別 320    11.8  MODEM通信技術(shù) 320    11.8.1  MODEM的基本工作原理 320    11.8.2  MODEM的功能 322    11.8.3  MODEM的分類(lèi) 322    11.8.4  MODEM的安裝 324    11.8.5  MODEM V.92標(biāo)準(zhǔn)介紹 326    11.8.6  MODEM的速度 327    11.8.7  MODEM優(yōu)化方法 328    11.8.8  MODEM命令/AT命令 329    第12章 不占用串口的串口數(shù)據(jù)捕捉 338    12.1  驅(qū)動(dòng)程序的基本概念:VxD與WDM 338    12.1.1  虛擬設(shè)備驅(qū)動(dòng)程序VxD 338    12.1.2  Win32驅(qū)動(dòng)程序模型WDM 340    12.1.3  在不同操作系統(tǒng)下選用哪種驅(qū)動(dòng)程序模式 341    12.2  VxD示例程序介紹——VToolsD中的CommHook 341    12.3  串口數(shù)據(jù)捕捉實(shí)例程序 351    12.3.1  編程任務(wù) 351    12.3.2  編程步驟 351    12.4 虛擬串口簡(jiǎn)介 364    附錄A  Turbo C說(shuō)明 366    附錄B  ASCII碼表 376

本目錄推薦

掃描二維碼
Copyright ? 讀書(shū)網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)