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