第1章 51單片機I/O引腳應用實例
1.1 51單片機I/O引腳模塊基礎
1.2 I/O引腳驅(qū)動LED
1.2.1 LED的工作原理
1.2.2 應用實例——LED閃爍和流水燈
1.3 I/O引腳驅(qū)動數(shù)碼管
1.3.1 單位數(shù)碼管的工作原理
1.3.2 應用實例——流水數(shù)字
1.3.3 多位數(shù)碼管的工作原理
1.3.4 應用實例——多位數(shù)字顯示和流水數(shù)碼管顯示
1.4 I/O引腳驅(qū)動繼電器
1.4.1 繼電器的工作原理
1.4.2 功率驅(qū)動器件的工作原理
1.4.3 應用實例——輪流加熱顯示系統(tǒng)
1.5 I/O引腳驅(qū)動蜂鳴器
1.5.1 蜂鳴器的工作原理
1.5.2 應用實例——定時報警和音樂播放
1.6 I/O引腳擴展獨立按鍵、鍵盤和撥碼開關(guān)
1.6.1 獨立按鍵的工作原理
1.6.2 應用實例——按鍵指示和按鍵發(fā)聲
1.6.3 行列掃描鍵盤的工作原理
1.6.4 應用實例——計算器鍵盤
1.6.5 撥碼開關(guān)的工作原理
1.6.6 應用實例——地址碼設定
1.7 I/O引腳驅(qū)動電動機
1.7.1 直流電動機的工作原理
1.7.2 應用實例——按鍵控制直流電動機
1.7.3 步進電動機的工作原理
1.7.4 應用實例——按鍵控制步進電動機
第2章 51單片機外部中斷應用實例
2.1 51單片機中斷和外部中斷模塊基礎
2.1.1 中斷和外部中斷的相關(guān)控制
2.1.2 中斷的處理
2.1.3 編寫中斷服務函數(shù)
2.2 應用實例——外部中斷計數(shù)
2.3 應用實例——外部電平中斷實驗
2.4 應用實例——聯(lián)合中斷申請
第3章 51單片機的定時/計數(shù)器應用實例
3.1 51單片機定時/計數(shù)器基礎
3.1.1 定時/計數(shù)器的寄存器
3.1.2 定時/計數(shù)器的工作方式
3.1.3 定時/計數(shù)器的中斷
3.2 51單片機定時/計數(shù)器基礎應用
3.2.1 定時器應用實例1——T0方波發(fā)生器
3.2.2 定時器應用實例2——T1方波發(fā)生器
3.2.3 定時器應用實例3——PWM波形發(fā)生器
3.2.4 計數(shù)器應用實例1——按鍵燈控制
3.2.5 計數(shù)器應用實例2——按鍵計數(shù)
3.2.6 門控信號應用實例——脈沖寬度測量
3.3 51單片機定時/計數(shù)器綜合應用
3.3.1 應用實例——秒表
3.3.2 應用實例——門鈴
3.3.3 應用實例——交通燈
3.3.4 應用實例——聲光報警
第4章 51單片機的串行模塊應用實例
4.1 51單片機串行模塊基礎
4.1.1 串行模塊的寄存器
4.1.2 串行模塊的工作方式
4.1.3 串行模塊的中斷
4.2 工作方式0應用實例——雙機高速通信
4.3 工作方式1應用實例1——單片機和PC通信
4.4 工作方式1應用實例2——用單片機U1控制U2外圍LED閃爍
4.5 工作方式1應用實例3——單片機U1和單片機U2雙向控制
4.6 工作方式2應用實例——多點溫度采集
第5章 51單片機常用C語言庫函數(shù)應用實例
5.1 51單片機C語言庫函數(shù)基礎
5.1.1 庫文件和頭文件分類
5.1.2 庫函數(shù)實例應用電路
5.2 ASCII字符分類和轉(zhuǎn)換函數(shù)
5.2.1 isdigit函數(shù)應用實例
5.2.2 toint函數(shù)應用實例
5.2.3 toupper函數(shù)應用實例
5.3 內(nèi)部函數(shù)
5.3.1 _crol_函數(shù)應用實例
5.3.2 _nop_函數(shù)應用實例
5.4 數(shù)學函數(shù)
5.4.1 abs函數(shù)應用實例
5.4.2 floor函數(shù)應用實例
5.4.3 modf函數(shù)應用實例
5.4.4 sqrt函數(shù)應用實例
5.5 輸入/輸出函數(shù)
5.5.1 putchar函數(shù)應用實例
5.5.2 printf函數(shù)應用實例
5.5.3 sprintf函數(shù)應用實例
5.6 數(shù)據(jù)類型轉(zhuǎn)換和存儲器定位函數(shù)
5.6.1 atoi函數(shù)應用實例
5.6.2 atof函數(shù)應用實例
5.6.3 rand函數(shù)應用實例
5.6.4 srand函數(shù)應用實例
5.7 字符串操作函數(shù)庫
5.7.1 memccpy函數(shù)應用實例
5.7.2 strlen函數(shù)應用實例
5.7.3 strcat函數(shù)應用實例
5.7.4 strncpy函數(shù)應用實例
5.7.5 strcmp函數(shù)應用實例
5.7.6 strstr函數(shù)應用實例
5.8 編譯常見報警錯誤及解決方法應用實例
5.8.1 變量未被使用警告(Warning280)
5.8.2 函數(shù)未被聲明警告(WarningC206)
5.8.3 頭文件無法打開錯誤(ErrorC318)
5.8.4 函數(shù)名稱重復定義錯誤(ErrorC237)
5.8.5 函數(shù)未被調(diào)用警告
5.8.6 函數(shù)未定義警告(WarningC206)
5.8.7 內(nèi)存空間溢出錯誤警告
5.8.8 函數(shù)重入警告
5.8.9 常見Keil編譯錯誤
第6章 51單片機內(nèi)部資源高階應用實例
6.1 擴展外部中斷應用實例
6.1.1 應用實例——使用定時/計數(shù)器來擴展外部中斷
6.1.2 應用實例——使用串行模塊來擴展外部中斷
6.2 使用I/O口進行串行通信應用實例
6.3 串行通信波特率自適應應用實例
6.4 使用軟件擴展多級中斷應用實例
6.5 可控PWM輸出應用實例
6.6 高速串行通信應用實例
6.6.1 波特率固定高速串行通信應用實例
6.6.2 波特率可變高速串行通信應用實例
6.7 51單片機內(nèi)部資源綜合應用實例——投票系統(tǒng)
6.7.1 系統(tǒng)設計
6.7.2 應用代碼設計
第7章 RTX51實時多任務操作系統(tǒng)應用實例
7.1 RTX51基礎
7.1.1 RTX51占用的資源
7.1.2 RTX51的實現(xiàn)機制
7.1.3 應用實例——一個RTX51上的最簡單應用
7.2 RTX51的工作原理
7.2.1 時間片管理原理
7.2.2 任務管理原理
7.2.3 事件管理原理
7.2.4 任務調(diào)度管理
7.2.5 堆棧管理
7.3 RTX51的配置
7.3.1 RTX51的基礎配置
7.3.2 RTX51的庫文件配置
7.3.3 RTX51的優(yōu)化配置
7.4 RXT51的庫函數(shù)
7.4.1 isr_send_signal函數(shù)
7.4.2 isr_set_ready函數(shù)
7.4.3 os_clear_signal函數(shù)
7.4.4 os_create_task函數(shù)
7.4.5 os_delete_task函數(shù)
7.4.6 os_reset_interval函數(shù)
7.4.7 os_running_task_id函數(shù)
7.4.8 os_send_signal函數(shù)
7.4.9 os_set_ready函數(shù)
7.4.1 0os_switch_task函數(shù)
7.4.1 1os_wait函數(shù)
7.5 RTX51的使用方法
7.5.1 建立用戶項目
7.5.2 修改RTX51配置
7.5.3 編寫用戶代碼
7.5.4 RTX51的編譯
7.5.5 RTX51的調(diào)試
7.6 應用實例——基于RTX51的交通燈
第8章 51單片機的外部資源擴展方法
8.1 數(shù)據(jù)-地址總線擴展方法
8.2 串行模塊擴展方法
8.3 I2C總線擴展方法
8.3.1 I2C總線擴展原理
8.3.2 應用實例——使用I/O端口來模擬I2C總線
8.4 SPI總線擴展方法
8.4.1 SPI總線擴展原理
8.4.2 應用實例——使用I/O端口來模擬SPI總線
8.5 1-wire(單線)總線擴展方法
8.5.1 1-wire總線擴展原理
8.5.2 應用實例——使用I/O端口來模擬1-wire總線
第9章 51單片機的I/O引腳擴展應用
9.1 使用74系列芯片來擴展I/O引腳
9.1.1 應用實例——使用74273來擴展輸出引腳
9.1.2 應用實例——使用74244來擴展輸入引腳
9.1.3 應用實例——使用74138來擴展輸出引腳
9.2 使用串行口來擴展I/O引腳
9.2.1 使用串行口來擴展輸出I/O引腳
9.2.2 使用串行口來擴展輸入I/O引腳
9.3 使用I/O引腳擴展I/O引腳
9.4 使用NEC8255擴展I/O引腳
9.4.1 NEC8255芯片介紹
9.4.2 NEC8255的典型擴展方法
9.4.3 應用實例——8位8段數(shù)碼管驅(qū)動
9.4.4 應用實例——4×8行列掃描鍵盤
第10章 51單片機人機交互通道擴展
10.1 使用MAX7219擴展多位數(shù)碼管
10.1.1 MAX7219介紹
10.1.2 MAX7219的數(shù)據(jù)格式
10.1.3 MAX7219的寄存器
10.1.4 應用實例——用MAX7219驅(qū)動8位數(shù)碼管
10.2 使用CH452擴展數(shù)碼管和按鍵
10.2.1 CH452芯片介紹
10.2.2 CH452的應用電路
10.2.3 應用實例——用CH452驅(qū)動4位數(shù)碼管和4×4行列鍵盤
10.3 使用1602液晶來顯示數(shù)字和字符
10.3.1 1602字符液晶介紹
10.3.2 1602字符液晶的應用電路和應用流程
10.3.3 應用實例——1602字符液晶循環(huán)顯示字符
10.4 使用12864液晶來顯示漢字和圖形
10.4.1 12864液晶模塊介紹
10.4.2 12864液晶模塊的操作流程
10.4.3 應用實例——12864液晶模塊的庫函數(shù)
10.4.4 應用實例——12864液晶顯示漢字和圖形
第11章 51單片機數(shù)據(jù)采集輸出通道擴展
11.1 A/D數(shù)據(jù)采集通道擴展
11.1.1 A/D數(shù)據(jù)采集通道工作原理
11.1.2 ADC0809并行A/D芯片擴展
11.1.3 TLC2543串行多通道A/D芯片擴展
11.1.4 ADS1100高精度A/D芯片擴展
11.2 D/A數(shù)據(jù)輸出通道擴展
11.2.1 D/A芯片的分類和特點
11.2.2 DAC0832并行D/A芯片擴展
11.2.3 MAX517串行D/A芯片擴展
11.3 DS18B20溫度芯片擴展
11.3.1 DS18B20溫度傳感器介紹
11.3.2 應用實例——串口溫度采集系統(tǒng)
11.4 PCF8563時鐘芯片擴展
11.4.1 PCF8563時鐘芯片介紹
11.4.2 應用實例——初始化PCF8563時鐘
11.4.3 應用實例——讀PCF8563時鐘信息
11.4.4 應用實例——設置PCF8563的報警信息
11.4.5 應用實例——PCF8563的秒中斷輸出
11.4.6 應用實例——PCF8563的秒時鐘信號輸出
第12章 51單片機的存儲器擴展應用
12.1 ROM存儲器和RAM存儲器擴展
12.1.1 ROM存儲器擴展
12.1.2 RAM存儲器擴展
12.1.3 應用實例——6264的數(shù)據(jù)讀/寫
12.2 E2PROM存儲器擴展
12.2.1 AT24系列E2PROM介紹
12.2.2 AT24系列E2PROM的操作
12.2.3 應用實例——AT24C04的字節(jié)寫
12.2.4 應用實例——AT24C04的連續(xù)讀
12.2.5 應用實例——用AT24C04存放音樂數(shù)據(jù)
12.3 SLE4442接觸式加密IC存儲卡擴展
12.3.1 SLE4442卡基礎
12.3.2 SLE4442卡的工作模式
12.3.3 SLE4442卡的命令
12.3.4 應用實例——SLE4442卡的庫函數(shù)
12.3.5 應用實例——基于SLE4442的簡易電子房卡
12.4 U盤存儲器擴展
12.4.1 CH376基礎
12.4.2 CH376的命令
12.4.3 CH376的硬件接口
12.4.4 CH376的應用電路
12.4.5 CH376的U盤擴展應用
12.4.6 應用實例——CH376的庫函數(shù)
12.4.7 應用實例——使用CH376建立文件并寫入數(shù)據(jù)
第13章 51單片機通信通道擴展
13.1 RS-232-C協(xié)議通信擴展
13.2 RS-422/485協(xié)議通信擴展
13.3 雙口RAM通信擴展
13.3.1 IDT7132雙口RAM介紹
13.3.2 應用實例——使用IDT7132進行雙單片機通信
13.4 無線數(shù)據(jù)通信擴展
13.4.1 PTR8000無線模塊介紹
13.4.2 PTR8000無線模塊的應用電路
13.4.3 51單片機擴展PTR8000無線模塊的軟件工作流程
13.4.4 應用實例——無線按鍵指示系統(tǒng)終端
第14章 51單片機應用系統(tǒng)綜合設計
14.1 51單片機應用系統(tǒng)設計基礎
14.1.1 51單片機應用系統(tǒng)設計流程
14.1.2 51單片機應用系統(tǒng)設計原則
14.2 51單片機應用系統(tǒng)——太陽能電池監(jiān)控模塊
14.2.1 系統(tǒng)需求分析
14.2.2 系統(tǒng)設計
14.2.3 系統(tǒng)應用代碼設計
14.3 51單片機應用系統(tǒng)——手持傾角儀
14.3.1 系統(tǒng)需求分析
14.3.2 系統(tǒng)設計
14.3.3 系統(tǒng)應用代碼設計
《51單片機應用開發(fā)案例手冊》主要介紹如何在51單片機的應用系統(tǒng)中使用51單片機的內(nèi)部資源和外圍器件,這些資源和器件包括I/O引腳、外部中斷、定時/計數(shù)器、串行接口、人機交互通道、數(shù)據(jù)采集和輸出通道、存儲器模塊、通信模塊。另外,《51單片機應用開發(fā)案例手冊》還介紹了51單片機C語言部分庫函數(shù)的詳細使用方法,以及RTX51操作系統(tǒng)的工作原理和使用方法。
《51單片機應用開發(fā)案例手冊》實例的電路原理圖及程序源代碼可以到資源下載欄目下載,讀者根據(jù)自己的實際需要稍加修改即可使用。《51單片機應用開發(fā)案例手冊》包含豐富的單片機內(nèi)部資源和外圍模塊的應用實例,作為一本單片機應用手冊,適合于具有單片機基礎知識的單片機工程師,以及高等院校電子類專業(yè)的學生和單片機愛好者參考閱讀。
#include<reg51.h>#define uchar unsigned charuchar num,time,limit=2;sbit led1=P1^0;sbit key1=P2...
加減一加法器,通過P1口輸入一個八位無符號數(shù),P2口輸入另
8051單片機在一塊芯片上集成了一個微型計算機的主要部件,它包括以下幾部分: 1個8位微處理器(CPU)。 1個時鐘電路。 4KB程序存儲器。 256B數(shù)據(jù)存儲器。 2個16位定時/計數(shù)器。 64KB...
格式:pdf
大?。?span id="excnkpp" class="single-tag-height">773KB
頁數(shù): 22頁
評分: 4.4
基于 51單片機的電子時鐘設計 摘要 本電子時鐘以 STC89C52單片機作為主控芯片,采用 DS12C887時鐘芯片, 使用 1602液晶作為顯示輸出。該時鐘走時精確,具有鬧鐘設置,以及可同時顯 示時間、日期等多種功能。本文將詳細介紹該電子時鐘涉及到的一些基本原理, 從硬件和軟件兩方面進行分析。 【關(guān)鍵詞】 STC89C52單片機 DS12C887時鐘芯片 1602液晶 蜂鳴器 目 錄 一、緒論?????????????????????? 4 1.1 電子時鐘功能???????????????? 4 1.2 設計方案?????????????????? 4 二、硬件設計???????????????????? 4 2.1 51單片機部分設計???????????? 4 2.2 USB 供電電路設計???????????? 5 2.3 串行通信電路設計???????????? 6
格式:pdf
大?。?span id="jwdttp8" class="single-tag-height">773KB
頁數(shù): 22頁
評分: 4.7
摘 要 本次的課程設計基于單片機技術(shù)原理,以美國 ATMEL公司開發(fā)的 AT89S52 芯片作為核心控制器。 通過硬件電路的制作及軟件程序的編制, 設計制作了一種 具有復位、校時功能的數(shù)字時鐘系統(tǒng)。利用 1602液晶同時顯示提示信息和時間 信息,用戶可通過系統(tǒng)上的按鍵對時間進行調(diào)整, 實現(xiàn)實時的時鐘顯示。 本次設 計的硬件由主控模塊、 復位模塊以及顯示模塊構(gòu)成。 復位模塊主要由電阻、 電容、 按鍵和發(fā)光二極管組成而顯示模塊則由 1602字符液晶構(gòu)成,用于顯示提示信息 和實時時鐘。 關(guān)鍵詞: AT89S52;LCD 1602; 實時時鐘 桂林電子科技大學課程設計(論文)報告用紙 Abstract The curriculum design is based on the principles of microcomputer technology and has adapted the
《51單片機典型應用開發(fā)范例大全》主要通過典型實例的形式,以51單片機的系統(tǒng)設計為主線,結(jié)合軟件和硬件,由淺入深、通俗易懂地介紹了51單片機應用系統(tǒng)開發(fā)的流程、方法、技巧和設計思想。
《51單片機典型應用開發(fā)范例大全》分為入門篇、提高篇和綜合實例篇三部分。入門篇介紹較為簡單的系統(tǒng)開發(fā)實例,通過學習可以幫助讀者加深理解51單片機功能擴展。提高篇中的實例一般需要借助于傳感器、執(zhí)行機構(gòu)及硬件接口電路完成設計,通過這部分內(nèi)容的學習,可以提高讀者的開發(fā)能力,掌握常用外圍接口電路設計方法、傳感器應用開發(fā)、通信接口設計等。綜合實例篇通過詳細講解一些電子產(chǎn)品、工控產(chǎn)品的設計,使讀者了解單片機系統(tǒng)軟硬件的設計步驟和方法,強調(diào)了模塊化設計思想的重要性。
《51單片機典型應用開發(fā)范例大全》面向各領域的單片機設計用戶,尤其是對已掌握單片機開發(fā)理論但缺少實際開發(fā)經(jīng)驗的讀者更具指導意義;同時也可作為各類高校相關(guān)專業(yè)和社會培訓班的教材使用。
本書以標準C語言和MCS-51單片機為基礎,系統(tǒng)地介紹了51單片機C語言程序設計方法與應用技術(shù)。本書在內(nèi)容上重點突出實用性和應用性兩大特點,不僅對硬件接口進行了詳細的論述,而且對軟件的設計思想、程序流程圖以及C語言程序進行了重點講解。本書從應用性角度出發(fā),融合了作者多年從事項目開發(fā)的大量實際案例,為幫助讀者理解,書中對案例程序代碼部分做了很詳細的注釋,以求通過案例闡述基本問題,著重培養(yǎng)和提高讀者的開發(fā)能力。
本書所附光盤中包括了書中所有案例的程序源代碼,讀者略作修改目口可在工程中應用。
本書可供從事51單片機應用與產(chǎn)品開發(fā)的技術(shù)人員學習使用,也可供高等院校電氣工程、電信工程、自動化等專業(yè)的師生參考使用。
原創(chuàng)經(jīng)典,中科院一線研發(fā)工程師傾力打造
深入介紹51單片機編程語言,透析單片機硬件編程操作
通過大量典型應用案例,引領讀者迅速掌握51單片機開發(fā)技術(shù)