第1章 C51程序Keil調試
1.1求和
實例1sum=1+2+…+
實例2sum=1+3+5+…+
實例3sum=1!+2!+…+10!
1.2排序
實例4a、b、c從小到大排序
實例5數組a\[8\] 從大到?。◤男〉酱螅┡判?br /> 實例6數組元素按相反順序存放
實例7解壓縮BCD碼
1.3打印輸出
實例8按順序打印輸出數組元素
實例9輸出100~200間能被3整除的數
實例10計算并輸出半徑r等于1~10時的圓面積a
實例11輸出變量x對應的平方值
第1章 C51程序Keil調試
1.1求和
實例1sum=1+2+…+
實例2sum=1+3+5+…+
實例3sum=1!+2!+…+10!
1.2排序
實例4a、b、c從小到大排序
實例5數組a\[8\] 從大到小(從小到大)排序
實例6數組元素按相反順序存放
實例7解壓縮BCD碼
1.3打印輸出
實例8按順序打印輸出數組元素
實例9輸出100~200間能被3整除的數
實例10計算并輸出半徑r等于1~10時的圓面積a
實例11輸出變量x對應的平方值
實例12攝氏溫度轉換為華氏溫度
實例13a、b、c排序打印輸出
實例1416個數據從大到小排列輸出
實例15打印輸出金字塔圖形
1.4查找統計
實例16查找并統計ASCII字符“$”的個數
實例17查找并統計數組a\[16\]中正數、負數和零的個數
實例18查找并統計1~99之間的偶數項
1.5延時
實例19單循環(huán)延時
實例20雙循環(huán)延時
1.6數據塊傳送
實例21外RAM→內RAM
實例22ROM→內RAM
第2章 輸出信號控制
2.1鍵控信號燈
實例23單燈閃爍
實例24雙鍵控3燈
實例25雙鍵控4燈
實例26無鎖按鍵的4種不同鍵控方式
2.2循環(huán)燈
實例27流水循環(huán)燈
實例28花樣循環(huán)燈
2.3模擬交通燈
實例29模擬交通燈
實例30帶限行時間顯示的模擬交通燈
2.4音頻聲輸出
實例31單音頻輸出
實例32雙音頻輸出
實例33播放生日快樂歌
第3章 80C51片外擴展應用
3.1并行擴展
實例34并行擴展8位TTL輸入輸出口
實例35并行擴展16位TTL輸入輸出口
實例36并行擴展
實例37并行擴展
實例38并行擴展RAM
3.2串行擴展輸入輸出口
實例3974HC165串行輸入8/16位按鍵狀態(tài)
實例40CC4021串行輸入8/16位按鍵狀態(tài)
實例41CC4014串行輸入8位按鍵狀態(tài)
實例4274HC164串入并出控制8/16循環(huán)燈
實例43CC4094串入并出控制8/16循環(huán)燈
實例4474HC595串入并出控制8/16循環(huán)燈
實例4574HC164+165串行輸入輸出
實例46CC4021+4094串行輸入輸出
實例4774HC164+165虛擬串行輸入輸出
實例48CC4021+4094虛擬串行輸入輸出
3.3I2C串行總線擴展
實例49讀寫AT24C
實例50非零地址讀寫AT24C
第4章 顯示與鍵盤
4.1LED數碼管靜態(tài)顯示
實例51單個LED數碼管循環(huán)顯示0
實例5274LS377并行輸出3位LED靜態(tài)顯示
實例53CC4511 BCD碼驅動3位LED數碼管靜態(tài)顯示
實例5474LS164串行擴展3位LED數碼管靜態(tài)顯示
實例55CC4094串行擴展3位LED數碼管靜態(tài)顯示
4.2LED數碼管動態(tài)顯示
實例56PNP晶體管選通3位共陽LED數碼管動態(tài)顯示
實例5774LS139選通4位LED數碼管動態(tài)顯示
實例5874LS138選通8位LED數碼管動態(tài)顯示
實例5974LS595串行選通8位LED數碼管動態(tài)顯示
實例608255A擴展8位LED數碼管動態(tài)顯示
4.3LCD顯示屏顯示
實例61LCD1602顯示屏顯示
4.4鍵盤
實例624×4矩陣式鍵盤
實例638279擴展8×8鍵盤和8位顯示
實例6474HC595+165擴展8×8鍵盤
第5章 中斷、定時/計數器和串行口應用
5.1中斷應用
實例65出租車行駛里程計數
實例66統計展覽會4個入口參展總人數
實例67利用與門擴展外中斷
實例6874HC148編碼擴展外中斷
5.2定時/計數器應用
實例69輸出周期脈沖方波(示波器顯示)
實例70輸出矩形脈沖波(示波器顯示)
實例71統計T0引腳上10 min內的脈沖數
實例72測量脈沖寬度
實例73測量脈沖頻率
實例74定時器控制單燈閃爍
實例75定時器控制播放生日快樂歌
實例76定時器控制播放世上只有媽媽好歌曲
5.3雙機通信
實例77雙機串行通信方式
實例78雙機串行通信方式
實例79雙機串行通信方式
實例80帶RS 232接口的雙機通信
第6章 A-D和D-A
6.1A-D轉換
實例81ADC0808中斷方式A-D(ALE輸出CLK)
實例82ADC0808查詢方式A-D(ALE輸出CLK)
實例83ADC0808延時方式A-D(ALE輸出CLK)
實例84ADC0808并行A-D(虛擬CLK)
實例85ADC0832串行A-D(TXD輸出CLK)
實例86ADC0832串行A-D(虛擬CLK)
實例87PCF8591-I2C串行A-D(1602顯示)
6.2D-A轉換
實例88DAC0832輸出連續(xù)鋸齒波
實例89PCF8591 I2C串行D-A輸出連續(xù)鋸齒波
第7章 常用測控電路
7.1時鐘
實例90開機顯示PC機時間的時鐘1302(LCD1602顯示)
實例91具有校正功能的時鐘1302(LCD1602顯示)
實例92開機顯示PC機時分秒的時鐘1302(LED數碼管顯示)
實例93具有校正功能的時鐘1302(LED數碼管顯示)
實例94模擬電子鐘(由80C51定時器產生秒時基)
實例9599.9秒秒表
實例96能預置初值的倒計時秒表
7.2DS18B20 測溫
實例97一線式DS18B20測溫
7.2電機驅動
實例98驅動四相步進電機
實例99驅動二相步進電機
實例100直流電機正反轉及PWM調速
第8章 Keil C51編譯軟件操作基礎
8.1項目建立和設置
8.1.1創(chuàng)建工程項目
8.1.2設置工程屬性
8.1.3輸入源程序
8.2程序編譯運行
8.2.1程序編譯鏈接
8.2.2程序運行調試
8.3常用窗口介紹
8.3.1項目文件/寄存器窗口
8.3.2輸出窗口
8.3.3變量觀察窗口
8.3.4存儲器窗口
8.3.580C51功能部件運行對話窗口
8.3.6串行輸入/輸出信息窗口
第9章 Proteus虛擬仿真軟件操作基礎
9.1用戶編輯界面
9.1.1啟動Proteus ISIS
9.1.2Proteus ISIS主菜單
9.1.3Proteus ISIS工具欄
9.2電路原理圖設計和編輯
9.2.1新建原理圖設計
9.2.2選擇和放置元器件
9.2.3對象操作
9.2.4布線
9.2.5電氣規(guī)則檢查
9.3虛擬仿真運行
9.3.1仿真運行
9.3.2Proteus與Keil聯合仿真調試
參考文獻