三次B樣條曲線源代碼,C語(yǔ)言編寫(xiě)的三次B樣條曲線源代碼,希望大家喜歡。
標(biāo)簽:
上傳時(shí)間: 2013-07-13
上傳用戶(hù):chengli008
心音信號(hào)是人體最重要的生理信號(hào)之一,包含心臟各個(gè)部分如心房、心室、大血管、心血管及各個(gè)瓣膜功能狀態(tài)的大量生理病理信息。心音信號(hào)分析與識(shí)別是了解心臟和血管狀態(tài)的一種不可缺少的手段。本文針對(duì)目前該研究領(lǐng)域中存在的分析方法問(wèn)題和分類(lèi)識(shí)別技術(shù)難點(diǎn)展開(kāi)了深入的研究,內(nèi)容涉及心音構(gòu)成的分析、心音信號(hào)特征向量的提取、正常心音信號(hào)(NM)和房顫(AF)、主動(dòng)脈回流(AR)、主動(dòng)脈狹窄(AS)、二尖瓣回流(MR)4種心臟雜音信號(hào)的分類(lèi)識(shí)別。本文的工作內(nèi)容包括以下5個(gè)方面: a)心音信號(hào)采集與預(yù)處理。本文采用自行研制的帶有錄音機(jī)功能的聽(tīng)診器實(shí)現(xiàn)對(duì)心音信號(hào)的采集。通過(guò)對(duì)心音信號(hào)噪聲分析,選用小波降噪作為心音信號(hào)的濾波方法。根據(jù)實(shí)驗(yàn)分析,選擇Donoho閾值函數(shù)結(jié)合多級(jí)閾值的方法作為心音信號(hào)預(yù)處理方案。 b)心音信號(hào)時(shí)頻分析方法。文中采用5種時(shí)頻分析方法分別對(duì)心音信號(hào)進(jìn)行了時(shí)頻譜特性分析,結(jié)果表明:不同的時(shí)頻分析方法與待分析心音信號(hào)的特性有密切關(guān)系,即需要在小的交叉項(xiàng)干擾與高的時(shí)頻分辨率之間作綜合的考慮。鑒于此,本文提出了一種自適應(yīng)錐形核時(shí)頻(ATF)分析方法,通過(guò)實(shí)驗(yàn)驗(yàn)證該分布能較好地反映心音信號(hào)的時(shí)頻結(jié)構(gòu),其性能優(yōu)于一般錐形核分布(CKD)以及Choi-Williams分布(CWD)、譜圖(SPEC)等固定核時(shí)頻分析方法,從而選擇自應(yīng)錐形核時(shí)頻分析方法進(jìn)行心音信號(hào)分析。 c)心音信號(hào)特征向量提取。根據(jù)對(duì)3M Littmann() Stethoscopes[31]數(shù)據(jù)庫(kù)中標(biāo)準(zhǔn)心音信號(hào)的時(shí)頻分析結(jié)果,提取8組特征數(shù)據(jù),通過(guò)Fihser降維處理方法提取出了實(shí)現(xiàn)分類(lèi)可視化,且最易于分類(lèi)的心音信號(hào)的2維特征向量,作為心音信號(hào)分類(lèi)的特征向量。 d)心音信號(hào)分類(lèi)方法。根據(jù)心音信號(hào)特征向量組成的散點(diǎn)圖,研究了支持向量機(jī)核函數(shù)、多分類(lèi)支持向量機(jī)的選取方法,同時(shí),基于分類(lèi)的目的 性和可信性,本文提出以分類(lèi)精度最大為判斷準(zhǔn)則的核函數(shù)參數(shù)與松弛變量的優(yōu)化方法,建立了心音信號(hào)分類(lèi)的支持向量機(jī)模型,選取標(biāo)準(zhǔn)數(shù)據(jù)庫(kù)中NM、AF、AR、AS、MR每類(lèi)心音信號(hào)的80組2維特征向量中每類(lèi)60組數(shù)據(jù)作為支持向量機(jī)的學(xué)習(xí)樣本,對(duì)余下的每類(lèi)20組數(shù)據(jù)進(jìn)行測(cè)試,得到每類(lèi)的分類(lèi)精度(Ar)均為100%,同時(shí)對(duì)臨床上采集的與上述4種同類(lèi)心臟雜音信號(hào)和正常心音信號(hào)中每類(lèi)24個(gè)心動(dòng)周期進(jìn)行分類(lèi)實(shí)測(cè),分類(lèi)精度分別為:NM、AF、MR的分類(lèi)精度均為100%,而AR、AS均為95.83%,驗(yàn)證了該方法的分類(lèi)有效性。 e)心音信號(hào)分析與識(shí)別的軟件系統(tǒng)。本文以MATLAB語(yǔ)言的可視化功能實(shí)現(xiàn)了心音信號(hào)分析與識(shí)別的軟件運(yùn)行平臺(tái)構(gòu)建,可完成對(duì)心音信號(hào)的讀取、預(yù)處理,繪制時(shí)-頻、能量特性的三維圖及兩維等高線圖;同時(shí),利用MATLAB與EXCEL的動(dòng)態(tài)鏈接,實(shí)現(xiàn)對(duì)心音信號(hào)分析數(shù)據(jù)的存儲(chǔ)以及統(tǒng)計(jì)功能;最后,通過(guò)對(duì)心音信號(hào)2維特征向量的分析,實(shí)現(xiàn)心音信號(hào)的自動(dòng)識(shí)別功能。 本文的研究特色主要體現(xiàn)在心音信號(hào)特征向量提取的方法以及多分類(lèi)支持向量機(jī)模型的建立兩方面。 綜上所述,本文從理論與實(shí)踐兩方面對(duì)心音信號(hào)進(jìn)行了深入的研究,主要是采用自適應(yīng)錐形核時(shí)頻分析方法提取心音信號(hào)特征向量,根據(jù)心音信號(hào)特征向量組成的散點(diǎn)圖,建立心音信號(hào)分類(lèi)的支持向量機(jī)模型,并對(duì)正常心音信號(hào)和4種心臟雜音信號(hào)進(jìn)行了分類(lèi)研究,取得了較為滿意的分類(lèi)結(jié)果,但由于用于分類(lèi)的心臟雜音信號(hào)種類(lèi)及數(shù)據(jù)量尚不足,因此,今后的工作重點(diǎn)是采集更多種類(lèi)的心臟雜音信號(hào),進(jìn)一步提高心音信號(hào)分類(lèi)精度,使本文研究成果能最終應(yīng)用于臨床心臟量化聽(tīng)診。 關(guān)鍵詞:心音信號(hào),小波降噪,非平穩(wěn)信號(hào),心臟雜音,信號(hào)處理,時(shí)頻分析,自適應(yīng),支持向量機(jī)
上傳時(shí)間: 2013-04-24
上傳用戶(hù):weixiao99
超聲理論與技術(shù)的快速發(fā)展,使超聲設(shè)備不斷更新,超聲檢查已成為預(yù)測(cè)和評(píng)價(jià)疾病及其治療結(jié)果不可缺少的重要方法。超聲診斷技術(shù)不僅具有安全、方便、無(wú)損、廉價(jià)等優(yōu)點(diǎn),其優(yōu)越性還在于它選用診斷參數(shù)的多樣性及其在工程上實(shí)現(xiàn)的靈活性。 全數(shù)字B超診斷儀基于嵌入式ARM9+FPGA硬件平臺(tái)、LINUX嵌入式操作系統(tǒng),是一種新型的、操作方便的、技術(shù)含量高的機(jī)型。它具有現(xiàn)有黑白B超的基本功能,能夠?qū)Τ暬夭〝?shù)據(jù)進(jìn)行靈活的處理,從而使操作更加方便,圖象質(zhì)量進(jìn)一步提高,并為遠(yuǎn)程醫(yī)療、圖像存儲(chǔ)、拷貝等打下基礎(chǔ),是一種很有發(fā)展前景、未來(lái)市場(chǎng)的主打產(chǎn)品。全數(shù)字B型超聲診斷儀的基本技術(shù)特點(diǎn)是用數(shù)字硬件電路來(lái)實(shí)現(xiàn)數(shù)據(jù)量極其龐大的超聲信息的實(shí)時(shí)處理,它的實(shí)現(xiàn)主要倚重于FPGA技術(shù)。現(xiàn)在FPGA已經(jīng)成為多種數(shù)字信號(hào)處理(DSP)應(yīng)用的強(qiáng)有力解決方案。硬件和軟件設(shè)計(jì)者可以利用可編程邏輯開(kāi)發(fā)各種DSP應(yīng)用解決方案。可編程解決方案可以更好地適應(yīng)快速變化的標(biāo)準(zhǔn)、協(xié)議和性能需求。 本論文首先闡述了醫(yī)療儀器發(fā)展現(xiàn)狀和嵌入式計(jì)算機(jī)體系結(jié)構(gòu)及發(fā)展?fàn)顩r,提出了課題研究?jī)?nèi)容和目標(biāo)。然后從B超診斷原理及全數(shù)字B超診斷儀設(shè)計(jì)入手深入分析了B型超聲診斷儀的系統(tǒng)的硬件體系機(jī)構(gòu)。對(duì)系統(tǒng)的總體框架和ARM模塊設(shè)計(jì)做了描述后,接著分析了超聲信號(hào)進(jìn)行數(shù)字化處理的各個(gè)子模塊、可編程邏輯器件的結(jié)構(gòu)特點(diǎn)、編程原理、設(shè)計(jì)流程以及ARM處理模塊和FPGA模塊的主要通訊接口。接著,本論文介紹了基于ARM9硬件平臺(tái)的LINUX嵌入式操作系統(tǒng)的移植和設(shè)備驅(qū)動(dòng)的開(kāi)發(fā),詳細(xì)描述了B型超聲診斷儀的軟件環(huán)境的架構(gòu)及其設(shè)備驅(qū)動(dòng)的詳細(xì)設(shè)計(jì)。最后對(duì)整個(gè)系統(tǒng)的功能和特點(diǎn)進(jìn)行了總結(jié)和展望。
標(biāo)簽: ARM 全數(shù)字 儀的設(shè)計(jì) 超聲診斷
上傳時(shí)間: 2013-05-28
上傳用戶(hù):sssnaxie
主要介紹了等精度頻率測(cè)量原理,該原理具有在整個(gè)測(cè)試頻段內(nèi)保持高精度頻率\r\n測(cè)量的優(yōu)點(diǎn) 同時(shí)在該原理基礎(chǔ)上,采用了Verilog HDL語(yǔ)言設(shè)計(jì)了高速的等精度測(cè)頻\r\n模塊,并且利用EDA開(kāi)發(fā)平臺(tái)QUARTUS11 3 .0對(duì)CPLD芯片進(jìn)行寫(xiě)人,實(shí)現(xiàn)了計(jì)數(shù)等\r\n主要邏輯功能 還使用C語(yǔ)言設(shè)計(jì)了該等精度頻率計(jì)的主控程序以提高測(cè)量精度。本設(shè)\r\n計(jì)實(shí)現(xiàn)了對(duì)頻率變化范圍較大的信號(hào)進(jìn)行頻率測(cè)量,能夠滿足高速度、高精度的測(cè)頻要\r\n求。
上傳時(shí)間: 2013-08-16
上傳用戶(hù):chenbhdt
本書(shū)針對(duì)Atmel公司的AVR系列單片機(jī)和ImageCraft公司的ICC AVR開(kāi)發(fā)環(huán)境,詳細(xì)地介紹了AT90LS8535的C語(yǔ)言程序設(shè)計(jì)。全書(shū)共有13章,其內(nèi)容既涉及到了單片機(jī)的結(jié)構(gòu)原理、指令系統(tǒng)、內(nèi)容資源和外部功能擴(kuò)展,又包含了單片機(jī)的編程工具——ICC AVR C編程器的數(shù)據(jù)類(lèi)型、控制流、函數(shù)和指針等。本書(shū)的特點(diǎn)是:深入淺出,從最基本的概念開(kāi)始,循序漸進(jìn)地講解單片機(jī)的應(yīng)用開(kāi)發(fā);列舉了大量實(shí)例,使讀者能從實(shí)際應(yīng)用中掌握單片機(jī)的開(kāi)發(fā)與應(yīng)用技術(shù)。本書(shū)適合作為從事單片機(jī)開(kāi)發(fā)人員的參考用書(shū)。書(shū)中先后講解了C語(yǔ)言基礎(chǔ)、AVR單片機(jī)基礎(chǔ),并舉了一些簡(jiǎn)單的實(shí)例。本書(shū)非常適合初學(xué)者。 【目錄信息】 第1章 單片機(jī)系統(tǒng)概述 1. 1 AVR系列單片機(jī)的特點(diǎn) 1. 2 AT90系列單片機(jī)簡(jiǎn)介 第2章 AT90LS8535單片機(jī)的基礎(chǔ)知識(shí) 2. 1 AT90LS8535單片機(jī)的總體結(jié)構(gòu) 2. 1. 1 AT90LS8535單片機(jī)的中央處理器 2. 1. 2 AT90LS8535單片機(jī)的存儲(chǔ)器組織 2. 1. 3 AT90LS8535單片機(jī)的I/O接口 2. 1. 4 AT90LS8535單片機(jī)的內(nèi)部資源 2. 1. 5 AT90LS8535單片機(jī)的時(shí)鐘電路 2. 1. 6 AT90LS8535單片機(jī)的系統(tǒng)復(fù)位 2. 1. 7 AT90LS8535單片機(jī)的節(jié)電方式 2. 1. 8 AT90LS8535單片機(jī)的芯片引腳 2. 2 AT90LS8535單片機(jī)的指令系統(tǒng) 2. 2. 1 匯編指令格式 2. 2. 2 尋址方式 2. 2. 3 偽指令 2. 2. 4 指令類(lèi)型及數(shù)據(jù)操作方式 2. 3 應(yīng)用程序設(shè)計(jì) 2. 3. 1 程序設(shè)計(jì)方法 2. 3. 2 應(yīng)用程序舉例 第3章 AT90LS8535單片機(jī)的C編程 3. 1 支持高級(jí)語(yǔ)言編程的AVR系列單片機(jī) 3. 2 AVR的C編譯器 3. 3 ICCAVR介紹 3. 3. 1 安裝ICCAVR 3. 3. 2 設(shè)置ICCAVR 3. 4 用ICCAVR編寫(xiě)應(yīng)用程序 3. 5 下載程序文件 第4章 數(shù)據(jù)類(lèi)型. 運(yùn)算符和表達(dá)式 4. 1 ICCAVR支持的數(shù)據(jù)類(lèi)型 4. 2 常量與變量 4. 2. 1 常量 4. 2. 2 變量 4. 3 AT90LS8535的存儲(chǔ)空間 4. 4 算術(shù)和賦值運(yùn)算 4. 4. 1 算術(shù)運(yùn)算符和算術(shù)表達(dá)式 4. 4. 2 賦值運(yùn)算符和賦值表達(dá)式 4. 5 邏輯運(yùn)算 4. 6 關(guān)系運(yùn)算 4. 7 位操作 4. 7. 1 位邏輯運(yùn)算 4. 7. 2 移位運(yùn)算 4. 8 逗號(hào)運(yùn)算 第5章 控制流 5. 1 C語(yǔ)言的結(jié)構(gòu)化程序設(shè)計(jì) 5. 1. 1 順序結(jié)構(gòu) 5. 1. 2 選擇結(jié)構(gòu) 5. 1. 3 循環(huán)結(jié)構(gòu) 5. 2 選擇語(yǔ)句 5. 2. 1 if語(yǔ)句 5. 2. 2 switch分支 5. 2. 3 選擇語(yǔ)句的嵌套 5. 3 循環(huán)語(yǔ)句 5. 3. 1 while語(yǔ)句 5. 3. 2 do…while語(yǔ)句 5. 3. 3 for語(yǔ)句 5. 3. 4 循環(huán)語(yǔ)句嵌套 5. 3. 5 break語(yǔ)句和continue語(yǔ)句 第6章 函數(shù) 6. 1 函數(shù)的定義 6. 1. 1 函數(shù)的定義的一般形式 6. 1. 2 函數(shù)的參數(shù) 6. 1. 3 函數(shù)的值 6. 2 函數(shù)的調(diào)用 6. 2. 1 函數(shù)的一般調(diào)用 6. 2. 2 函數(shù)的遞歸調(diào)用 6. 2. 3 函數(shù)的嵌套調(diào)用 6. 3 變量的類(lèi)型及其存儲(chǔ)方式 6. 3. 1 局部變量 6. 3. 2 局部變量的存儲(chǔ)方式 6. 3. 3 全局變量 6. 3. 4 全局變量的存儲(chǔ)方式 6. 4 內(nèi)部函數(shù)和外部函數(shù) 6. 4. 1 內(nèi)部函數(shù) 6. 4. 2 外部函數(shù) 第7章 指針 7. 1 指針和指針變量 7. 2 指針變量的定義和引用 7. 2. 1 指針變量的定義 7. 2. 2 指針變量的引用 7. 2. 3 指針變量作為函數(shù)參數(shù) 7. 3 數(shù)組與指針 7. 3. 1 指向數(shù)組元素的指針變量 7. 3. 2 數(shù)組元素的引用 通過(guò)指針 7. 3. 3 數(shù)組名作為函數(shù)參數(shù) 7. 3. 4 指向多維數(shù)組的元素的指針變量 7. 4 字符串與指針 7. 4. 1 字符串的表示形式 7. 4. 2 字符串指針變量與字符數(shù)組的區(qū)別 7. 5 函數(shù)與指針 7. 5. 1 函數(shù)指針變量 7. 5. 2 指針型函數(shù) 7. 6 指向指針的指針 7. 7 有關(guān)指針數(shù)據(jù)類(lèi)型和運(yùn)算小結(jié) 7. 7. 1 有關(guān)指針的數(shù)據(jù)類(lèi)型的小結(jié) 7. 7. 2 指針運(yùn)算的小結(jié) 第8章 結(jié)構(gòu)體和共用體 8. 1 結(jié)構(gòu)體的定義和引用 8. 1. 1 結(jié)構(gòu)體類(lèi)型變量的定義 8. 1. 2 結(jié)構(gòu)體類(lèi)型變量的引用 8. 2 結(jié)構(gòu)類(lèi)型的說(shuō)明 8. 3 結(jié)構(gòu)體變量的初始化和賦值 8. 3. 1 結(jié)構(gòu)體變量的初始化 8. 3. 2 結(jié)構(gòu)體變量的賦值 8. 4 結(jié)構(gòu)體數(shù)組 8. 4. 1 結(jié)構(gòu)體數(shù)組的定義 8. 4. 2 結(jié)構(gòu)體數(shù)組的初始化 8. 5 指向結(jié)構(gòu)體類(lèi)型變量的指針 8. 5. 1 指向結(jié)構(gòu)體變量的指針 8. 5. 2 指向結(jié)構(gòu)體數(shù)組的指針 8. 5. 3 指向結(jié)構(gòu)體變量的指針做函數(shù)參數(shù) 8. 6 共用體 8. 6. 1 共用體的定義 8. 6. 2 共用體變量的引用 第9章 A190LS8535的內(nèi)部資源 9. 1 I/O 口 9. 1. 1 端口A 9. 1. 2 端口B 9. 1. 3 端口C 9. 1. 4 端口D 9. 1. 5 I/O口的編程 9. 2 中斷 9. 2. 1 單片機(jī)的中斷功能 9. 2. 2 AT90LS8535單片機(jī)的中斷系統(tǒng) 9. 2. 3 1CCAVRC編譯器的中斷操作 9. 2. 4 中斷的編程 9. 3 串行數(shù)據(jù)通信 9. 3. 1 數(shù)據(jù)通信基礎(chǔ) 9. 3. 2 AT90LS8535的同步串行接口 9. 3. 3 AT90LS8535的異步串行接口 9. 4 定時(shí)/計(jì)數(shù)器 9. 4. 1 定時(shí)/計(jì)數(shù)器的分頻器 9. 4. 2 8位定時(shí)/計(jì)數(shù)器0 9. 4. 3 16位定時(shí)/計(jì)數(shù)器1 9. 4. 4 8位定時(shí)/計(jì)數(shù)器2 9. 5 EEPROM 9. 5. 1 與EEPROM有關(guān)的寄存器 9. 5. 2 EEPROM讀/寫(xiě)操作 9. 5. 3 EEPROM的應(yīng)用舉例 9. 6 模擬量輸入接口 9. 6. 1 模數(shù)轉(zhuǎn)換器的結(jié)構(gòu) 9. 6. 2 ADC的使用 9. 6. 3 與模數(shù)轉(zhuǎn)換器有關(guān)的寄存器 9. 6. 4 ADC的噪聲消除 9. 6. 5 ADC的應(yīng)用舉例 9. 7 模擬比較器 9. 7. 1 模擬比較器的結(jié)構(gòu) 9. 7. 2 與模擬比較器有關(guān)的寄存器 9. 7. 3 模擬比較器的應(yīng)用舉例 第10章 AT90LS8535的人機(jī)接口編程 10. 1 鍵盤(pán)接口 10. 1. 1 非矩陣式鍵盤(pán) 10. 1. 2 矩陣式鍵盤(pán) 10. 2 LED顯示輸出 10. 2. 1 LED的靜態(tài)顯示 10. 2. 2 LED的動(dòng)態(tài)掃描顯示 10. 2. 3 動(dòng)態(tài)掃描顯示專(zhuān)用芯片MC14489 10. 3 LCD顯示輸出 10. 3. 1 字符型LCD 10. 3. 2 點(diǎn)陣型LCD 10. 4 ISD2500系列語(yǔ)音芯片的編程 10. 4. 1 ISD2500的片內(nèi)結(jié)構(gòu)和引腳 10. 4. 2 ISD2500的操作 10. 4. 3 ISD2500和單片機(jī)的接口及編程 10. 5 TP-uP微型打印機(jī) 10. 5. 1 TP-uP打印機(jī)的接口和邏輯時(shí)序 10. 5. 2 P-uP打印機(jī)的打印命令和字符代碼 10. 5. 3 AT90LS8535與TP-uP系列打印機(jī)的接口及編程 10. 6 IC卡 10. 6. 1 IC卡讀寫(xiě)裝置 10. 6. 2 IC卡軟件 第11章 AT90LS8535的外圍擴(kuò)展 11. 1 簡(jiǎn)單I/O擴(kuò)展芯片 11. 1. 1 用74LS377擴(kuò)展數(shù)據(jù)輸出接口 11. 1. 2 數(shù)據(jù)輸入接口 11. 2 模擬量輸出 11. 2. 1 D/A轉(zhuǎn)換器簡(jiǎn)介 11. 2. 2 8位數(shù)模轉(zhuǎn)換器DAC0832 11. 2. 3 8位數(shù)模轉(zhuǎn)換器與單片機(jī)的接口及編程 11. 2. 4 12位數(shù)模轉(zhuǎn)換器DACl230 11. 2. 5 12位數(shù)模轉(zhuǎn)換器與單片機(jī)的接口及編程 11. 3 可編程I/O擴(kuò)展芯片8255A 11. 3. 1 8255A的引腳和內(nèi)部結(jié)構(gòu) 11. 3. 2 8255A的工作方式 11. 3. 3 8255A的控制字 11. 3. 4 AT90LS8535和8255A的接口 11. 4 帶片內(nèi)RAM的I/O擴(kuò)展芯片8155 11. 4. 1 8155的引腳和內(nèi)部結(jié)構(gòu). 11. 4. 2 8155的I/O口工作方式 11. 4. 3 8155的定時(shí)/計(jì)數(shù)器 11. 4. 4 8155的命令和狀態(tài)字 11. 4. 5 AT90LS8535與8155的接口及編程 11. 5 定時(shí)/計(jì)數(shù)器芯片8253 11. 5. 1 8253的信號(hào)引腳和邏輯結(jié)構(gòu) 11. 5. 2 8253的工作方式 11. 5. 3 8253的控制字 11. 5. 4 AT90LS8535與8253的接口及編程 11. 6 實(shí)時(shí)時(shí)鐘芯片DS1302 11. 6. 1 DS1302的引腳和內(nèi)部結(jié)構(gòu) 11. 6. 2 DS1302的控制方式 11. 6. 3 AT90LS8535與DS1302的接口與編程 11. 7 數(shù)字溫度傳感器DS18B20 11. 7. 1 DSl8B20的引腳和內(nèi)部結(jié)構(gòu) 11. 7. 2 DS18B20的溫度測(cè)量 11. 7. 3 AT90LS8535與DS18B20的接口與編程 第12章 AT90LS8535的通信編程 12. 1 串口通信 12. 1. 1 異步串口UART通信 12. 1. 2 同步串口SPI通信 12. 2 I2C總線 12. 2. 1 I2C總線協(xié)議 12. 2. 2 采用AT90LS8535的并行I/O口模擬I2C總線 12. 3 CAN總線 12. 3. 1 CAN總線的特點(diǎn) 12. 3. 2 CAN協(xié)議的信息格式 12. 3. 3 CAN控制器SJA1000 12. 3. 4 AT90LS8535與SJA1000的接口及編程 12. 4 AT90LS8535單片機(jī)與PC的串行通信 12. 4. 1 基于VC 6. 0的PC串口通信 12. 4. 2 應(yīng)用實(shí)例 第13章 系統(tǒng)設(shè)計(jì)中的程序處理方法 13. 1 數(shù)字濾波處理 13. 1. 1 平滑濾波 13. 1. 2 中值濾波 13. 1. 3 程序判斷濾波 13. 2 非線性處理 13. 2. 1 查表法 13. 2. 2 線性插值法
標(biāo)簽: AVR 單片機(jī) C語(yǔ)言編程 應(yīng)用實(shí)例
上傳時(shí)間: 2013-11-04
上傳用戶(hù):元宵漢堡包
串行編程器源程序(Keil C語(yǔ)言)//FID=01:AT89C2051系列編程器//實(shí)現(xiàn)編程的讀,寫(xiě),擦等細(xì)節(jié)//AT89C2051的特殊處:給XTAL一個(gè)脈沖,地址計(jì)數(shù)加1;P1的引腳排列與AT89C51相反,需要用函數(shù)轉(zhuǎn)換#include <e51pro.h> #define C2051_P3_7 P1_0#define C2051_P1 P0//注意引腳排列相反#define C2051_P3_0 P1_1#define C2051_P3_1 P1_2#define C2051_XTAL P1_4#define C2051_P3_2 P1_5#define C2051_P3_3 P1_6#define C2051_P3_4 P1_7#define C2051_P3_5 P3_5 void InitPro01()//編程前的準(zhǔn)備工作{ SetVpp0V(); P0=0xff; P1=0xff; C2051_P3_5=1; C2051_XTAL=0; Delay_ms(20); nAddress=0x0000; SetVpp5V();} void ProOver01()//編程結(jié)束后的工作,設(shè)置合適的引腳電平{ SetVpp5V(); P0=0xff; P1=0xff; C2051_P3_5=1; C2051_XTAL=1;} BYTE GetData()//從P0口獲得數(shù)據(jù){ B_0=P0_7; B_1=P0_6; B_2=P0_5; B_3=P0_4; B_4=P0_3; B_5=P0_2; B_6=P0_1; B_7=P0_0; return B;} void SetData(BYTE DataByte)//轉(zhuǎn)換并設(shè)置P0口的數(shù)據(jù){ B=DataByte; P0_0=B_7; P0_1=B_6; P0_2=B_5; P0_3=B_4; P0_4=B_3; P0_5=B_2; P0_6=B_1; P0_7=B_0;} void ReadSign01()//讀特征字{ InitPro01(); Delay_ms(1);//----------------------------------------------------------------------------- //根據(jù)器件的DataSheet,設(shè)置相應(yīng)的編程控制信號(hào) C2051_P3_3=0; C2051_P3_4=0; C2051_P3_5=0; C2051_P3_7=0; Delay_ms(20); ComBuf[2]=GetData(); C2051_XTAL=1; C2051_XTAL=0; Delay_us(20); ComBuf[3]=GetData(); ComBuf[4]=0xff;//----------------------------------------------------------------------------- ProOver01();} void Erase01()//擦除器件{ InitPro01();//----------------------------------------------------------------------------- //根據(jù)器件的DataSheet,設(shè)置相應(yīng)的編程控制信號(hào) C2051_P3_3=1; C2051_P3_4=0; C2051_P3_5=0; C2051_P3_7=0; Delay_ms(1); SetVpp12V(); Delay_ms(1); C2051_P3_2=0; Delay_ms(10); C2051_P3_2=1; Delay_ms(1);//----------------------------------------------------------------------------- ProOver01();} BOOL Write01(BYTE Data)//寫(xiě)器件{//----------------------------------------------------------------------------- //根據(jù)器件的DataSheet,設(shè)置相應(yīng)的編程控制信號(hào) //寫(xiě)一個(gè)單元 C2051_P3_3=0; C2051_P3_4=1; C2051_P3_5=1; C2051_P3_7=1; SetData(Data); SetVpp12V(); Delay_us(20); C2051_P3_2=0; Delay_us(20); C2051_P3_2=1; Delay_us(20); SetVpp5V(); Delay_us(20); C2051_P3_4=0; Delay_ms(2); nTimeOut=0; P0=0xff; nTimeOut=0; while(!GetData()==Data)//效驗(yàn):循環(huán)讀,直到讀出與寫(xiě)入的數(shù)相同 { nTimeOut++; if(nTimeOut>1000)//超時(shí)了 { return 0; } } C2051_XTAL=1; C2051_XTAL=0;//一個(gè)脈沖指向下一個(gè)單元//----------------------------------------------------------------------------- return 1;} BYTE Read01()//讀器件{ BYTE Data;//----------------------------------------------------------------------------- //根據(jù)器件的DataSheet,設(shè)置相應(yīng)的編程控制信號(hào) //讀一個(gè)單元 C2051_P3_3=0; C2051_P3_4=0; C2051_P3_5=1; C2051_P3_7=1; Data=GetData(); C2051_XTAL=1; C2051_XTAL=0;//一個(gè)脈沖指向下一個(gè)單元//----------------------------------------------------------------------------- return Data;} void Lock01()//寫(xiě)鎖定位{ InitPro01();//先設(shè)置成編程狀態(tài)//----------------------------------------------------------------------------- //根據(jù)器件的DataSheet,設(shè)置相應(yīng)的編程控制信號(hào) if(ComBuf[2]>=1)//ComBuf[2]為鎖定位 { C2051_P3_3=1; C2051_P3_4=1; C2051_P3_5=1; C2051_P3_7=1; Delay_us(20); SetVpp12V(); Delay_us(20); C2051_P3_2=0; Delay_us(20); C2051_P3_2=1; Delay_us(20); SetVpp5V(); } if(ComBuf[2]>=2) { C2051_P3_3=1; C2051_P3_4=1; C2051_P3_5=0; C2051_P3_7=0; Delay_us(20); SetVpp12V(); Delay_us(20); C2051_P3_2=0; Delay_us(20); C2051_P3_2=1; Delay_us(20); SetVpp5V(); }//----------------------------------------------------------------------------- ProOver01();} void PreparePro01()//設(shè)置pw中的函數(shù)指針,讓主程序可以調(diào)用上面的函數(shù){ pw.fpInitPro=InitPro01; pw.fpReadSign=ReadSign01; pw.fpErase=Erase01; pw.fpWrite=Write01; pw.fpRead=Read01; pw.fpLock=Lock01; pw.fpProOver=ProOver01;}
上傳時(shí)間: 2013-11-12
上傳用戶(hù):gut1234567
微處理器及微型計(jì)算機(jī)的發(fā)展概況 第一代微處理器是以Intel公司1971年推出的4004,4040為代表的四位微處理機(jī)。 第二代微處理機(jī)(1973年~1977年),典型代表有:Intel 公司的8080、8085;Motorola公司的M6800以及Zlog公司的Z80。 第三代微處理機(jī) 第三代微機(jī)是以16位機(jī)為代表,基本上是在第二代微機(jī)的基礎(chǔ)上發(fā)展起來(lái)的。其中Intel公司的8088。8086是在8085的基礎(chǔ)發(fā)展起來(lái)的;M68000是Motorola公司在M6800 的基礎(chǔ)發(fā)展起來(lái)的; 第四代微處理機(jī) 以Intel公司1984年10月推出的80386CPU和1989年4月推出的80486CPU為代表, 第五代微處理機(jī)的發(fā)展更加迅猛,1993年3月被命名為PENTIUM的微處理機(jī)面世,98年P(guān)ENTIUM 2又被推向市場(chǎng)。 INTEL CPU 發(fā)展歷史Intel第一塊CPU 4004,4位主理器,主頻108kHz,運(yùn)算速度0.06MIPs(Million Instructions Per Second, 每秒百萬(wàn)條指令),集成晶體管2,300個(gè),10微米制造工藝,最大尋址內(nèi)存640 bytes,生產(chǎn)曰期1971年11月. 8085,8位主理器,主頻5M,運(yùn)算速度0.37MIPs,集成晶體管6,500個(gè),3微米制造工藝,最大尋址內(nèi)存64KB,生產(chǎn)曰期1976年 8086,16位主理器,主頻4.77/8/10MHZ,運(yùn)算速度0.75MIPs,集成晶體管29,000個(gè),3微米制造工藝,最大尋址內(nèi)存1MB,生產(chǎn)曰期1978年6月. 80486DX,DX2,DX4,32位主理器,主頻25/33/50/66/75/100MHZ,總線頻率33/50/66MHZ,運(yùn)算速度20~60MIPs,集成晶體管1.2M個(gè),1微米制造工藝,168針PGA,最大尋址內(nèi)存4GB,緩存8/16/32/64KB,生產(chǎn)曰期1989年4月 Celeron一代, 主頻266/300MHZ(266/300MHz w/o L2 cache, Covington芯心 (Klamath based),300A/333/366/400/433/466/500/533MHz w/128kB L2 cache, Mendocino核心 (Deschutes-based), 總線頻率66MHz,0.25微米制造工藝,生產(chǎn)曰期1998年4月) Pentium 4 (478針),至今分為三種核心:Willamette核心(主頻1.5G起,FSB400MHZ,0.18微米制造工藝),Northwood核心(主頻1.6G~3.0G,FSB533MHZ,0.13微米制造工藝, 二級(jí)緩存512K),Prescott核心(主頻2.8G起,FSB800MHZ,0.09微米制造工藝,1M二級(jí)緩存,13條全新指令集SSE3),生產(chǎn)曰期2001年7月. 更大的緩存、更高的頻率、 超級(jí)流水線、分支預(yù)測(cè)、亂序執(zhí)行超線程技術(shù) 微型計(jì)算機(jī)組成結(jié)構(gòu)單片機(jī)簡(jiǎn)介單片機(jī)即單片機(jī)微型計(jì)算機(jī),是將計(jì)算機(jī)主機(jī)(CPU、 內(nèi)存和I/O接口)集成在一小塊硅片上的微型機(jī)。 三、計(jì)算機(jī)編程語(yǔ)言的發(fā)展概況 機(jī)器語(yǔ)言 機(jī)器語(yǔ)言就是0,1碼語(yǔ)言,是計(jì)算機(jī)唯一能理解并直接執(zhí)行的語(yǔ)言。匯編語(yǔ)言 用一些助記符號(hào)代替用0,1碼描述的某種機(jī)器的指令系統(tǒng),匯編語(yǔ)言就是在此基礎(chǔ)上完善起來(lái)的。高級(jí)語(yǔ)言 BASIC,PASCAL,C語(yǔ)言等等。用高級(jí)語(yǔ)言編寫(xiě)的程序稱(chēng)源程序,它們必須通過(guò)編譯或解釋?zhuān)B接等步驟才能被計(jì)算機(jī)處理。 面向?qū)ο笳Z(yǔ)言 C++,Java等編程語(yǔ)言是面向?qū)ο蟮恼Z(yǔ)言。 1.3 微型計(jì)算機(jī)中信息的表示及運(yùn)算基礎(chǔ)(一) 十進(jìn)制ND有十個(gè)數(shù)碼:0~9,逢十進(jìn)一。 例 1234.5=1×103 +2×102 +3×101 +4×100 +5×10-1加權(quán)展開(kāi)式以10稱(chēng)為基數(shù),各位系數(shù)為0~9,10i為權(quán)。 一般表達(dá)式:ND= dn-1×10n-1+dn-2×10n-2 +…+d0×100 +d-1×10-1+… (二) 二進(jìn)制NB兩個(gè)數(shù)碼:0、1, 逢二進(jìn)一。 例 1101.101=1×23+1×22+0×21+1×20+1×2-1+1×2-3 加權(quán)展開(kāi)式以2為基數(shù),各位系數(shù)為0、1, 2i為權(quán)。 一般表達(dá)式: NB = bn-1×2n-1 + bn-2×2n-2 +…+b0×20 +b-1×2-1+… (三)十六進(jìn)制NH十六個(gè)數(shù)碼0~9、A~F,逢十六進(jìn)一。 例:DFC.8=13×162 +15×161 +12×160 +8×16-1 展開(kāi)式以十六為基數(shù),各位系數(shù)為0~9,A~F,16i為權(quán)。 一般表達(dá)式: NH= hn-1×16n-1+ hn-2×16n-2+…+ h0×160+ h-1×16-1+… 二、不同進(jìn)位計(jì)數(shù)制之間的轉(zhuǎn)換 (二)二進(jìn)制與十六進(jìn)制數(shù)之間的轉(zhuǎn)換 24=16 ,四位二進(jìn)制數(shù)對(duì)應(yīng)一位十六進(jìn)制數(shù)。舉例:(三)十進(jìn)制數(shù)轉(zhuǎn)換成二、十六進(jìn)制數(shù)整數(shù)、小數(shù)分別轉(zhuǎn)換 1.整數(shù)轉(zhuǎn)換法“除基取余”:十進(jìn)制整數(shù)不斷除以轉(zhuǎn)換進(jìn)制基數(shù),直至商為0。每除一次取一個(gè)余數(shù),從低位排向高位。舉例: 2. 小數(shù)轉(zhuǎn)換法“乘基取整”:用轉(zhuǎn)換進(jìn)制的基數(shù)乘以小數(shù)部分,直至小數(shù)為0或達(dá)到轉(zhuǎn)換精度要求的位數(shù)。每乘一次取一次整數(shù),從最高位排到最低位。舉例: 三、帶符號(hào)數(shù)的表示方法 機(jī)器數(shù):機(jī)器中數(shù)的表示形式。真值: 機(jī)器數(shù)所代表的實(shí)際數(shù)值。舉例:一個(gè)8位機(jī)器數(shù)與它的真值對(duì)應(yīng)關(guān)系如下: 真值: X1=+84=+1010100B X2=-84= -1010100B 機(jī)器數(shù):[X1]機(jī)= 01010100 [X2]機(jī)= 11010100(二)原碼、反碼、補(bǔ)碼最高位為符號(hào)位,0表示 “+”,1表示“-”。 數(shù)值位與真值數(shù)值位相同。 例 8位原碼機(jī)器數(shù): 真值: x1 = +1010100B x2 =- 1010100B 機(jī)器數(shù): [x1]原 = 01010100 [x2]原 = 11010100原碼表示簡(jiǎn)單直觀,但0的表示不唯一,加減運(yùn)算復(fù)雜。 正數(shù)的反碼與原碼表示相同。 負(fù)數(shù)反碼符號(hào)位為 1,數(shù)值位為原碼數(shù)值各位取反。 例 8位反碼機(jī)器數(shù): x= +4: [x]原= 00000100 [x]反= 00000100 x= -4: [x]原= 10000100 [x]反= 111110113、補(bǔ)碼(Two’s Complement)正數(shù)的補(bǔ)碼表示與原碼相同。 負(fù)數(shù)補(bǔ)碼等于2n-abs(x)8位機(jī)器數(shù)表示的真值四、 二進(jìn)制編碼例:求十進(jìn)制數(shù)876的BCD碼 876= 1000 0111 0110 BCD 876= 36CH = 1101101100B 2、字符編碼 美國(guó)標(biāo)準(zhǔn)信息交換碼ASCII碼,用于計(jì)算 機(jī)與計(jì)算機(jī)、計(jì)算機(jī)與外設(shè)之間傳遞信息。 3、漢字編碼 “國(guó)家標(biāo)準(zhǔn)信息交換用漢字編碼”(GB2312-80標(biāo)準(zhǔn)),簡(jiǎn)稱(chēng)國(guó)標(biāo)碼。 用兩個(gè)七位二進(jìn)制數(shù)編碼表示一個(gè)漢字 例如“巧”字的代碼是39H、41H漢字內(nèi)碼例如“巧”字的代碼是0B9H、0C1H1·4 運(yùn)算基礎(chǔ) 一、二進(jìn)制數(shù)的運(yùn)算加法規(guī)則:“逢2進(jìn)1” 減法規(guī)則:“借1當(dāng)2” 乘法規(guī)則:“逢0出0,全1出1”二、二—十進(jìn)制數(shù)的加、減運(yùn)算 BCD數(shù)的運(yùn)算規(guī)則 循十進(jìn)制數(shù)的運(yùn)算規(guī)則“逢10進(jìn)1”。但計(jì)算機(jī)在進(jìn)行這種運(yùn)算時(shí)會(huì)出現(xiàn)潛在的錯(cuò)誤。為了解決BCD數(shù)的運(yùn)算問(wèn)題,采取調(diào)整運(yùn)算結(jié)果的措施:即“加六修正”和“減六修正”例:10001000(BCD)+01101001(BCD) =000101010111(BCD) 1 0 0 0 1 0 0 0 + 0 1 1 0 1 0 0 1 1 1 1 1 0 0 0 1 + 0 1 1 0 0 1 1 0 ……調(diào)整 1 0 1 0 1 0 1 1 1 進(jìn)位 例: 10001000(BCD)- 01101001(BCD)= 00011001(BCD) 1 0 0 0 1 0 0 0 - 0 1 1 0 1 0 0 1 0 0 0 1 1 1 1 1 - 0 1 1 0 ……調(diào)整 0 0 0 1 1 0 0 1 三、 帶符號(hào)二進(jìn)制數(shù)的運(yùn)算 1.5 幾個(gè)重要的數(shù)字邏輯電路編碼器譯碼器計(jì)數(shù)器微機(jī)自動(dòng)工作的條件程序指令順序存放自動(dòng)跟蹤指令執(zhí)行1.6 微機(jī)基本結(jié)構(gòu)微機(jī)結(jié)構(gòu)各部分組成連接方式1、以CPU為中心的雙總線結(jié)構(gòu);2、以?xún)?nèi)存為中心的雙總線結(jié)構(gòu);3、單總線結(jié)構(gòu)CPU結(jié)構(gòu)管腳特點(diǎn) 1、多功能;2、分時(shí)復(fù)用內(nèi)部結(jié)構(gòu) 1、控制; 2、運(yùn)算; 3、寄存器; 4、地址程序計(jì)數(shù)器堆棧定義 1、定義;2、管理;3、堆棧形式
上傳時(shí)間: 2013-10-17
上傳用戶(hù):erkuizhang
1、本系統(tǒng)采用B/S架構(gòu),是學(xué)校智能辦公系統(tǒng)的一部分,菜單中的“用戶(hù)管理”、“權(quán)限管理”、“菜單管理”、“幫助主題”已集成在辦公系統(tǒng)之中,因此本系統(tǒng)不提供這幾項(xiàng)功能。 2、本系統(tǒng)采用集中管理、分工合作的方式,將用戶(hù)分為五個(gè)級(jí)別,每個(gè)級(jí)別的用戶(hù)只能使用相應(yīng)的功能,因此,能公平、公正、公開(kāi)地考評(píng)各位教師的教學(xué)質(zhì)量。 3、支持多人同時(shí)操作和遠(yuǎn)程操作,大大縮短數(shù)據(jù)錄入時(shí)間。 安裝和使用注意事項(xiàng): 1、將壓縮文件解壓到IIS目錄后,運(yùn)行cjcl目錄下的reg.bat。 2、系統(tǒng)內(nèi)置五個(gè)用戶(hù):系統(tǒng)管理、學(xué)校領(lǐng)導(dǎo)、成績(jī)錄入、班主任、一般用戶(hù),其中前四個(gè)用戶(hù)的密碼均為1,而一般用戶(hù)在登錄頁(yè)面只需點(diǎn)提交,一般用戶(hù)只提供查詢(xún)功能。 3、使用前先由學(xué)校領(lǐng)導(dǎo)創(chuàng)建新任務(wù),錄入學(xué)校信息、教師信息、班信息等,再由班主任錄入學(xué)生信息,最后由成績(jī)錄入員錄入學(xué)生成績(jī)。 4、在數(shù)據(jù)庫(kù)中的user表中更改或增加用戶(hù),在jbqx表中更改每個(gè)級(jí)別的權(quán)限。 如有建議或疑問(wèn)請(qǐng)與作者聯(lián)系。
標(biāo)簽: 架構(gòu)
上傳時(shí)間: 2015-03-11
上傳用戶(hù):qlpqlq
清華大學(xué)數(shù)據(jù)結(jié)構(gòu)課上實(shí)現(xiàn)的B+樹(shù),設(shè)計(jì)一個(gè)4階B+樹(shù),包括: (1) 葉子的每個(gè)記錄應(yīng)該包括4字節(jié)(long)關(guān)鍵碼值和60字節(jié)的數(shù)據(jù)字段(存儲(chǔ)文件名等,可以自定),設(shè)每個(gè)葉子可以存儲(chǔ)5條記錄,而內(nèi)部節(jié)點(diǎn)應(yīng)該是關(guān)鍵碼值/指針對(duì)。此外,每個(gè)節(jié)點(diǎn)還應(yīng)該有指向同層下一個(gè)節(jié)點(diǎn)的指針、本節(jié)點(diǎn)存儲(chǔ)的關(guān)鍵碼數(shù)等; (2) 此4階B+樹(shù)應(yīng)該支持插入、刪除以及根據(jù)給定關(guān)鍵碼值進(jìn)行精確檢索與關(guān)鍵碼范圍檢索; (3) 顯示(打印)此4階B+樹(shù)的生長(zhǎng)(含刪除節(jié)點(diǎn))過(guò)程實(shí)例;
標(biāo)簽: 清華大學(xué) 數(shù)據(jù)結(jié)構(gòu) 樹(shù)
上傳時(shí)間: 2014-08-05
上傳用戶(hù):ywqaxiwang
注塑機(jī)生產(chǎn)過(guò)程的微機(jī)控制系統(tǒng)設(shè)計(jì)本系統(tǒng)設(shè)計(jì)是通過(guò)8255A并行端口A、B傳輸數(shù)據(jù)控制12個(gè)LED發(fā)光二級(jí)管的亮滅來(lái)模擬控制兩臺(tái)注塑機(jī)的生產(chǎn)過(guò)程。其中端口A和B分別對(duì)應(yīng)1號(hào)和2號(hào)注塑機(jī),每一個(gè)LED代表一個(gè)工序。編程語(yǔ)言采用BORLAND C++語(yǔ)言。
標(biāo)簽: 8255A 注塑機(jī) LED 生產(chǎn)過(guò)程
上傳時(shí)間: 2013-12-25
上傳用戶(hù):葉山豪
蟲(chóng)蟲(chóng)下載站版權(quán)所有 京ICP備2021023401號(hào)-1