出版時間:2009-4 出版社:機械工業(yè)出版社 作者:王彤 頁數(shù):205
前言
C語言是廣泛應(yīng)用的一種程序設(shè)計語言,許多計算機控制的實時測控系統(tǒng)的軟件是由C語言實現(xiàn)的。C語言應(yīng)用在實時測控系統(tǒng)時,必然要涉及端口輸入/輸出控制、硬件中斷程序設(shè)計和軟件中斷程序設(shè)計。而且,實時測控系統(tǒng)程序設(shè)計還經(jīng)常遇到對一些常用芯片的控制,如串行口、并行口及A/D轉(zhuǎn)換器(模/數(shù)轉(zhuǎn)換器)、D/A轉(zhuǎn)換器(數(shù)/模轉(zhuǎn)換器)接口的編程等方面的問題。但是,現(xiàn)在C語言程序設(shè)計的課程和教材通常不涉及這方面的內(nèi)容,使許多學(xué)過C語言程序設(shè)計的理工科學(xué)生卻不會編寫控制硬件的程序。本書就是想要幫助讀者解決這樣一些問題。
內(nèi)容概要
本書由淺人深地從編程實踐的角度介紹了C語言在測量與控制領(lǐng)域應(yīng)用的基本方法。這些內(nèi)容通常是一般c語言程序設(shè)計書籍所不涉及,卻是測控領(lǐng)域工程技術(shù)人員需要掌握的。本書主要包括輸入/輸出端口的控制,硬件中斷程序設(shè)計,軟件中斷程序設(shè)計,精確定時程序設(shè)計,串口通信程序設(shè)計,曲線的繪制,并行接口的使用與步進電動機的控制,數(shù)據(jù)采集與處理程序設(shè)計,閉環(huán)控制系統(tǒng)程序設(shè)計等內(nèi)容。書中舉了大量的實例,程序簡單實用。由于編程涉及測控系統(tǒng)中的硬件設(shè)備,所以對一些常用芯片、器件、裝置的原理和使用方法進行了簡單的介紹。本書還介紹了數(shù)據(jù)采集與處理系統(tǒng)、計算機閉環(huán)控制系統(tǒng)的基本工作原理和設(shè)計方法?! ”緯€包括了實驗指導(dǎo)書的內(nèi)容。實驗內(nèi)容包括基本實驗和擴展實驗兩部分,以利于根據(jù)學(xué)生的情況因材施教?! ”緯勺鳛槔砉た茖I(yè)研究生或電類專業(yè)本科生的教材,授課40學(xué)時左右,實驗16學(xué)時。本書也可作為工程技術(shù)人員的一本實用性較強的參考書。
書籍目錄
前言第1章 緒論1.1 C語言的特點1.2 工業(yè)PC第2章 端口、內(nèi)存輸入/輸出與位運算2.1 端口輸入/輸出函數(shù)2.2 位運算2.2.1 按位與運算的應(yīng)用2.2.2 按位或運算的應(yīng)用2.2.3 按位異或運算的應(yīng)用2.2.4 按位非運算的應(yīng)用2.2.5 按位左移運算和按位右移運算的應(yīng)用2.3 位操作賦值運算2.4 內(nèi)存單元讀/寫函數(shù)第3章 硬件中斷程序的設(shè)計3.1 Intel86系列CPU實模式下的中斷系統(tǒng)3.1.1 實模式與保護模式的概念3.1.2 實模式下的中斷系統(tǒng)3.2 有關(guān)硬件中斷的幾個函數(shù)3.3 8259A中斷控制器3.3.1 8259A的結(jié)構(gòu)和原理3.3.2 8259A的編程3.3.3 8259A連接的硬件中斷源3.4 8254定時器/計數(shù)器3.4.1 8254的結(jié)構(gòu)3.4.2 8254的編程3.5 可屏蔽中斷響應(yīng)的大致過程3.6 實時中斷程序設(shè)計舉例3.7 定時中斷程序的另一種結(jié)構(gòu)3.8 CMOS實時鐘硬件中斷程序的設(shè)計3.8.1 實時鐘的工作原理3.8.2 CMOS.RAM單元的讀/寫3.8.3 實時鐘的中斷功能3.9 定時器中斷實驗第4章 數(shù)據(jù)的采集與存儲4.1 A/D轉(zhuǎn)換與D/A轉(zhuǎn)換4.1.1 A/D轉(zhuǎn)換4.1.2 D/A轉(zhuǎn)換4.1.3 連續(xù)信號與離散信號的頻譜4.1.4 被測信號與A/D量程的匹配4.2 接口的編碼與變換4.2.1 計算機內(nèi)機器數(shù)編碼的概念4.2.2 幾種常見定點數(shù)的編碼規(guī)則4.2.3 幾個接口編碼變換舉例4.2.4 分數(shù)二進制碼與分數(shù)補碼4.2.5 格雷碼及其變換4.3 計算機的總線與功能擴展板卡及模塊4.3.1 總線的概念4.3.2 總線的標準4.3.3 ISA總線及擴展板卡4.3.4 PCI局部總線及擴展板卡4.3.5 uSB串行總線及擴展板模塊4.4 HY一1232A/D、D/A接口板4.4.1 HY一1232的主要性能指標4.4.2 HY一1232的基地址4.4.3 HY一1232的板內(nèi)地址分配及寄存器描述4.4.4 HY一1232的A/D和D/A編碼4.4.5 HY一1232的A/D、D/A程舉例4.5 用位字段結(jié)構(gòu)處理二進制位字段數(shù)據(jù)4.5.1 結(jié)構(gòu)4.5.2 位字段結(jié)構(gòu)4.6 用結(jié)構(gòu)與聯(lián)合的嵌套處理字節(jié)(BYTE)與字(WORD)數(shù)據(jù)4.6.1 聯(lián)合4.6.2 結(jié)構(gòu)與聯(lián)合的嵌套4.7 數(shù)據(jù)采集程序及A/D溫度漂移的補償4.7.2 A/D通道溫度漂移的補償4.8 數(shù)據(jù)采集時的在線濾波4.9 磁盤數(shù)據(jù)文件的建立4.9.1 C語言文件概述4.9.2 文件的打開與關(guān)閉4.9.3 文件的讀/寫4.10 模擬量輸入/輸出與磁盤數(shù)據(jù)文件實驗第5章 數(shù)據(jù)的處理與繪圖5.1 測量數(shù)據(jù)的預(yù)處理5.1.1 標度變換5.1.2 非線性特性的修正5.1.3 去除奇異項5.1.4 零均值化5.1.5 數(shù)據(jù)平滑5.1.6 趨勢項的提取5.2 曲線的繪制5.2.1 概述5.2.2 圖形系統(tǒng)的初始化5.2.3 畫曲線的幾個函數(shù)5.2.4 圖形方式下的字符輸出5.2.5 曲線的動畫效果5.2.6 實時曲線的繪制5.2.7 TC屏幕圖形的截取5.3 頻譜分析與快速傅里葉變換5.3.1 傅里葉變換的概念5.3.2 快速傅里葉變換子程序的使用5.3.3 快速傅里葉變換的應(yīng)用5.4 相關(guān)分析5.4.1 自相關(guān)函數(shù)與互相關(guān)函數(shù)5.4.2 相關(guān)系數(shù)函數(shù)5.4.3 相關(guān)函數(shù)的應(yīng)用5.5 數(shù)據(jù)采集與處理系統(tǒng)舉例5.6 數(shù)據(jù)處理與繪圖實驗第6章 計算機的串行通信6.1 概述6.1.1 并行通信和串行通信6.1.2 同步通信和異步通信6.1.3 串行通信的傳送制式、聯(lián)絡(luò)方式、通信速率及調(diào)制解調(diào)的概念6.2 串行通信的接口標準6.2.1 RS一232C標準6.2.2 RS-485標準6.3 Intel8250可編程異步串行接口芯片6.3.1 8250的結(jié)構(gòu)6.3.2 8250的寄存器6.4 TurboC的串口通信函數(shù)6.5 近距離無聯(lián)絡(luò)線簡單三線通信6.6 串口硬件中斷方式通信6.6.1 中斷方式通信所涉及的一些寄存器6.6.2 中斷方式通信的程序舉例6.7 串口通信實驗第7章 并行接口的使用與步進電動機的控制7.1 并行I/0接口概述7.2 8255A并行接口芯片簡介7.2.1 8255A的結(jié)構(gòu)7.2.2 8255A的工作方式7.2.3 8255A的控制字及初始化7.2.4 8255A在PC系列微機中的應(yīng)用7.2.5 揚聲器發(fā)聲程序7.3 HY一6160數(shù)字量輸入/輸出接口板7.4 打印機的接口7.4.1 打印機的并行接口標準7.4.2 打印機的適配器7.5 步進電動機及驅(qū)動器7.5.1 步進電動機概述7.5.2 步進電動機與配套的驅(qū)動器7.6 步進電動機的位置與速度控制7.6.1 用打印機口控制步進電動機7.6.2 用HY-6160接口板控制步進電動機7.6.3 步進電動機的加速與減速控制7.7 并行接口的使用與步進電動機控制實驗第8章 閉環(huán)控制系統(tǒng)實時控制程序的設(shè)計8.1 閉環(huán)負反饋控制系統(tǒng)的構(gòu)成8.2 控制系統(tǒng)的性能指標8.2.1 系統(tǒng)的時域性能指標8.2.2 系統(tǒng)的頻域性能指標8.2.3 時域指標與頻域指標之間的關(guān)系8.3 控制系統(tǒng)的校正8.3.1 系統(tǒng)綜合校正的概念8.3.2 基本控制規(guī)律8.4 模擬化設(shè)計方法的概念和步驟8.5 離散化的原則與方法8.6 數(shù)字控制器的模擬化設(shè)計舉例8.7 數(shù)字PID控制程序的設(shè)計8.7.1 數(shù)字PID控制算法的實現(xiàn)8.7.2 數(shù)字PID控制算法的改進8.8 計算機控制系統(tǒng)數(shù)字校正實驗第9章 軟件中斷與偽變量的使用9.1 軟件中斷的概念9.2 DOS功能調(diào)用9.2.1 DOS功能調(diào)用函數(shù)bdos9.2.2 通用DOS功能調(diào)用函數(shù)intdos9.2.3 通用DOS功能調(diào)用函數(shù)intdosx9.3 通用軟件接口函數(shù)int86()和int86x()9.4 偽變量與產(chǎn)生軟中斷函數(shù)geninterrupt9.4.1 偽變量的概念9.4.2 偽變量的使用9.4.3 產(chǎn)生軟中斷函數(shù)geninterrupt9.4.4 日時鐘與實時鐘對表程序9.4.5 實時鐘報警中斷的開發(fā)附錄快速離散傅里葉變換程序mt2.C清單參考文獻
章節(jié)摘錄
第1章緒論 1.1C語言的特點 C語言是目前使用最廣泛的一種程序設(shè)計語言,也是測量、控制和通信等領(lǐng)域中最常用的一種程序設(shè)計語言?! 語言有如下一些特點: 1)語言表達能力強。C語言表達能力強而靈活,它既有面向硬件和系統(tǒng),像匯編語言那樣可以直接訪問硬件的功能,又有高級語言面向用戶,容易理解,便于閱讀和書寫的優(yōu)點?! ?)模塊化能力強。C語言程序由函數(shù)形式組成,十分有利于把整個程序分割成若干個功能相對獨立的程序模塊,并且為程序模塊之間相互調(diào)用和參數(shù)傳遞提供了方便。 3)數(shù)據(jù)類型豐富。C語言具有現(xiàn)代語言的各種數(shù)據(jù)類型,基本的數(shù)據(jù)類型有字符型(Char)、整型(int)、長整型(10ng)、浮點型(float)、雙精度型(double),還有無符號字符型(unsignedChar)、無符號整型(unsignedint)、無符號長整型(unsignedlong)等。在這些基礎(chǔ)上可以產(chǎn)生各種構(gòu)造類型,如數(shù)組、指針、結(jié)構(gòu)、聯(lián)合等。利用這些數(shù)據(jù)類型可以實現(xiàn)復(fù)雜的數(shù)據(jù)結(jié)構(gòu),如鏈表、樹等。 4)運算符豐富。C語言的運算符包括的范圍很廣,除了包括一般高級語言中的算術(shù)運算符、邏輯運算符、關(guān)系運算符之外,還具有位運算符、指針運算符等。所以C語言的數(shù)據(jù)處理能力強,具有其他高級語言難以實現(xiàn)的一些功能?! ?)可移植性好。C語言本身不依賴于機器硬件,在使用不同CPU的計算機上,C語言程序差別不是很大。這一點與匯編語言不同,匯編語言是一種面向機器的低級語言,匯編語言的許多指令是針對CPU的結(jié)構(gòu)而設(shè)計的。因而,不同CPU的匯編語言指令差別較大,移植比較麻煩。
編輯推薦
《C語言在測量和控制中的應(yīng)用》注意軟件與硬件結(jié)合、理論與實踐結(jié)合,由淺入深地講解了C語言在測控領(lǐng)域應(yīng)用的方法和特點。書中的計算機采用使用數(shù)量最多的PC系列微機,并盡量利用PC本身的硬件資源,如8259A中斷控制器、8254定時器/計數(shù)器、打印機接口、串行口等。編程主要采用使用人數(shù)最多的TurboC2.0版本,使《C語言在測量和控制中的應(yīng)用》內(nèi)容的通用性更好。這樣的內(nèi)容安排,可以使讀者動手實踐的條件比較容易實現(xiàn)。
圖書封面
評論、評分、閱讀與下載