導航:首頁 > 操作系統 > 看懂C51單片機程序

看懂C51單片機程序

發布時間:2022-06-24 21:06:08

㈠ 51單片機程序分析

因控制字為 95H=10010101B

D0:設置PC3~PC0的數據傳送方向。D0=1為輸入;D0=0為輸出。

D1:設置B口的數據傳送方向。D1=1為輸入;D1=0為輸出

D2:設置B口的工作方式。D2=1為方式1;D2=0為方式0。

D3:設置PC7~PC4的數據傳送方向。D3=1為輸入;D3=0為輸出

D4:設置A口的數據傳送方向。D4=1為輸入;D4=0為輸出。

D6D5:設置A口的工作方式。D6D5=00為方式0,D6D5=01為方式1,D6D5=10或11為方式2。

D7:方式控制字的標志位,恆為1。

所以,執行指令後,A口方向為輸入,B口方向為輸出,PC7~PC4方向為輸出。

㈡ 求大神幫忙看一個簡單的單片機C51程序,點亮數碼管的,不知道錯在哪裡,老是報錯

一個簡單問題你
char code DSY_CODE[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};; 後面多了一個分號,是大全形字元,你把它去掉編譯器就不會報錯了

#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
uchar code DSY_CODE[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};
//延時程序
void delayMS(uint x)
{
uint i;
while(x--)
{
for(i=0;i<165;i++);
}
}
//主程序
void main()
{ uchar i=0;
P1=0x00;
while(1)
{
P1=~DSY_CODE[i];
i=(i+1)%10 ;
delayMS(300);

}
}

㈢ C51單片機的程序

加一個while循環就可以了。
while(1)
{
..............

檢測到有效輸入置標志flag=1;

if(flag==1)break;

}

㈣ C51單片機程序

TH0=0xf6;

TL0=0xff;

上兩行是定時器/計數器T0的初值,因為T0是16位的,所以用TH0表示高八位,TL0表示低八位

TH1=0xfd;

TL1=0xfd;

T1初值

TMOD=0x21;

定時器/計數器模式控制寄存器如圖

GATE=1時,由外部中斷引腳INT0、INT1來啟動定時器T0、T1

GATE=0時,僅由TR0,TR1置位分別啟動定時器T0、T1。

C/T=0時為定時功能,C/T=1時為計數功能

M0、M1——方式選擇功能

M1M0工作方式計數器模式TMOD(設置定時器模式)

00方式013位計數器TMOD=0x00

01方式116位計數器TMOD=0x01

10方式2自動重裝8位計數器TMOD=0x02

11方式3T0分為2個8位獨立計數器,T1為無中斷重裝8位計數器TMOD=0x03

PCON=0x00;

PCON主要是為CHMOS型單片機的電源控制而設置的專用寄存器

WDCON=0x00;清狗

SCON=0x50;

SCON1=0x40;

串口控制寄存器

閱讀全文

與看懂C51單片機程序相關的資料

熱點內容
android坐標軸 瀏覽:352
pic單片機mclr 瀏覽:70
為什麼從安卓轉移到蘋果無法連接 瀏覽:10
linuxphpmysql擴展安裝 瀏覽:360
dos安裝軟體命令 瀏覽:236
文件夾中篩選重復文件並刪除 瀏覽:512
android清空任務棧 瀏覽:220
哈羅單車如何綁定自己的app 瀏覽:142
如何下載蜂鳥app 瀏覽:509
條件查詢分頁php 瀏覽:620
app應用如何適配鴻蒙 瀏覽:224
可以查詢源碼的論文網站 瀏覽:276
雲服務如何連自己的伺服器 瀏覽:881
androidapachehttp 瀏覽:316
某程序員動畫 瀏覽:918
低調程序員 瀏覽:226
nat中轉伺服器怎麼弄 瀏覽:458
山東集群伺服器雲空間 瀏覽:697
oceanbase3源碼 瀏覽:716
安裝好的app如何遷移 瀏覽:562