導航:首頁 > 編程語言 > 單片機c51計數器實驗代碼

單片機c51計數器實驗代碼

發布時間:2025-07-01 04:21:58

㈠ 用單片機c51,c語言編0-9計數器程序!謝謝!!!

你的硬體電路有問題啊,單片機31號腳要接高電平


還有,你的數碼管接法也不對啊


看你的排阻接法,你的數碼管要用共陰極的


當加到9之後,再按一下,是不是又恢復到0啦???



下面是更改的回答


#include<reg51.h>

unsignedchara;


unsignedcharcodetable[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x67};

voidinit(void)
{
EA=1;
EX0=1;
IT0=1;
}

voidmain(void)
{
init();
while(1)
{
P0=table[a];

}

}

voidEX_0(void)interrupt0
{
a++;
if(a>9)
a=0;
}


望採納

㈡ 用C語言如何開51單片機的計數器,最好編個實常式序

#include <reg51.h>
#define uchar unsigend uchar
#define uint unsigned int
unsigned char code LED7Code[] = {~0x3F,~0x06,~0x5B,~0x4F,~0x66,~0x6D,~0x7D,~0x07,~0x7F,~0x6F,~0x77,~0x7C,~0x39,~0x5E,~0x79,~0x71};//數碼管段碼

void main()
{
uint k;
TMOD=0X50;//設置模式為1,計數模式
TH1=0X00;
TL1=0X00;//初始值設定
IE=0X00;//關全局中斷
TR1=1;//開定時計數器1運行
while(1)
{

if(TL1==16)//進行判斷,為16時,計數值歸零
TL1=0X00;
k=TL1;
P0=LED7Code[k];//數碼管進行顯示
}
}
此程序目的見http://..com/question/350774230.html

㈢ 單片機60秒計時報警器 求c程序 用AT89C51單片機的定時/計數器T0產生一秒的定時時間,作為秒計數時間,

#include <reg51.H>
sbit P3_5 =P3^5;
void delay()
{
unsigned char i,j;
for(j=20;j>0;j--)
for( i= 250;i>0;i--);
}
unsigned char code dispcode[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,
0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E,0x00};
unsigned char second;
unsigned char keycnt;
unsigned int tcnt;

void main(void)
{
unsigned char i,j;

TMOD=0x02;
ET0=1;
EA=1;
second=0;
P0=dispcode[second/10];
P2=dispcode[second%10];
TR0=1;
while(1)
{
if( second ==60)
{
TR0=0;
P1=0x5F;
delay();
P1=0xFF;
delay();
}
}
}

void t0(void) interrupt 1 using 0
{
tcnt++;
if(tcnt==4000)
{
tcnt=0;
second++;
P0=dispcode[second/10];

P2=dispcode[second%10];
}
}

㈣ 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;

串口控制寄存器

㈤ 51單片機按鍵計數器C語言編程

#include<reg51.h>
#defineucharunsignedchar;
uchardistab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x00};//0到f
ucharnumber,dat,dis[4];
voidt0isr()interrupt1
{
TH0=(65536-5000)/256;
TL0=(65536-5000)%256;
number++;
number%=3;
switch(number)
P1=0x20<<number;
P0=distab[dis[number]];
}
voidint0isr()interrupt0
{
dat++;
dat%=1000;
dis[0]=dat%10;
dis[1]=dat%100/10;
dis[2]=dat/100;
}
main()
{
TMOD=0x01;
TH0=(65536-5000)/256;
TL0=(65536-5000)%256;
TR1=1;
ET1=1;
EX0=1;
IT0=1;
EA=1;
while(1);
}

閱讀全文

與單片機c51計數器實驗代碼相關的資料

熱點內容
5sing上傳音頻文件格式 瀏覽:171
win10輸入文件滑鼠右鍵異常 瀏覽:634
聽幼兒故事用什麼app 瀏覽:514
iphone修改音頻文件名 瀏覽:53
國家氣象站點數據在哪裡下載 瀏覽:342
網路設置的網站 瀏覽:914
手機測量放樣怎麼導數據和線型 瀏覽:648
企業展示型網站源碼 瀏覽:781
易花花app哪裡下載 瀏覽:323
外國程序員職業生涯長 瀏覽:709
看理想app怎麼注銷賬號 瀏覽:545
數控銑床加工手工編程的步驟有哪些 瀏覽:411
uc瀏覽器為什麼很多網站進不了 瀏覽:513
西部數據移動硬碟怎麼 瀏覽:645
批處理修改子目錄文件名命令 瀏覽:405
文件損壞怎麼刪除 瀏覽:977
代碼百度地圖web服務api 瀏覽:523
什麼是和平營地app 瀏覽:624
智能ai機器人需要什麼編程 瀏覽:825
可控編程主要技術指標有哪些 瀏覽:271

友情鏈接