微型打印機的C語言源程序:微型打印機的C51源程序#define uchar unsigned char#define uint unsigned int#include <reg52.h>#include <stdio.h>#include <absacc.h>#include <math.h>#include <string.h>#include <ctype.h>#include <stdlib.h>#define PIN XBYTE[0x8000]#define POUT XBYTE[0x9000]sbit PRINTSTB =P1^6;sbit DOG=P1^7;bdata char pin&#118alue;sbit PRINTBUSY=pin&#118alue^7;sbit PRINTSEL =pin&#118alue^6;sbit PRINTERR =pin&#118alue^5;sbit PRINTACK =pin&#118alue^4; void PrintString(uchar *String1,uchar *String2);void initprint(void);void print(uchar a); void initprint(void) //打印機初始化子程序 { pin&#118alue=PIN; if((PRINTSEL==1)&&(PRINTERR==1)) { print(0x1b); print(0x40); print(0x1b); print(0x38); print(0x4); }}void print(uchar a) //打印字符a{ pin&#118alue=PIN; if((PRINTSEL==0)||(PRINTERR==0)) return; for(;;) { DOG=~DOG; pin&#118alue=PIN; if(PRINTBUSY==0) break; } DOG=~DOG; POUT=a; PRINTSTB=1; PRINTSTB=1; PRINTSTB=1; PRINTSTB=1; PRINTSTB=0; PRINTSTB=0; PRINTSTB=0; PRINTSTB=0; PRINTSTB=1;}void PrintString(uchar *String) //打印字符串后回車{ uchar CH; for (;;) { DOG=~DOG; CH=*String; if (CH==0) { print(0x0d); break; } print(CH); String++; } initprint();}
上傳時間: 2013-10-18
上傳用戶:hasan2015
ICCAVR V6.31A下載,ICCAVR專業版,AVR單片機C語言開發軟件。目前國內用的最廣泛的AVR單片機開發軟件。 推薦大家使用:ICCAVR V6.31A。 1、運行iccavr6.31A進行軟件安裝,注此注冊機只支持這此版本。 2、打開安裝完的軟件,在HELP選項下選Register software,會彈出注冊窗口。 3、復制注冊窗口中的硬件碼。 4、運行keygen.p1里面的注冊機,將硬件碼寫入,執行生成命令(注意選擇軟件版本)。 5、將得到的密碼復制回注冊窗口,執行安裝即可。 6、軟件將自動關閉,重新打開后,即為正式版了。
上傳時間: 2013-12-11
上傳用戶:sklzzy
AVR系統單片機C語言編程與應用實例針對Atmel公司的AVR系列單片機和ImageCraft公司的ICC AVR開發環境,詳細地介紹了AT90LS8535的C語言程序設計。全書共有13章,其內容既涉及到了單片機的結構原理、指令系統、內容資源和外部功能擴展,又包含了單片機的編程工具——ICC AVR C編程器的數據類型、控制流、函數和指針等。本書的特點是:深入淺出,從最基本的概念開始,循序漸進地講解單片機的應用開發;列舉了大量實例,使讀者能從實際應用中掌握單片機的開發與應用技術。本書適合作為從事單片機開發人員的參考用書。
上傳時間: 2013-10-19
上傳用戶:xz85592677
AVR單片機C語言開發入門指導:本書介紹了ICCAVR編譯器使用C語言的有關知識,也穿插介紹ICCAVR與常用的其他C編譯器使用C語言的一些異同點,并簡單介紹ICCAVR的集成環境和ICCAVR 6.26C能支持的庫函數。本書重點放在如何利用C語言來操作AVR單片機的硬件資源,以及如何編寫一些實用的程序段,最后再通過一些簡單的應用實例來說明如何使用C語言一開發AVR芯片。本書適合開發AVR單片機的工程技術人員,也適合大中專院校。 推薦圖書:介紹了C語言知識、并給出了操作單片機硬件的例程,后面簡單地介紹了其它幾款C編譯器。本書非常適合AVR單片機初學者學習使用。
上傳時間: 2013-10-23
上傳用戶:liglechongchong
這是一本關于Intel 80C51 以及廣大的51 系列單片機的書這本書介紹給讀者一些新的技術使你的8051 工程和開發過程變得簡單請注意這本書的目的可不是教你各種8051 嵌入式系統的解決方法為使問題討論更加清晰在適當的地方給出了程序代碼我們以討論項目的方法來說明每章碰到的問題所有的代碼都可在附帶的光盤上找到你必須熟系C 和8051 匯編因為本書不是一本C 和匯編的指導書你可以買到不少關于ANSI C 的書最佳選擇當然是Intel的數據書可從你的芯片供應商處免費索取和隨編譯工具附送的手冊附送光盤中有我為這本書編寫和收集的程序這些程序已經通過測試這并不意味著你可以隨時把這些程序加到你的應用系統或工程中有些地方必須首先經過修改才能結合到你的程序中這本書將教你充分使用你的工具如果你只有8051 的匯編程序你也可以學習該書和使用這些例子但是你必須把C 語言的程序裝入你的匯編程序中這對懂得C 語言和8051匯編程序指令的人來說并不是一件困難的事如果你有C 編譯器的話那恭喜你使用C 語言進行開發是一個好的決定你會發現使用C 進行開發將使你的工程開發和維護的時間大大減少如果你已經擁有Keil C51 那你已經選擇了一個非常好的開發工具我發現Keil 軟件包能夠提供最好的支持本書支持Keil C 的擴展如果你有其它的開發工具像Archimedes 和Avocet 這本書也能很好地為你服務但你必須根據你所用的開發工具改變一些Keil 的特殊指令在書的一些地方有硬件圖實例程序在這些硬件上運行這些圖繪制地不是很詳細主要是方框圖但足以使讀者明白軟件和硬件之間的接口讀者應該把這本書看成工具書而不是用來學習各種系統設計通過本書你可以了解給定一定的硬件和軟件設計之后8051 的各種性能希望你能從本書中獲取靈感并有助于你的設計使你豁然開朗當然我希望你也能夠從本書中學到有用的知識使之能夠提升你的設計 8051 系列微處理器基于簡化的嵌入式控制系統結構被廣泛應用于從軍事到自動控制再到PC 機上的鍵盤上的各種應用系統上僅次于Motorola 68HC11 在 8 位微控制器市場上的銷量很多制造商都可提供8051 系列單片機像Intel Philips Siemens 等這些制造商給51 系列單片機加入了大量的性能和外部功能像I2C 總線接口模擬量到數字量的轉換看門狗PWM 輸出等不少芯片的工作頻率達到40M 工作電壓下降到1.5V 基于一個內核的這些功能使得8051 單片機很適合作為廠家產品的基本構架它能夠運行各種程序而且開發者只需要學習這一個平臺8051 系列的基本結構如下1 一個8 位算術邏輯單元2 32 個I/O 口4 組8 位端口可單獨尋址3 兩個16 位定時計數器4 全雙工串行通信5 6 個中斷源兩個中斷優先級6 128 字節內置RAM7 獨立的64K 字節可尋址數據和代碼區每個8051 處理周期包括12 個振蕩周期每12 個振蕩周期用來完成一項操作如取指令和計算指令執行時間可把時鐘頻率除以12 取倒數然后指令執行所須的周期數因此如果你的系統時鐘是11.059MHz 除以12 后就得到了每秒執行的指令個數為921583條指令取倒數將得到每條指令所須的時間1.085ms
上傳時間: 2013-11-09
上傳用戶:chenlong
C語言編程基礎:1. 十六進制表示字節0x5a:二進制為01011010B;0x6E為01101110。 2. 如果將一個16位二進數賦給一個8位的字節變量,則自動截斷為低8位,而丟掉高8位。 3. ++var表示對變量var先增一;var—表示對變量后減一。 4. x |= 0x0f;表示為 x = x | 0x0f; 5. TMOD = ( TMOD & 0xf0 ) | 0x05;表示給變量TMOD的低四位賦值0x5,而不改變TMOD的高四位。 6. While( 1 ); 表示無限執行該語句,即死循環。語句后的分號表示空循環體,也就是{;} 在某引腳輸出高電平的編程方法:(比如P1.3(PIN4)引腳)1. #include <AT89x52.h> //該頭文檔中有單片機內部資源的符號化定義,其中包含P1.3 2. void main( void ) //void 表示沒有輸入參數,也沒有函數返值,這入單片機運行的復位入口 3. { 4. P1_3 = 1; //給P1_3賦值1,引腳P1.3就能輸出高電平VCC 5. While( 1 ); //死循環,相當 LOOP: goto LOOP; 6. } 注意:P0的每個引腳要輸出高電平時,必須外接上拉電阻(如4K7)至VCC電源。在某引腳輸出低電平的編程方法:(比如P2.7引腳)代碼1. #include <AT89x52.h> //該頭文檔中有單片機內部資源的符號化定義,其中包含P2.7 2. void main( void ) //void 表示沒有輸入參數,也沒有函數返值,這入單片機運行的復位入口 3. { 4. P2_7 = 0; //給P2_7賦值0,引腳P2.7就能輸出低電平GND 5. While( 1 ); //死循環,相當 LOOP: goto LOOP; 6. } 在某引腳輸出方波編程方法:(比如P3.1引腳)代碼1. #include <AT89x52.h> //該頭文檔中有單片機內部資源的符號化定義,其中包含P3.1 2. void main( void ) //void 表示沒有輸入參數,也沒有函數返值,這入單片機運行的復位入口 3. { 4. While( 1 ) //非零表示真,如果為真則執行下面循環體的語句 5. { 6. P3_1 = 1; //給P3_1賦值1,引腳P3.1就能輸出高電平VCC 7. P3_1 = 0; //給P3_1賦值0,引腳P3.1就能輸出低電平GND 8. } //由于一直為真,所以不斷輸出高、低、高、低……,從而形成方波 9. } 將某引腳的輸入電平取反后,從另一個引腳輸出:( 比如 P0.4 = NOT( P1.1) )
上傳時間: 2013-11-02
上傳用戶:zengduo
用C 語言來開發單片機系統軟件最大的好處是編寫代碼效率高、軟件調試直觀、維護升級方便、代碼的重復利用率高、便于跨平臺的代碼移植等等,因此C 語言編程在單機系統設計中已得到越來越廣泛的運用。針對PIC 單片機的軟件開發,同樣可以用C 語言實現。但在單片機上用C 語言寫程序和在PC 機上寫程序絕對不能簡單等同。現在的PC 機資源十分豐富,運算能力強大,因此程序員在寫PC 機的應用程序時幾乎不用關心編譯后的可執行代碼在運行過程中需要占用多少系統資源,也基本不用擔心運行效率有多高。寫單片機的C 程序最關鍵的一點是單片機內的資源非常有限,控制的實時性要求又很高,因此,如果沒有對單片機體系結構和硬件資源作詳盡的了解,以筆者的愚見認為是無法寫出高質量實用的C 語言程序。這就是為什么前面所有章節中的的示范代碼全部用基礎的匯編指令實現的原因,希望籍此能使讀者對PIC 單片機的指令體系和硬件資源有深入了解,在這基礎之上再來討論C 語言編程,就有水到渠成的感覺。本書圍繞中檔系列PIC 單片機來展開討論,Microchip 公司自己沒有針對中低檔系列PIC單片機的C 語言編譯器,但很多專業的第三方公司有眾多支持PIC 單片機的C 語言編譯器提供,常見的有Hitech、CCS、IAR、Bytecraft 等公司。其中筆者最常用的是Hitech 公司的PICC 編譯器,它穩定可靠,編譯生成的代碼效率高,在用PIC 單片機進行系統設計和開發的工程師群體中得到廣泛認可。其正式完全版軟件需要購置,但在其網站上有限時的試用版供用戶評估。另外,Hitech 公司針對廣大PIC 的業余愛好者和初學者還提供了完全免費的學習版PICC-Lite 編譯器套件,它的使用方式和完全版相同,只是支持的PIC 單片機型號限制在PIC16F84、PIC16F877 和PIC16F628 等幾款。這幾款Flash 型的單片機因其所具備的豐富的片上資源而最適用于單片機學習入門,因此筆者建議感興趣的讀者可從PICC-Lite 入手掌握PIC 單片機的C 語言編程。
上傳時間: 2013-11-12
上傳用戶:wfeel
PIC 單片機C 語言編程簡介用C 語言來開發單片機系統軟件最大的好處是編寫代碼效率高、軟件調試直觀、維護升級方便、代碼的重復利用率高、便于跨平臺的代碼移植等等,因此C 語言編程在單片機系統設計中已得到越來越廣泛的運用。針對PIC 單片機的軟件開發,同樣可以用C 語言實現。但在單片機上用C 語言寫程序和在PC 機上寫程序絕對不能簡單等同。現在的PC 機資源十分豐富,運算能力強大,因此程序員在寫PC 機的應用程序時幾乎不用關心編譯后的可執行代碼在運行過程中需要占用多少系統資源,也基本不用擔心運行效率有多高。寫單片機的C 程序最關鍵的一點是單片機內的資源非常有限,控制的實時性要求又很高,因此,如果沒有對單片機體系結構和硬件資源作詳盡的了解,以筆者的愚見認為是無法寫出高質量實用的C 語言程序。這就是為什么前面所有章節中的的示范代碼全部用基礎的匯編指令實現的原因,希望籍此能使讀者對PIC 單片機的指令體系和硬件資源有深入了解,在這基礎之上再來討論C 語言編程,就有水到渠成的感覺。本書圍繞中檔系列PIC 單片機來展開討論,Microchip 公司自己沒有針對中低檔系列PIC單片機的C 語言編譯器,但很多專業的第三方公司有眾多支持PIC 單片機的C 語言編譯器提供,常見的有Hitech、CCS、IAR、Bytecraft 等公司。其中筆者最常用的是Hitech 公司的PICC 編譯器,它穩定可靠,編譯生成的代碼效率高,在用PIC 單片機進行系統設計和開發的工程師群體中得到廣泛認可。其正式完全版軟件需要購置,但在其網站上有限時的試用版供用戶評估。另外,Hitech 公司針對廣大PIC 的業余愛好者和初學者還提供了完全免費的學習版PICC-Lite 編譯器套件,它的使用方式和完全版相同,只是支持的PIC 單片機型號限制在PIC16F84、PIC16F877 和PIC16F628 等幾款。這幾款Flash 型的單片機因其所具備的豐富的片上資源而最適用于單片機學習入門,因此筆者建議感興趣的讀者可從PICC-Lite 入手掌握PIC 單片機的C 語言編程。
上傳時間: 2013-11-17
上傳用戶:15527161163
單片機的C 語言輕松入門隨著單片機開發技術的不斷發展,目前已有越來越多的人從普遍使用匯編語言到逐漸使用高級語言開發,其中主要是以C 語言為主,市場上幾種常見的單片機均有其C 語言開發環境。這里以最為流行的80C51 單片機為例來學習單片機的C 語言編程技術。本書共分六章,每章一個專題,以一些待完成的任務為中心,圍繞該任務介紹C 語言的一些知識,每一個任務都是可以獨立完成的,每完成一個任務,都能掌握一定的識,等到所有的任務都完成后,即可以完成C 語言的入門工作。C 語言概述及其開發環境的建立學習一種編程語言,最重要的是建立一個練習環境,邊學邊練才能學好。Keil 軟件是目前最流行開發80C51 系列單片機的軟件,Keil 提供了包括C 編譯器、宏匯編、連接器、庫管理和一個功能強大的仿真調試器等在內的完整開發方案,通過一個集成開發環境(μVision)將這些部份組合在一起。在學會使用匯編語言后,學習C 語言編程是一件比較容易的事,我們將通過一系列的實例介紹C 語言編程的方法。圖1-1 所示電路圖使用89S52 單片機作為主芯片,這種單片機性屬于80C51 系列,其內部有8K 的FLASH ROM,可以反復擦寫,并有ISP 功能,支持在線下載,非常適于做實驗。89S52 的P1 引腳上接8 個發光二極管,P3.2~P3.4 引腳上接4 個按鈕開關,我們的任務是讓接在P1 引腳上的發光二極管按要求發光。
上傳時間: 2013-11-04
上傳用戶:467368609
這是一本關于Intel 80C51 以及廣大的51 系列單片機的書這本書介紹給讀者一些新的技術使你的8051 工程和開發過程變得簡單請注意這本書的目的可不是教你各種8051 嵌入式系統的解決方法為使問題討論更加清晰在適當的地方給出了程序代碼我們以討論項目的方法來說明每章碰到的問題所有的代碼都可在附帶的光盤上找到你必須熟系C 和8051 匯編因為本書不是一本C 和匯編的指導書你可以買到不少關于ANSI C 的書最佳選擇當然是Intel的數據書可從你的芯片供應商處免費索取和隨編譯工具附送的手冊附送光盤中有我為這本書編寫和收集的程序這些程序已經通過測試這并不意味著你可以隨時把這些程序加到你的應用系統或工程中有些地方必須首先經過修改才能結合到你的程序中這本書將教你充分使用你的工具如果你只有8051 的匯編程序你也可以學習該書和使用這些例子但是你必須把C 語言的程序裝入你的匯編程序中這對懂得C 語言和8051匯編程序指令的人來說并不是一件困難的事如果你有C 編譯器的話那恭喜你使用C 語言進行開發是一個好的決定你會發現使用C 進行開發將使你的工程開發和維護的時間大大減少如果你已經擁有Keil C51 那你已經選擇了一個非常好的開發工具我發現Keil 軟件包能夠提供最好的支持本書支持Keil C 的擴展如果你有其它的開發工具像Archimedes 和Avocet 這本書也能很好地為你服務但你必須根據你所用的開發工具改變一些Keil 的特殊指令在書的一些地方有硬件圖實例程序在這些硬件上運行這些圖繪制地不是很詳細主要是方框圖但足以使讀者明白軟件和硬件之間的接口讀者應該把這本書看成工具書而不是用來學習各種系統設計通過本書你可以了解給定一定的硬件和軟件設計之后8051 的各種性能希望你能從本書中獲取靈感并有助于你的設計使你豁然開朗當然我希望你也能夠從本書中學到有用的知識使之能夠提升你的設計 這本書向你展示了用8051進行工程設計時的許多問題希望你讀完本書后對8051的認識能有較大的提高如果你現在還沒有夠買C編譯器你應該馬上去買一個采用C語言可是你的系統設計更簡單維護更方便這本書覆蓋面較大從C和匯編的代碼優化到8051的網絡設計再到模糊控制希望你從本書中學到的知識對你今后的系統設計有所幫助
上傳時間: 2013-10-12
上傳用戶:ommshaggar