51單片機程序設計
① 51單片機程序設計
P1=0xff,關閉所有LED(低電平才能點亮LED);
10000mS=10S;
右移1位;P1.7 先=0,即LED點亮
② 89c51單片機程序設計!!!
辦法比較多,抄89c51自己是不帶ad的,那麼外接ad程序比較麻煩,你這對電壓也不測量精確值,所以用不著ad,只要能區分電壓值不同就行了。考慮到程序的簡單,就用比較器,比如說接五個比較器,閾值分別為1v、2v、3v、4v、5v,把他們的輸入端接在一起,輸出端接在單片機的五個io口上,再接五個發光二極體在另外五個io口上,發光二極體的另一端分別串個限流電阻接在電源上,硬體完成了。程序就好寫多了,只要判斷五個比較器輸出端電平,然後控制相應的燈亮滅就行了。比較器也不一定五個,三個兩個也一樣,這樣精度就不太高而已。不過程序就幾行代碼。簡單。
③ 求一個簡單的51單片機c語言程序設計~
機的外部結構
:
1.
DIP40
雙列直插;
2.
P0
,
P1
,
P2
,
P3
四個
8
位準雙向
I/O
引腳;(作為
I/O
輸入時,要先輸出高電平)
3.
電源
VCC
(
PIN40
)和地線
GND
(
PIN20
);
4.
高電平復位
RESET
(
PIN9
);(
10uF
電容接
VCC
與
RESET
,即可實現上電復位)
5.
內置振盪電路,外部只要接晶體至
X1
(
PIN18
)和
X0
(
PIN19
);(頻率為主頻的
12
倍)
6.
程序配置
EA
(
PIN31
)接高電平
VCC
;(運行單片機內部
ROM
中的程序)
7.
P3
支持第二功能:
RXD
、
TXD
、
INT0
、
INT1
、
T0
、
T1
單片機內部
I/O
部件
:
(
所為學習單片機,實際上就是編程式控制制以下
I/O
部件,完成指定任務
)
1.
四個
8
位通用
I/O
埠,對應引腳
P0
、
P1
、
P2
和
P3
;
2.
兩個
16
位定時計數器;(
TMOD
,
TCON
,
TL0
,
TH0
,
TL1
,
TH1
)
3.
一個串列通信介面;(
SCON
,
SBUF
)
4.
一個中斷控制器;(
IE
,
IP
)
針對
AT89C52
單片機,頭文件
AT89x52.h
給出了
SFR
特殊功能寄存器所有埠的定義。
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 );
表示無限執行該語句,即死循環。語句後的分號表示空循環體,也就是
{;}
④ 51單片機簡單程序設計
;循環制檢測按鍵:K1,K2,K3
ORG 0000H
LJMP 0030H
ORG 0030H
K0:
MOV P1, #00H ;關顯示
k1: JB P3.1, k2 ;檢測K1(按下為0),沒有按下去檢測K2
MOV P1, #06H ;顯示「1」(共陰極顯示)
JNB P3.1, $ ;等待釋放
k2: JB P3.2, k3
MOV P1, #5BH ;顯示「2」
JNB P3.2, $
k3: JB P3.3, K0
MOV P1, #4FH ;顯示「3」
JNB P3.3, $
LJMP K0 ;循環檢測
END
⑤ 51單片機程序設計
按鍵按下去不是K2等於回0么?答
else if(K2==1 && dly==0)
{
dly=DLY1;
if(mode==2 && hour<23)hour++;
if(mode==3 && minute<59) minute++;
if(mode==4 && minute<59) second++;
⑥ 急求51單片機C語言應用程序設計實例精講的光碟下載
你還不如去我的博客上看看,那裡有一些很實用的程序.
⑦ 51單片機源程序設計
先實現一個功能吧,按K1數碼管顯示加1,LED燈左移一位。
#include<reg51.h>
#include<intrins.h>
#defineucharunsignedchar
ucharcodetable[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//共陽版級數碼管碼權表0-9
ucharkey;
voidext0()interrupt0
{
key++;
P1=_crol_(0xfe,key);
P0=table[key];
}
main()
{
EX0=1;
IT0=1;
EA=1;
while(1);
}
⑧ 51單片機程序設計
按鍵抄按下去不是K2等於0么?
else if(K2==1 && dly==0)
{
dly=DLY1;
if(mode==2 && hour<23)hour++;
if(mode==3 && minute<59) minute++;
if(mode==4 && minute<59) second++;
⑨ 求 51單片機C語言應用程序設計實例精講pdf
有doc格式的51單片機教程
⑩ 51單片機C語言應用程序設計實例精講的目錄
第1章51單片機開發的基礎知識
1.151單片機的硬體結構
1.1.1功能模塊
1.1.2CPU
1.1.3並行I/O埠
1.1.4存儲囂結構
1.1.5定時/計數器
1.1.6串列口
1.1.7中斷系統
1.251單片機的指令系統
1.2.1定址方式
1.2.2指令說明
1.2.3指令系統表
1.3本章總結
第2章C語言程序各語句用法與意義
2.1數據結構
2.1.1數據類型
2.1.2變數與常量
2.1.3數組
2.1.4指針
2.1.5結構
2.1.6共用體
2.1.7枚舉
2.2運算符與表達式
2.2.1運算符分類與優先順序
2.2.2算術運算符與表達式
2.2.3關系運算符與表達式
2.2.4邏輯運算符與表達式
2.2.5位操作運算符與表達式
2.2.6賦值運算符與表達式
2.3程序結構與函數
2.3.1程序結構
2.3.2函數
2.4流程式控制制語句
2.4.1選擇語句
2.4.2循環語句
2.4.3轉移語句
2.5本章總結
第3章Keil8051C編譯器
3.1Keil編譯器簡介
3.2使用Keil開發應用軟體
3.2.1建立工程
3.2.2工程的設置
3.2.3編譯與連接
3.3dScopeforWindows的使用
3.3.1如何啟動
3.3.2如何調試
3.3.3調試窗口
3.4本章總結 第4章單片機實現液晶顯示
4.1實例說明
4.2設計思路分析
4.2.1液晶顯示模塊
4.2.2液晶顯示工作原理
4.2.3設計思路
4.3硬體電路設計
4.3.1器件選取
4.3.2電源模塊
4.3.3液晶顯示模塊
4.3.4單片機模塊
4.4軟體設計
4.4.1液晶控制驅動囂指令集
4.4.2程序說明
4.5實例總結
第5章基於MAX7219的8位數碼管顯示
5.1實例說明
5.2設計思路分析
5.2.1LED顯示驅動晶元的選取
5.2.2MAX7219的工作原理
5.3硬體電路設計
5.3.1主要器件
5.3.2電路原理圖
5.4軟體設計
5.4.1MAX7219的工作時序和寄存器描述
5.4.2程序說明
5.5實例總結
第6章鍵盤輸入實例——實現4x4鍵盤
6.1實例說明
6.2設計思路分析
6.3硬體電路設計
6.4軟體設計
6.5實例總結
第7章單片機實現語音錄放
7.1實例說明
7.2設計思路分析
7.2.1語音晶元選取
7.2.2語音晶元1SD2560簡介
7.3硬體電路設計
7.3.1主要器件
7.3.2電路原理圖及說明
7.4軟體設計
7.4.1程序流程
7.4.2程序說明
7.5實例總結 第8章基於MAX197的並行A/D轉換
8.1實例說明
8.2設計思路分析
8.2.1A/D轉換原理
8.2.2如何選擇A/D轉換器件
8.2.3A/D轉換器對電源電路的要求
8.3硬體電路設計
8.3.1主要器件
8.3.2電路原理圖及說明
8.4軟體設計
8.4.1MAX197控制字
8.4.2程序流程
8.4.3程序說明
8.5實例總結
第9章基於TLC549的串列A/D轉換
9.1實例說明
9.2設計思路分析
9.2.1晶元選取
9.2.2工作原理
9.3硬體電路設計
9.3.1主要器件
9.3.2電路原理圖及說明
9.4軟體設計
9.4.1轉換過程和時序要求
9.4.2程序流程
9.4.3程序說明
9.5實例總結
第10章基於MAX527的並行D/A轉換
10.1實例說明
10.2設計思路分析
10.2.1D/A轉換原理
10.2.2如何選擇D/A轉換器件
10.2.3D/A轉換器對電源電路的要求
10.3硬體電路設計
10.3.1主要器件
10.3.2電路原理圖及說明
10.4軟體設計
10.4.1MAX527的地址和重要引腳
10.4.2程序流程
10.4.3程序說明
10.5實例總結
第11章基於MAX517的串列D/A轉換
11.1實例說明
11.2設計思路分析
11.2.1晶元選取
11.2.2工作原理
11.3硬體電路設計
11.3.1主要器件
11.3.2電路原理圖及說明
11.4軟體設計
11.4.1時序要求和轉換過程
11.4.2程序說明
11.5實例總結
第12章基於SHT71數字溫/濕度感測器的採集實現
12.1實例說明
12.2設計思路分析
12.2.1SHT71性能概述
12.2.2SHT71的功能說明
12.2.3SHT71的引腳尺寸和說明
12.3硬體電路設計
12.4軟體設計
12.4.1SHT71的操作方法
12.42程序流程
12.4.3源程序清單
12.5實例總結
第13章基於DS1624的數字溫度計設計
13.1實例說明
13.1.2設計思路分析
13.2.1DS1624簡介
13.2.2DS1624基本特性
13.2.3DS1624工作原理
13.2.4DS1624工作方式
13.2.5DS1624的指令集
13.3硬體電路設計
13.3.1硬體設計
13.3.2原理科及其說明
13.4軟體設計
13.4.1程序流程
13.4.2程序說明
13.5實例總結 第14章基於DS12C887的實時日歷時鍾顯示系統設計
14.1實例說明
14.2設計思路分析
14.2.1選擇合適的日歷時鍾晶元7
14.2.2如何由DS12C887晶元獲取時間信息
14.3硬體電路設計
14.3.1結構框圖
14.3.2主要器件
14.3.3電路原理圖及說明
14.4軟體設計
14.4.1DS12C877的內存空間
14.4.2程序流程
14.4.3程序代碼及說明
14.5實例總結
第15章單片機控制的步進電機系統
15.1實例說明
15.2設計思路分析
15.2.1步進電機的工作原理
15.2.2步進電機的控制
15.2.3脈沖分配與驅動晶元的選取
15.3硬體電路設計
15.3.1結構框圖
15.3.2主要器件
15.3.3電路原理圖廈說明
15.4軟體設計
15.4.1程序流程
15.4.2程序說明
15.5實例總結
第16章基於MAX1898的智能充電器設計
16.1實例說明
16.2設計思路分析
16.2.1為何需要實現充電器的智能化
16.2.2如何選擇電池充電晶元
16.2.3MAX1898的充電工作原理
16.3硬體電路設計
16.3.1主要器件
16.3.2電路原理圖及說明
16.4軟體設計
16.4.1程序流程
16.4.2程序說明
16.5實例總結 第17章基於NORFlashAM29LV320的數據存儲
17.1實例說明
17.2設計思路分析
17.2.1晶元AM29LV320
17.2.2具體設計思路
17.3硬體電路設計
17.4軟體設計
17.4.1AM29LV320的命令與狀態
17.4.2串列非同步數據傳輸
17.4.3程序代碼說明
17.5實例總結
第18章基於XC95144的串口擴展
18.1實例說明
18.2設計思路分析
18.2.1串口發送的設計
18.2.2串口接收的設計
18.2.3串口模塊的設計l
18.3硬體電路設計
18.4軟體設計
18.4.1CPLD的設計原理圖
18.4.2C51單片機程序代碼說明
18.5實例總結
第19章基於8255擴展並行口
19.1實例說明
19.2設計思路分析
19.2.1並行口擴展的原理
19.2.2晶元選擇
19.3硬體電路設計
19.4軟體設計
19.5實例總結 第20章單片機實現智能信號發生器
第21章單片機實現步進式PWM信號輸出
第22章單片機實現CRC演算法
第23章單片機實現軟體濾波
第七篇通信傳輸系統設計
第24章單片機實現點對點的數據傳輸
第25章單片機實現點對多點的數據傳輸
第26章單片機實現乙太網介面
第27章單片機實現1C匯流排通信
第28章單片機實現RS-485匯流排現場監測系統
第29章CAN匯流排介面通信設計
第八篇電源監控與抗干擾設計
第30章單片機監控電路設計
第31章光電隔離電路設計 附錄A匯編語言與C語言的混合編程
附錄B實例配套實驗箱