信息技術(shù)的發(fā)展,數(shù)字化產(chǎn)品的普及,導(dǎo)致了對嵌入式開發(fā)的巨大需求。以Linux為宿主機(jī)系統(tǒng),搭配一個交叉編譯環(huán)境,為嵌入式設(shè)備生成可執(zhí)行程序己成為現(xiàn)在日益流行的編譯嵌入式軟件的解決方案。而開放源代碼的GNUT具鏈?zhǔn)且惶组_源的開發(fā)環(huán)境,是嵌入式軟件開發(fā)中理想的交叉編譯器。但現(xiàn)有GNUI具鏈支持的平臺并不能滿足層出不窮的嵌入式產(chǎn)品的開發(fā)需要,仍有許多平臺得不到支持,例如我們進(jìn)行的minix向ARM-MINIX平臺的移植。 本文以在linux環(huán)境下構(gòu)建MINIX嵌入式系統(tǒng)的交叉編譯工具鏈為背景,首先介紹了交叉編譯系統(tǒng)的基本組成和結(jié)構(gòu),以及利用GCC構(gòu)建交叉編譯環(huán)境的優(yōu)越性。然后對目標(biāo)平臺作了介紹。分析了GCC編譯器,說明了GCC的設(shè)計思想,系統(tǒng)結(jié)構(gòu),介紹了GNU Binutils的功能,使用方法;接著分析了GNU工具鏈中的GAS和GLD的實現(xiàn)機(jī)制及源代碼結(jié)構(gòu),由于BFD是GNUBinutils的基礎(chǔ),GAS和GLD都是使用BFD庫來操作目標(biāo)文件,因此在這一部分本文對BFD庫的工作機(jī)制,數(shù)據(jù)結(jié)構(gòu)也作了重點(diǎn)分析。緊接著說明了GCC交叉編譯系統(tǒng)的移植思路和方法,實現(xiàn)難點(diǎn),以及一些相關(guān)技術(shù)細(xì)節(jié),這涉及到了若干重要的C源文件,Makefile,配置文件的修改,重點(diǎn)給出了BFD庫,GAS和GLD的分析及其重定向(通常GCC生成的目標(biāo)程序是針對GNU/Linux系統(tǒng)的)的實現(xiàn);然后本文給出了在GNU/Linux宿主機(jī)上構(gòu)建針對ARM-MINIX的參數(shù)設(shè)置及過程:最后對本文所做的工作進(jìn)行了總結(jié)。
標(biāo)簽: ARM-MINIX GNU 嵌入式系統(tǒng)
上傳時間: 2013-05-31
上傳用戶:wangzhen1990
C++Builder 6 是一款快速開發(fā)Win32 應(yīng)用程序的可視化開發(fā)工具,利用它可以實現(xiàn)高性 能的執(zhí)行效率和出色的底層控制。C++Builder 6 相比于5 以前的版本,提供了更多的網(wǎng)絡(luò)開
上傳時間: 2013-07-11
上傳用戶:KSLYZ
本課件可用來與作者編著的《C語言程序設(shè)計教程》(人民郵電出版社)配合使用,也可獨(dú)立使用。 使用中,編譯器最好使用VC++6.0。課件中,有關(guān)程序的調(diào)試內(nèi)容大部分沒有納入課件之中,這是因為本課件是與VC++6.0集成開發(fā)環(huán)境配合使用的,教師在課堂上使用集成開發(fā)環(huán)境時,可隨時給學(xué)生講授開發(fā)環(huán)境調(diào)試工具的使用和C程序的調(diào)試技巧。如果采用TC2.0開發(fā)環(huán)境,本課件也能使用。 由于課件主要是講授C程序設(shè)計,有關(guān)C語言語法的一些細(xì)節(jié)較少涉及,這主要是考慮到教師在授課時,可通過集成開發(fā)環(huán)境,使用一些小的程序來講授語法。因此,教師在使用本課件授課時,務(wù)必要額外提供一些說明C語法的小程序。
上傳時間: 2013-06-24
上傳用戶:s藍(lán)莓汁
Borland C++ Builder Compiler 是一個BC 編譯器。它是用來優(yōu)化BC 開發(fā)系統(tǒng)的工具。它包括最后版本的ANSI/ISO C++ 語言的支持,包括RTL,C++ 的STL框架結(jié)構(gòu)支持
上傳時間: 2013-05-22
上傳用戶:ardager
·【內(nèi)容簡介】本書針對Atmel公司的AVR系列單片機(jī)和ImageCraft公司的ICC AVR開發(fā)環(huán)境,詳細(xì)地介紹了AT90LSB8535的C語言程序設(shè)計。全書共有13章,其內(nèi)容既涉及到了單片機(jī)的結(jié)構(gòu)原理、指令系統(tǒng)、內(nèi)部資源和外部功能擴(kuò)展,又包含了單片機(jī)的編輯工具——ICC AVR C編譯器的數(shù)據(jù)類型、控制流、函數(shù)和指針等。 本書的特點(diǎn)是:深入淺出,從最基本的概念開始,循序漸進(jìn)地講解單片機(jī)的應(yīng)用開
標(biāo)簽: AVR 單片機(jī) C語言編程 應(yīng)用實例
上傳時間: 2013-06-11
上傳用戶:dianxin61
C語言常用算法及其源代碼,包含了很多c語言例題的代碼,可用vs2010工具開發(fā)
上傳時間: 2013-04-24
上傳用戶:lwwhust
免費(fèi)啊,大家下吧 下完了兄弟們評個分,留個言,交個朋友! linux c 函數(shù)大全,介紹linux 下C 語言的函數(shù),對LINUX C開發(fā)人員很有用哦,我以前發(fā)布過 unix C。
標(biāo)簽: linux 編程開發(fā) 函數(shù)
上傳時間: 2013-06-17
上傳用戶:vvbvvb123
本文:采用了FPGA方法來模擬高動態(tài)(Global Position System GPS)信號源中的C/A碼產(chǎn)生器。C/A碼在GPS中實現(xiàn)分址、衛(wèi)星信號粗捕和精碼(P碼)引導(dǎo)捕獲起著重要的作用,通過硬件描述語言VERILOG在ISE中實現(xiàn)電路生成,采用MODELSIM、SYNPLIFY工具分別進(jìn)行仿真和綜合。
上傳時間: 2013-08-31
上傳用戶:pwcsoft
本書針對Atmel公司的AVR系列單片機(jī)和ImageCraft公司的ICC AVR開發(fā)環(huán)境,詳細(xì)地介紹了AT90LS8535的C語言程序設(shè)計。全書共有13章,其內(nèi)容既涉及到了單片機(jī)的結(jié)構(gòu)原理、指令系統(tǒng)、內(nèi)容資源和外部功能擴(kuò)展,又包含了單片機(jī)的編程工具——ICC AVR C編程器的數(shù)據(jù)類型、控制流、函數(shù)和指針等。本書的特點(diǎn)是:深入淺出,從最基本的概念開始,循序漸進(jìn)地講解單片機(jī)的應(yīng)用開發(fā);列舉了大量實例,使讀者能從實際應(yīng)用中掌握單片機(jī)的開發(fā)與應(yīng)用技術(shù)。本書適合作為從事單片機(jī)開發(fā)人員的參考用書。書中先后講解了C語言基礎(chǔ)、AVR單片機(jī)基礎(chǔ),并舉了一些簡單的實例。本書非常適合初學(xué)者。 【目錄信息】 第1章 單片機(jī)系統(tǒng)概述 1. 1 AVR系列單片機(jī)的特點(diǎn) 1. 2 AT90系列單片機(jī)簡介 第2章 AT90LS8535單片機(jī)的基礎(chǔ)知識 2. 1 AT90LS8535單片機(jī)的總體結(jié)構(gòu) 2. 1. 1 AT90LS8535單片機(jī)的中央處理器 2. 1. 2 AT90LS8535單片機(jī)的存儲器組織 2. 1. 3 AT90LS8535單片機(jī)的I/O接口 2. 1. 4 AT90LS8535單片機(jī)的內(nèi)部資源 2. 1. 5 AT90LS8535單片機(jī)的時鐘電路 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 指令類型及數(shù)據(jù)操作方式 2. 3 應(yīng)用程序設(shè)計 2. 3. 1 程序設(shè)計方法 2. 3. 2 應(yīng)用程序舉例 第3章 AT90LS8535單片機(jī)的C編程 3. 1 支持高級語言編程的AVR系列單片機(jī) 3. 2 AVR的C編譯器 3. 3 ICCAVR介紹 3. 3. 1 安裝ICCAVR 3. 3. 2 設(shè)置ICCAVR 3. 4 用ICCAVR編寫應(yīng)用程序 3. 5 下載程序文件 第4章 數(shù)據(jù)類型. 運(yùn)算符和表達(dá)式 4. 1 ICCAVR支持的數(shù)據(jù)類型 4. 2 常量與變量 4. 2. 1 常量 4. 2. 2 變量 4. 3 AT90LS8535的存儲空間 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 逗號運(yùn)算 第5章 控制流 5. 1 C語言的結(jié)構(gòu)化程序設(shè)計 5. 1. 1 順序結(jié)構(gòu) 5. 1. 2 選擇結(jié)構(gòu) 5. 1. 3 循環(huán)結(jié)構(gòu) 5. 2 選擇語句 5. 2. 1 if語句 5. 2. 2 switch分支 5. 2. 3 選擇語句的嵌套 5. 3 循環(huán)語句 5. 3. 1 while語句 5. 3. 2 do…while語句 5. 3. 3 for語句 5. 3. 4 循環(huán)語句嵌套 5. 3. 5 break語句和continue語句 第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 變量的類型及其存儲方式 6. 3. 1 局部變量 6. 3. 2 局部變量的存儲方式 6. 3. 3 全局變量 6. 3. 4 全局變量的存儲方式 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ù)組元素的引用 通過指針 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ù)類型和運(yùn)算小結(jié) 7. 7. 1 有關(guān)指針的數(shù)據(jù)類型的小結(jié) 7. 7. 2 指針運(yùn)算的小結(jié) 第8章 結(jié)構(gòu)體和共用體 8. 1 結(jié)構(gòu)體的定義和引用 8. 1. 1 結(jié)構(gòu)體類型變量的定義 8. 1. 2 結(jié)構(gòu)體類型變量的引用 8. 2 結(jié)構(gòu)類型的說明 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)體類型變量的指針 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ù)器 9. 4. 1 定時/計數(shù)器的分頻器 9. 4. 2 8位定時/計數(shù)器0 9. 4. 3 16位定時/計數(shù)器1 9. 4. 4 8位定時/計數(shù)器2 9. 5 EEPROM 9. 5. 1 與EEPROM有關(guān)的寄存器 9. 5. 2 EEPROM讀/寫操作 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 鍵盤接口 10. 1. 1 非矩陣式鍵盤 10. 1. 2 矩陣式鍵盤 10. 2 LED顯示輸出 10. 2. 1 LED的靜態(tài)顯示 10. 2. 2 LED的動態(tài)掃描顯示 10. 2. 3 動態(tài)掃描顯示專用芯片MC14489 10. 3 LCD顯示輸出 10. 3. 1 字符型LCD 10. 3. 2 點(diǎn)陣型LCD 10. 4 ISD2500系列語音芯片的編程 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ī)的接口和邏輯時序 10. 5. 2 P-uP打印機(jī)的打印命令和字符代碼 10. 5. 3 AT90LS8535與TP-uP系列打印機(jī)的接口及編程 10. 6 IC卡 10. 6. 1 IC卡讀寫裝置 10. 6. 2 IC卡軟件 第11章 AT90LS8535的外圍擴(kuò)展 11. 1 簡單I/O擴(kuò)展芯片 11. 1. 1 用74LS377擴(kuò)展數(shù)據(jù)輸出接口 11. 1. 2 數(shù)據(jù)輸入接口 11. 2 模擬量輸出 11. 2. 1 D/A轉(zhuǎ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ù)器 11. 4. 4 8155的命令和狀態(tài)字 11. 4. 5 AT90LS8535與8155的接口及編程 11. 5 定時/計數(shù)器芯片8253 11. 5. 1 8253的信號引腳和邏輯結(jié)構(gòu) 11. 5. 2 8253的工作方式 11. 5. 3 8253的控制字 11. 5. 4 AT90LS8535與8253的接口及編程 11. 6 實時時鐘芯片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的溫度測量 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)用實例 第13章 系統(tǒng)設(shè)計中的程序處理方法 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īng)用實例
上傳時間: 2013-11-04
上傳用戶:元宵漢堡包
c語言編程軟件vc6.0使用教程,附件包含二個教程文件,VC++6.0培訓(xùn)教程完整版及VC6.0介紹。 Visual C++ 6.0,簡稱VC或者VC6.0,是微軟的一款C++編譯器,將“高級語言”翻譯為“機(jī)器語言(低級語言)”的程序。Visual C++是一個功能強(qiáng)大的可視化軟件開發(fā)工具。自1993年Microsoft公司推出Visual C++1.0后,隨著其新版本的不斷問世,Visual C++已成為專業(yè)程序員進(jìn)行軟件開發(fā)的首選工具。雖然微軟公司推出了 Visual C++.NET(Visual C++7.0),但它的應(yīng)用有很大的局限性,只適用于Windows 2000、Windows XP和Windows NT4.0。所以實際中,更多的是以Visual C++6.0為平臺。 vc6.0使用你首先要打開VC6.0界面,一般用得較多的是Win32控制臺應(yīng)用程序(源程序,擴(kuò)展名.cpp), 步驟是:(先工程—后文件—編譯—連接---運(yùn)行) 1,建立一個工程,“文件”——“新建”,出現(xiàn)下面界面:選擇“Win32 Console Application”(控制臺應(yīng)用程序,左邊倒數(shù)第三個),命名工程名稱,選擇保存位置。 點(diǎn)擊“確定”,進(jìn)入下一步,看到如下提示界面: 建立一個空工程,對應(yīng)其他需要的你一可以建立別的工程;點(diǎn)擊“完成”,之后 顯示你創(chuàng)建的工程的信息。 2,再在有一個的工程的條件下,我們再建立一個源文件; “文件”——“新建”(快捷鍵Ctri+N),出現(xiàn): 建立源文件,選擇“C++ Source ”,一般都是建立這種文件的(適用在當(dāng)文件中適用)如果要建立頭文件的話,選擇“C/C++ Header File”,(適用在多文件工程中使用)命名,文件名稱,點(diǎn)擊“確定”,之后: 進(jìn)入編輯區(qū),在主界面編寫代碼:如下編寫完之后呢: 可以按編譯按鈕 調(diào)試程序,看看有沒有錯誤,有的話改正,沒有的話就可以再按連接按鈕 檢查連接(多文件工程時常用,檢查文件間是否正常連接),最后,點(diǎn)運(yùn)行按鈕 ,就可以運(yùn)行了。 如果是您有代碼如:cpp文件,或 .h 文件,想添加都VC6.0里來測試的話,可以這樣做: 首先,要理解一下 文件擴(kuò)展名為:cpp和.h 文件擴(kuò)張名是.h,代表的是頭文件,一般是書寫一些函數(shù)原型,以及一些在整個程序中常用到的結(jié)構(gòu)體,頻繁使用的函數(shù)說明,定義等等; 文件擴(kuò)張名為,cpp的,是C++中的源文件,也是最常用到的文件,每建立一個工程都要至少一個源文件(至少要有一個函數(shù)入口——主函數(shù)main() ),包含了核心代碼; 建立與運(yùn)行說明:(以VC 6.0編譯器為例,其他編譯器類似) 首先,打開VC 6.0編譯環(huán)境; 在菜單欄——文件(的下拉菜單中選擇“新建”),在彈出的選擇窗口中,選擇 Win32 Console Application(控制臺應(yīng)用程序) ,在填寫工程名稱,選擇一個程序保存路徑, 點(diǎn)擊“完成”,查看工程信息。 在點(diǎn)擊“確定”,就建立一個簡單的工程了。 再點(diǎn)擊左邊的工程信息右下角的“FileView”選項; 可以看到你新建的工程,再雙擊你新建的工程名 可以查看工程的信息。 在雙擊工程文件,在這里是 777.files,可以看到該工程的包含的文件。 其中,Source Files 為包含所有工程的源文件 Header Files 為包含所有工程的頭文件 在源文件選項“Source Files ”,右鍵單擊中的“添加目錄到工程”,添加你要打開的擴(kuò)展名為 .cpp的源文件。在頭文件選項“ Header Files”,右鍵單擊中的“添加目錄到工程”,添加你要打開的擴(kuò)展名為 . h的頭文件。添加完你所有的頭文件和源文件之后,檢查一下是否添加完畢,之后就可以編譯了。 其中第一個按鈕 為編譯按鈕,可以找出工程的錯誤信息,有錯誤修改,沒錯誤就可以跳到連接 ,編譯右邊的按鈕 ,即第三個按鈕(多文件工程一定要連接,查看文件是否準(zhǔn)確相連接) 當(dāng)編譯,連接都沒有錯誤時,可以按運(yùn)行按鈕 ,即可以運(yùn)行了。 相關(guān)資料:vc6.0中文綠色版下載
上傳時間: 2013-10-30
上傳用戶:tianjinfan
蟲蟲下載站版權(quán)所有 京ICP備2021023401號-1