如果你用的是老版本下載線,請把程序目錄下的EasyIsp.ini文件刪除 EasyIsp.ini的默認(rèn)配置只支持EasyIsp_2.Sch中的電路 如果你用的是老版本下載線,請把程序目錄下的EasyIsp.ini文件刪除
上傳時(shí)間: 2013-12-18
上傳用戶:lacsx
用C 語言來開發(fā)單片機(jī)系統(tǒng)軟件最大的好處是編寫代碼效率高、軟件調(diào)試直觀、維護(hù)升級方便、代碼的重復(fù)利用率高、便于跨平臺(tái)的代碼移植等等,因此C 語言編程在單片機(jī)系統(tǒng)設(shè)計(jì)中已得到越來越廣泛的運(yùn)用。針對PIC 單片機(jī)的軟件開發(fā),同樣可以用C 語言實(shí)現(xiàn)。但在單片機(jī)上用C 語言寫程序和在PC 機(jī)上寫程序絕對不能簡單等同。現(xiàn)在的PC 機(jī)資源十分豐富,運(yùn)算能力強(qiáng)大,因此程序員在寫PC 機(jī)的應(yīng)用程序時(shí)幾乎不用關(guān)心編譯后的可執(zhí)行代碼在運(yùn)行過程中需要占用多少系統(tǒng)資源,也基本不用擔(dān)心運(yùn)行效率有多高。寫單片機(jī)的C 程序最關(guān)鍵的一點(diǎn)是單片機(jī)內(nèi)的資源非常有限,控制的實(shí)時(shí)性要求又很高,因此,如果沒有對單片機(jī)體系結(jié)構(gòu)和硬件資源作詳盡的了解,以筆者的愚見認(rèn)為是無法寫出高質(zhì)量實(shí)用的C 語言程序。這就是為什么前面所有章節(jié)中的的示范代碼全部用基礎(chǔ)的匯編指令實(shí)現(xiàn)的原因,希望籍此能使讀者對PIC 單片機(jī)的指令體系和硬件資源有深入了解,在這基礎(chǔ)之上再來討論C 語言編程,就有水到渠成的感覺。本書圍繞中檔系列PIC 單片機(jī)來展開討論,Microchip 公司自己沒有針對中低檔系列PIC單片機(jī)的C 語言編譯器,但很多專業(yè)的第三方公司有眾多支持PIC 單片機(jī)的C 語言編譯器提供,常見的有Hitech、CCS、IAR、Bytecraft 等公司。其中筆者最常用的是Hitech 公司的PICC編譯器,它穩(wěn)定可靠,編譯生成的代碼效率高,在用PIC 單片機(jī)進(jìn)行系統(tǒng)設(shè)計(jì)和開發(fā)的工程師群體中得到廣泛認(rèn)可。其正式完全版軟件需要購置,但在其網(wǎng)站上有限時(shí)的試用版供用戶評估。另外,Hitech 公司針對廣大PIC 的業(yè)余愛好者和初學(xué)者還提供了完全免費(fèi)的學(xué)習(xí)版PICC-Lite 編譯器套件,它的使用方式和完全版相同,只是支持的PIC 單片機(jī)型號限制在PIC16F84、PIC16F877 和PIC16F628 等幾款。這幾款Flash 型的單片機(jī)因其所具備的豐富的片上資源而最適用于單片機(jī)學(xué)習(xí)入門,因此筆者建議感興趣的讀者可從PICC-Lite 入手掌握PIC 單片機(jī)的C 語言編程。
上傳時(shí)間: 2013-11-17
上傳用戶:aa54
單片機(jī)開發(fā)中除必要的硬件外,同樣離不開軟件,我們寫的匯編語言源程序要變?yōu)镃PU可以執(zhí)行的機(jī)器碼有兩種方法,一種是手工匯編,另一種是機(jī)器匯編,目前已極少使用手工匯編的方法了。機(jī)器匯編是通過匯編軟件將源程序變?yōu)闄C(jī)器碼,用于MCS-51 單片機(jī)的匯編軟件有早期的A51,隨著單片機(jī)開發(fā)技術(shù)的不斷發(fā)展,從普遍使用匯編語言到逐漸使用高級語言開發(fā),單片機(jī)的開發(fā)軟件也在不斷發(fā)展,Keil 軟件是目前最流行開發(fā)MCS-51 系列單片機(jī)的軟件,這從近年來各仿真機(jī)廠商紛紛宣布全面支持Keil 即可看出。Keil 提供了包括C編譯器、宏匯編、連接器、庫管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個(gè)集成開發(fā)環(huán)境(uVision)將這些部份組合在一起。運(yùn)行Keil 軟件需要Pentium 或以上的CPU,16MB或更多RAM、20M 以上空閑的硬盤空間、WIN98、NT、WIN2000、WINXP等操作系統(tǒng)。掌握這一軟件的使用對于使用51 系列單片機(jī)的愛好者來說是十分必要的,如果你使用C 語言編程,那么Keil 幾乎就是你的不二之選(目前在國內(nèi)你只能買到該軟件、而你買的仿真機(jī)也很可能只支持該軟件),即使不使用C 語言而僅用匯編語言編程,其方便易用的集成環(huán)境、強(qiáng)大的軟件仿真調(diào)試工具也會(huì)令你事半功倍。我們將通過一些實(shí)例來學(xué)習(xí)Keil 軟件的使用,在這一部份我們將學(xué)習(xí)如何輸入源程序,建立工程、對工程進(jìn)行詳細(xì)的設(shè)置,以及如何將源程序變?yōu)槟繕?biāo)代碼。圖1 所示電路圖使用89C51 單片機(jī)作為主芯片,這種單片機(jī)性屬于MCS-51 系列,其內(nèi)部有4K 的FLASH ROM,可以反復(fù)擦寫,非常適于做實(shí)驗(yàn)。89C51 的P1 引腳上接8 個(gè)發(fā)光二極管,P3.2~P3.4 引腳上接4 個(gè)按鈕開關(guān),我們的第一個(gè)任務(wù)是讓接在P1 引腳上的發(fā)光二極管依次循環(huán)點(diǎn)亮。 一、Keil 工程的建立首先啟動(dòng)Keil 軟件的集成開發(fā)環(huán)境,這里假設(shè)讀者已正確安裝了該軟件,可以從桌面上直接雙擊uVision 的圖標(biāo)以啟動(dòng)該軟件。UVison啟動(dòng)后,程序窗口的左邊有一個(gè)工程管理窗口,該窗口有3 個(gè)標(biāo)簽,分別是Files、Regs、和Books,這三個(gè)標(biāo)簽頁分別顯示當(dāng)前項(xiàng)目的文件結(jié)構(gòu)、CPU 的寄存器及部份特殊功能寄存器的值(調(diào)試時(shí)才出現(xiàn))和所選CPU 的附加說明文件,如果是第一次啟動(dòng)Keil,那么這三個(gè)標(biāo)簽頁全是空的。
上傳時(shí)間: 2013-12-26
上傳用戶:liulinshan2010
HI-TECH PICC C 的使用說明. 這里我們只講述了PICC C 與標(biāo)準(zhǔn)C 的不同,它不是一本C 語言的教程, 并且我們假定你有C 語言的基礎(chǔ). 為了對PIC 單片機(jī)有更好的支持,PICC 在標(biāo)準(zhǔn)C 的基礎(chǔ)上作了一些擴(kuò)充: 定義I/O 函數(shù),以便在你的硬件系統(tǒng)中使用<stdio.h>中定義的函數(shù)。 用C 語言編寫中斷服務(wù)程序 用C 語言編寫I/O 操作程序 C 語言與匯編語言間的接口1-1 與標(biāo)準(zhǔn)C 的不同PICC 只在一處與標(biāo)準(zhǔn)C 不同:函數(shù)的重入。因?yàn)镻IC 單片機(jī)的寄存器及堆棧有限,所以PICC 不支持可重入函數(shù)。1-2 支持的PIC 芯片PICC 支持很多PIC 單片機(jī),支持PIC 單片機(jī)的類型在LIB 目錄下的picinfo.ini文件中有定義。1-3 PICC 包含一些標(biāo)準(zhǔn)庫1-4 PICC 編譯器可以輸出一些格式的目標(biāo)文件,缺省設(shè)置為輸出Bytecraft 的'COD'格式和 Intel 的'HEX'格式。你可以用表1-1 中的命令來指定輸出格式。
上傳時(shí)間: 2013-10-10
上傳用戶:781354052
在單片機(jī)應(yīng)用開發(fā)中,代碼的使用效率問題、單片機(jī)抗干擾性和可靠性等問題仍困擾著 工程師。為幫助工程師解決單片機(jī)設(shè)計(jì)上的難題,《電子工程專輯》網(wǎng)站特邀Holtek香 港分公司工程部處長鄧宏杰先生擔(dān)任《單片機(jī)應(yīng)用編程技巧》專題討論的嘉賓,與廣大 設(shè)計(jì)工程師交流單片機(jī)設(shè)計(jì)開發(fā)經(jīng)驗(yàn)。現(xiàn)根據(jù)論壇中的討論歸納出單片機(jī)開發(fā)中應(yīng)掌握 的幾個(gè)基本技巧。一、 如何提高C語言編程代碼的效率鄧宏杰指出,用C語言進(jìn)行單片機(jī)程序設(shè)計(jì)是單片機(jī)開發(fā)與應(yīng)用的必然趨勢。他強(qiáng)調(diào):“ 如果使用C編程時(shí),要達(dá)到最高的效率,最好熟悉所使用的C編譯器。先試驗(yàn)一下每條C語言編譯以后對應(yīng)的匯編語言的語句行數(shù),這樣就可以很明確的知道效率。在今后編程的 時(shí)候,使用編譯效率最高的語句。” 他指出,各家的C編譯器都會(huì)有一定的差異,故編譯效率也會(huì)有所不同,優(yōu)秀的嵌入式系統(tǒng)C編譯器代碼長度和執(zhí)行時(shí)間僅比以匯編語言編寫的同樣功能程度長5-20%。他說:“對于復(fù)雜而開發(fā)時(shí)間緊的項(xiàng)目時(shí),可以采用C語言,但前提是要求你對該MCU系統(tǒng)的C語言和C編譯器非常熟悉,特別要注意該C編譯系統(tǒng)所能支持的數(shù)據(jù)類型和算法。雖然C語言是最普遍的一種高級語言,但由于不同的MCU廠家其C語言編譯系統(tǒng)是有所差別的,特別是在一些特殊功能模塊的操作上。所以如果對這些特性不了解,那么調(diào)試起來問題就會(huì)很 多,反而導(dǎo)致執(zhí)行效率低于匯編語言。” 二、 如何減少程序中的bug? 對于如何減少程序的bug,鄧宏杰給出了一些建議,他指出系統(tǒng)運(yùn)行中應(yīng)考慮的超范圍管理參數(shù)有: 1.物理參數(shù)。這些參數(shù)主要是系統(tǒng)的輸入?yún)?shù),它包括激勵(lì)參數(shù)、采集處理中的運(yùn)行參 數(shù)和處理結(jié)束的結(jié)果參數(shù)。合理設(shè)定這些邊界,將超出邊界的參數(shù)都視為非正常激勵(lì)或 非正常回應(yīng)進(jìn)行出錯(cuò)處理。 2.資源參數(shù)。這些參數(shù)主要是系統(tǒng)中的電路、器件、功能單元的資源,如記憶體容量、 存儲(chǔ)單元長度、堆疊深度。在程式設(shè)計(jì)中,對資源參數(shù)不允許超范圍使用。 3.應(yīng)用參數(shù)。這些應(yīng)用參數(shù)常表現(xiàn)為一些單片機(jī)、功能單元的應(yīng)用條件。如E2PROM的擦 寫次數(shù)與資料存儲(chǔ)時(shí)間等應(yīng)用參數(shù)界限。 4.過程參數(shù)。指系統(tǒng)運(yùn)行中的有序變化的參數(shù)。
標(biāo)簽: 單片機(jī)開發(fā) 基本技巧
上傳時(shí)間: 2013-10-21
上傳用戶:chukeey
技術(shù)說明:線圈總長度應(yīng)在20 ~ 30米左右,地感線應(yīng)用橫截面大于等于0.5 平方毫米的耐高溫絕緣線;用切地機(jī)在堅(jiān)硬水泥地面切槽,深度為 5~10 cm 左右,寬以切刻片厚度為準(zhǔn)一般為5mm;然后將線一圈一圈放入槽中,再用水泥將槽封固,注意線不可浮出地面,在放入線圈時(shí)注意不要把線的絕緣層破壞,以免造成漏電或短路.引出線要雙絞在一起并行接入地感兩個(gè)LOOP 端,長度不能超過4米,每米中雙絞數(shù)不能少于30個(gè).
上傳時(shí)間: 2013-11-04
上傳用戶:zhaoq123
Keil C51 使用技巧及實(shí)戰(zhàn):到你的程序中這本書將教你充分使用你的工具如果你只有8051 的匯編程序你也可以學(xué)習(xí)該書和使用這些例子但是你必須把C 語言的程序裝入你的匯編程序中這對懂得C 語言和8051匯編程序指令的人來說并不是一件困難的事如果你有C 編譯器的話那恭喜你使用C 語言進(jìn)行開發(fā)是一個(gè)好的決定你會(huì)發(fā)現(xiàn)使用C 進(jìn)行開發(fā)將使你的工程開發(fā)和維護(hù)的時(shí)間大大減少如果你已經(jīng)擁有Keil C51 那你已經(jīng)選擇了一個(gè)非常好的開發(fā)工具我發(fā)現(xiàn)Keil 軟件包能夠提供最好的支持本書支持Keil C 的擴(kuò)展如果你有其它的開發(fā)工具像Archimedes 和Avocet 這本書也能很好地為你服務(wù)但你必須根據(jù)你所用的開發(fā)工具改變一些Keil 的特殊指令在書的一些地方有硬件圖實(shí)例程序在這些硬件上運(yùn)行這些圖繪制地不是很詳細(xì)主要是方框圖但足以使讀者明白軟件和硬件之間的接口讀者應(yīng)該把這本書看成工具書而不是用來學(xué)習(xí)各種系統(tǒng)設(shè)計(jì)通過本書你可以了解給定一定的硬件和軟件設(shè)計(jì)之后8051 的各種性能希望你能從本書中獲取靈感并有助于你的設(shè)計(jì)使你豁然開朗當(dāng)然我希望你也能夠從本書中學(xué)到有用的知識(shí)使之能夠提升你的設(shè)計(jì)。
上傳時(shí)間: 2013-10-27
上傳用戶:Jerry_Chow
ICCAVR中文使用說明:ICCAVR 介紹1 ImageCraft 的ICCAVR 介紹ImageCraft 的ICCAVR 是一種使用符合ANSI 標(biāo)準(zhǔn)的C 語言來開發(fā)微控制器MCU程序的一個(gè)工具它有以下幾個(gè)主要特點(diǎn)ICCAVR 是一個(gè)綜合了編輯器和工程管理器的集成工作環(huán)境IDE 其可在WINDOWS9X/NT 下工作源文件全部被組織到工程之中文件的編輯和工程的構(gòu)筑也在這個(gè)環(huán)境中完成編譯錯(cuò)誤顯示在狀態(tài)窗口中并且當(dāng)你用鼠標(biāo)單擊編譯錯(cuò)誤時(shí)光標(biāo)會(huì)自動(dòng)跳轉(zhuǎn)到編輯窗口中引起錯(cuò)誤的那一行這個(gè)工程管理器還能直接產(chǎn)生您希望得到的可以直接使用的INTELHEX 格式文件INTEL HEX 格式文件可被大多數(shù)的編程器所支持用于下載程序到芯片中去ICCAVR 是一個(gè)32 位的程序支持長文件名出于篇幅考慮本說明書并不介紹通用的C 語言語法知識(shí)僅介紹使用ICC AVR 所必須具備的知識(shí)因此要求讀者在閱讀本說明書之前應(yīng)對C 語言有了一定程度的理解2 ICCAVR 中的文件類型及其擴(kuò)展名文件類型是由它們的擴(kuò)展名決定的IDE 和編譯器可以使用以下幾種類型的文件輸入文件.c 擴(kuò)展名----表示是C 語言源文件.s 擴(kuò)展名----表示是匯編語言源文件.h 擴(kuò)展名----表示是C 語言的頭文件.prj 擴(kuò)展名----表示是工程文件這個(gè)文件保存由IDE 所創(chuàng)建和修改的一個(gè)工程的有關(guān)信息.a 擴(kuò)展名----庫文件它可以由幾個(gè)庫封裝在一起libcavr.a 是一個(gè)包含了標(biāo)準(zhǔn)C 的庫和AVR 特殊程序調(diào)用的基本庫如果庫被引用鏈接器會(huì)將其鏈接到您的模塊或文件中您也可以創(chuàng)建或修改一個(gè)符合你需要的庫輸出文件.s 對應(yīng)每個(gè)C 語言源文件由編譯器在編譯時(shí)產(chǎn)生的匯編輸出文件.o 由匯編文件匯編產(chǎn)生的目標(biāo)文件多個(gè)目標(biāo)文件可以鏈接成一個(gè)可執(zhí)行文件.hex INTEL HEX 格式文件其中包含了程序的機(jī)器代碼.eep INTEL HEX 格式文件包含了EEPROM 的初始化數(shù)據(jù).cof COFF 格式輸出文件用于在ATMEL 的AvrStudio 環(huán)境下進(jìn)行程序調(diào)試.lst 列表文件在這個(gè)文件中列舉出了目標(biāo)代碼對應(yīng)的最終地址.mp 內(nèi)存映象文件它包含了您程序中有關(guān)符號及其所占內(nèi)存大小的信息.cmd NoICE 2.xx 調(diào)試命令文件.noi NoICE 3.xx 調(diào)試命令文件.dbg ImageCraft 調(diào)試命令文件
上傳時(shí)間: 2013-10-29
上傳用戶:truth12
使用C語言肯定要使用到C編譯器,以便把寫好的C程序編譯為機(jī)器碼,這樣單片機(jī)才能執(zhí)行編寫好的程序。KEIL uVISION2是眾多單片機(jī)應(yīng)用開發(fā)軟件中優(yōu)秀的軟件之一,它支持眾多不同公司的MCS51架構(gòu)的芯片,它集編輯,編譯,仿真等于一體,同時(shí)還支持,PLM,匯編和C語言的程序設(shè)計(jì),它的界面和常用的微軟VC++的界面相似,界面友好,易學(xué)易用,在調(diào)試程序,軟件仿真方面也有很強(qiáng)大的功能。因此很多開發(fā)51應(yīng)用的工程師或普通的單片機(jī)愛好者,都對它十分喜歡。 以上簡單介紹了KEIL51軟件,要使用KEIL51軟件,必需先要安裝它。KEIL51是一個(gè)商業(yè)的軟件,對于我們這些普通愛好者可以到KEIL中國代理周立功公司的網(wǎng)站上下載一份能編譯2K的DEMO版軟件,基本可以滿足一般的個(gè)人學(xué)習(xí)和小型應(yīng)用的開發(fā)。(安裝的方法和普通軟件相當(dāng)這里就不做介紹了) 安裝好后,你是不是迫不及待的想建立自己的第一個(gè)C程序項(xiàng)目呢?下面就讓我們一起來建立一個(gè)小程序項(xiàng)目吧。或許你手中還沒有一塊實(shí)驗(yàn)板,甚至沒有一塊單片機(jī),不過沒有關(guān)系我們可以通過KEIL軟件仿真看到程序運(yùn)行的結(jié)果。 首先當(dāng)然是運(yùn)行KEIL51軟件。怎么打開?噢,天!那你要從頭學(xué)電腦了。呵呵,開個(gè)玩笑,這個(gè)問題我想讀者們也不會(huì)提的了:P。運(yùn)行幾秒后,出現(xiàn)如圖1-1的屏幕。
上傳時(shí)間: 2013-11-10
上傳用戶:邶刖
這是一本關(guān)于Intel 80C51 以及廣大的51 系列單片機(jī)的書這本書介紹給讀者一些新的技術(shù)使你的8051 工程和開發(fā)過程變得簡單請注意這本書的目的可不是教你各種8051 嵌入式系統(tǒng)的解決方法為使問題討論更加清晰在適當(dāng)?shù)牡胤浇o出了程序代碼我們以討論項(xiàng)目的方法來說明每章碰到的問題所有的代碼都可在附帶的光盤上找到你必須熟系C 和8051 匯編因?yàn)楸緯皇且槐綜 和匯編的指導(dǎo)書你可以買到不少關(guān)于ANSI C 的書最佳選擇當(dāng)然是Intel的數(shù)據(jù)書可從你的芯片供應(yīng)商處免費(fèi)索取和隨編譯工具附送的手冊附送光盤中有我為這本書編寫和收集的程序這些程序已經(jīng)通過測試這并不意味著你可以隨時(shí)把這些程序加到你的應(yīng)用系統(tǒng)或工程中有些地方必須首先經(jīng)過修改才能結(jié)合到你的程序中這本書將教你充分使用你的工具如果你只有8051 的匯編程序你也可以學(xué)習(xí)該書和使用這些例子但是你必須把C 語言的程序裝入你的匯編程序中這對懂得C 語言和8051匯編程序指令的人來說并不是一件困難的事如果你有C 編譯器的話那恭喜你使用C 語言進(jìn)行開發(fā)是一個(gè)好的決定你會(huì)發(fā)現(xiàn)使用C 進(jìn)行開發(fā)將使你的工程開發(fā)和維護(hù)的時(shí)間大大減少如果你已經(jīng)擁有Keil C51 那你已經(jīng)選擇了一個(gè)非常好的開發(fā)工具我發(fā)現(xiàn)Keil 軟件包能夠提供最好的支持本書支持Keil C 的擴(kuò)展如果你有其它的開發(fā)工具像Archimedes 和Avocet 這本書也能很好地為你服務(wù)但你必須根據(jù)你所用的開發(fā)工具改變一些Keil 的特殊指令在書的一些地方有硬件圖實(shí)例程序在這些硬件上運(yùn)行這些圖繪制地不是很詳細(xì)主要是方框圖但足以使讀者明白軟件和硬件之間的接口讀者應(yīng)該把這本書看成工具書而不是用來學(xué)習(xí)各種系統(tǒng)設(shè)計(jì)通過本書你可以了解給定一定的硬件和軟件設(shè)計(jì)之后8051 的各種性能希望你能從本書中獲取靈感并有助于你的設(shè)計(jì)使你豁然開朗當(dāng)然我希望你也能夠從本書中學(xué)到有用的知識(shí)使之能夠提升你的設(shè)計(jì) 8051 系列微處理器基于簡化的嵌入式控制系統(tǒng)結(jié)構(gòu)被廣泛應(yīng)用于從軍事到自動(dòng)控制再到PC 機(jī)上的鍵盤上的各種應(yīng)用系統(tǒng)上僅次于Motorola 68HC11 在 8 位微控制器市場上的銷量很多制造商都可提供8051 系列單片機(jī)像Intel Philips Siemens 等這些制造商給51 系列單片機(jī)加入了大量的性能和外部功能像I2C 總線接口模擬量到數(shù)字量的轉(zhuǎn)換看門狗PWM 輸出等不少芯片的工作頻率達(dá)到40M 工作電壓下降到1.5V 基于一個(gè)內(nèi)核的這些功能使得8051 單片機(jī)很適合作為廠家產(chǎn)品的基本構(gòu)架它能夠運(yùn)行各種程序而且開發(fā)者只需要學(xué)習(xí)這一個(gè)平臺(tái)8051 系列的基本結(jié)構(gòu)如下1 一個(gè)8 位算術(shù)邏輯單元2 32 個(gè)I/O 口4 組8 位端口可單獨(dú)尋址3 兩個(gè)16 位定時(shí)計(jì)數(shù)器4 全雙工串行通信5 6 個(gè)中斷源兩個(gè)中斷優(yōu)先級6 128 字節(jié)內(nèi)置RAM7 獨(dú)立的64K 字節(jié)可尋址數(shù)據(jù)和代碼區(qū)每個(gè)8051 處理周期包括12 個(gè)振蕩周期每12 個(gè)振蕩周期用來完成一項(xiàng)操作如取指令和計(jì)算指令執(zhí)行時(shí)間可把時(shí)鐘頻率除以12 取倒數(shù)然后指令執(zhí)行所須的周期數(shù)因此如果你的系統(tǒng)時(shí)鐘是11.059MHz 除以12 后就得到了每秒執(zhí)行的指令個(gè)數(shù)為921583條指令取倒數(shù)將得到每條指令所須的時(shí)間1.085ms
上傳時(shí)間: 2013-11-09
上傳用戶:chenlong
蟲蟲下載站版權(quán)所有 京ICP備2021023401號-1