knrt.net
当前位置:首页 >> C51单片机程序实例 >>

C51单片机程序实例

#include#define uchar unsigned charuchar tab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00}; //0到9uchar num,cnt,disn;uchar keyval,disk;uchar led[]={1,2,3,4};void dealdat(uchar a){led[0]=0;led[1]=0;led[2]=0;led[3]=0...

是不是这种 #include #include #define uchar unsigned char #define uint unsigned int void delay(uint k ) {uint i,j; for(i=0;i

ORG 0000H LJMP MAIN ORG 0030H MAIN: MOV DPTR,#TABLE CLR A MOVC A,@A+DPTR MOV P1,A INC DPTR MOV R7,#20 LCALL DELAY SJMP MAIN DELAY: MOV R2,#200 DLY: MOV R3,#250 DJNZ R3,$ DJNZ R2,DLY DJNZ R7,DELAY RET TABLE: DB 00h,01h,02h,45h,6...

sbit GO_OUT =P3^5; //需要检测的引脚 sbit LED =P3^4; //显示led 引脚为低时候亮 void main() //主程序 { while(1) //主循环 { if(GO_OUT==0) { LED=1; //引脚为低 led不亮 } else LED=0; // 否则led点亮 } }

1、这是51系列单片机的晶振和复位电路。 2、C1,C2,X1构成晶振电路,X1是晶振,两个电容为负载电容,作用是容易启震和减小频率的温漂。 3、R1,C3组成复位电路,跟晶振没有关系。

用keil调试下,就可以知道结果了。 感觉楼主的分析是正确的…… 只是不清楚这个程序段的意图是对数组a[]的全部数据进行排序还是仅对其前9个数据排序。 printf("the unsorted numbers:\n"); for(i=0;i

LED BIT P1.0 KEY BIT P1.4 SPEAKER BIT P1.7 LOWCNT EQU 30H ORG 0000H LJMP MAIN ORG 0030H MAIN: MOV LOWCNT,#0 LOOP: JB KEY,LOOP1 SETB LED JNB KEY,$ INC LOWCNT MOV A,LOWCNT CJNE A,#8,LOOP1 MOV LOWCNT,#0 LCALL FMQ SJMP LOOP LOOP1: ...

方法类似,补写程序如下: #include #define uint unsigned int #define uchar unsigned char sbit LED=P0^0; sbit LED1=P0^1; void delay1ms (uint z) { uint x,y; for (x=z;x>0;x--) for (y=110;y>0;y--); } void exter() interrupt 2 { delay...

//C51点亮8位LED流水灯:1234,2345,3456,7012; //P1口接LED灯。假设高电平为点亮。 #include #define LED P1char code light[]={0x1e,0x3c,0x78,0x87}; void delay(unsigned int i) { unsigned char j; while(--i){j=100;while(--j);} } voi...

TMOD = 0x01; TH0 = (65535-5000)/256; TL0 = (65535-5000)%256;

网站首页 | 网站地图
All rights reserved Powered by www.knrt.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com