51µ¥Æ¬»úѧϰCÓïÑÔ ÁªÏµ¿Í·þ

·¢²¼Ê±¼ä : ÐÇÆÚËÄ ÎÄÕÂ51µ¥Æ¬»úѧϰCÓïÑÔ¸üÐÂÍê±Ï¿ªÊ¼ÔĶÁ

typedef unsigned int uint;

uchar bdata FLAG; sbit FLAG1 = FLAG^1; sbit FLAG2 = FLAG^2; sbit P1_1 = P1^1;

uchar data time,Dtime;

#define LAMP P00 /*Êä³ö Â̵ÆP00=1 Â̵ÆÁÁ£»P00=0 Â̵ÆÃð */ #define KEY_IN P10 /*ÊäÈë µ¥¼ü°´ÏÂP10=0£¬²»°´¼üP10 = 1 */

uchar B_T50ms=200,B_T100ms=2,B_T200ms=4,B_T500ms=10; uchar B_TT1s=20,B_T30s=60,B_T120s=240;

bit FLAG_ERRON; bit FLAG_SIGN;

uchar JFLAG;

uchar data buffer[8]; uchar data Temper[4];

uchar idata buffer0[150]; //ÕâÌõÓï¾äÈôÓÃdata¶¨Ò壬buffer0µÄ³¤¶È¾ÍÖ»ÄÜСÓÚ uchar code buffer1[16]={0,0,1,1,2,3,3,4,5,5,6,6,7,8,8,9}; void dl_us(uint count); void dl_ms(uint count);

void ext_1(void); // interrupt 2; void Timer_0(void); // interrupt 1; main ()

{ uchar JFLAG,i; P1 = 0xFF; FLAG = P1;

JFLAG = FLAG >> 6; JFLAG = JFLAG & 0x03; switch (JFLAG) {

case 0: time=2;Dtime=20;break; case 1: time=4;Dtime=40;break; case 2: time=6;Dtime=60;break; case 3: time=8;Dtime=80;break; }

for (i=1;i<180;i++) {

buffer0[i]=0;

}

for (i=1;i<150;i++) {

buffer0[i]=i; }

while (1) // µ¥¼üû°´ÏÂP10=1Ö´ÐÐÏÂÁÐÓï¾ä£¬ÉϵçʱµÆ¾ÍÁÁ£¬ { if (P10==1) { LAMP=1; } else

{ LAMP=0; dl_ms(500); } } }

void dl_us(uint count) { uint i;

for(i=0;i

void dl_ms(uint count) { uchar i;

while(count--)

{ for(i=0;i<125;i++) { ; } } }

ext_1() interrupt 2 {

EX1=0; // ½øÖжϳÌÐòºó¾Í¹ØµôÍâÖжÏ1£¬¸ÄΪ²éѯ·½Ê½ ET0=1; }

Timer_0() interrupt 1 { }

¸½2£ºKEILC51³ÌÐòÀý×Ó2

#pragma DEBUG CODE

#include /* define 8052 registers */ #include /* define I/O functions */ typedef unsigned char uchar; typedef unsigned int uint;

void main(void)

{ucha var1,var2,result1,result2; var1=3;

var2=5;

result1= var1+var2; result2= var1*var2; while(1) }

×¢£ºÆäÖÐreg51.h»òreg52.hÊÇÍ·Îļþ£¬CÓïÑÔϵͳ×Ô´øµÄ¡£ÕâÊǹØÓÚµ¥Æ¬»ú×ÊÔ´µÄ¶¨ÒåÎļþ¡£Èç¹ûÑ¡ÓÃ89C51µ¥Æ¬»ú£¬ÔòÍ·ÎļþÑ¡reg51.h£»Èç¹ûÑ¡ÓÃ89C52µ¥Æ¬»ú£¬ÔòÍ·ÎļþÑ¡reg52.h£» ϵͳ´øµÄÍ·Îļþ¿ÉÄܲ»È«Ê±£¬Ó¦ÓÉÓû§×ÔÒÑÐ޸ġ£ÀýÈç´ò¿ªreg52.hÎļþ Ö»ÓжԿڵØÖ·µÄ¶¨Ò壬¶øûÓпڵĸ÷λµÄ¶¨Òå

¸½3£º±í5£­1 ³£ÓÃתÒå×Ö·û±í

תÒå×Ö·û \\o \\n \\r \\t \\b \\f \\' \\\ \\\\

º¬Òå ¿Õ×Ö·û(NULL) »»Ðзû(LF) »Ø³µ·û(CR) ˮƽÖƱí·û(HT) Í˸ñ·û(BS) »»Ò³·û(FF) µ¥ÒýºÅ Ë«ÒýºÅ ·´Ð±¸Ü ASCIIÂ루16/10 ½øÖÆ£© 00H/0 0AH/10 0DH/13 09H/9 08H/8 0CH/12 27H/39 22H/34 5CH/92 ¸½4£º51µ¥Æ¬»úÖжÏÔ´

ÖжÏÔ´ ÍⲿÖжÏ0 ¶¨Ê±Æ÷0Òç³ö ÍⲿÖжÏ1 ¶¨Ê±Æ÷1Òç³ö ´®ÐÐ¿Ú Ê¸Á¿µ¥Ôª 0003H 000BH 0013H 001BH 0023H ÖжϱàºÅ 0 1 2 3 4 ¸½5£ºÒ»¸ö´®ÐпÚͨѶЭÒéÀý×Ó

;ͨѶЭÒé

;PC·¢Ë͵ÄÃüÁî

;1¡¢»ØËͳö´íÃüÁî ±äÖ·Á¿=4 ;ÃüÁî¸ñʽ Æðʼ DE=01 * * CRC CR

;PC·¢ËÍÂë @ 0 1 * * 0 1 CR ;ÒDZí½ÓÊÕÂë

ERR: DB 40H,30H,31H,2AH,2AH,30H,31H,0DH ;2¡¢»ØËÍÕýÈ·ÃüÁî ±äÖ·Á¿=4 ;ÃüÁî¸ñʽ Æðʼ DE=01 # # CRC CR ;PC·¢ËÍÂë @ 0 1 # # 0 1 CR ;ÒDZí½ÓÊÕÂë RIG: DB 40H,30H,31H,23H,23H,30H,31H,0DH ;3¡¢¶Á0010HÄÚµÄʱ¼ä²ÎÊý£¨Á½¸ö×Ö½Ú£© ±äÖ·Á¿=11 ;ÃüÁî¸ñʽ Æðʼ DE=01 R E µØÖ·=0010H ³¤¶È CRC CR ;PC·¢ËÍÂë @ 0 1 52 45 0010 2 34 CR ;ÒDZí½ÓÊÕÂë

RE210: DB 40H,30H,31H,35H,32H,34H,35H,30H,30H,31H,30H,32H,33H,34H,0DH ;4¡¢¶Á0012HÄڵŦÂʲÎÊý£¨Á½¸ö×Ö½Ú£© ±äÖ·Á¿=11 ;ÃüÁî¸ñʽ Æðʼ DE=01 R E µØÖ·=0012H ³¤¶È CRC CR ;PC·¢ËÍÂë @ 0 1 52 45 0012 2 36 CR ;ÒDZí½ÓÊÕÂë

RE212: DB 40H,30H,31H,35H,32H,34H,35H,30H,30H,31H,32H,32H,33H,36H,0DH ;5¡¢¶Á0010Hʱ¼ä²ÎÊý£¨Á½¸ö×Ö½Ú£©ºÍ¹¦ÂʲÎÊý£¨Á½¸ö×Ö½Ú£© ±äÖ·Á¿=11 ;ÃüÁî¸ñʽ Æðʼ DE=01 R E µØÖ·=0010H ³¤¶È CRC CR ;PC·¢ËÍÂë @ 0 1 52 45 0010 4 32 CR ;ÒDZí½ÓÊÕÂë±äÖ·Á¿=

RE410: DB 40H,30H,31H,35H,32H,34H,35H,30H,30H,31H,30H,34H,33H,32H,0DH ;6¡¢ÍùÒDZíÄÚдʱ¼ä²ÎÊý (Á½¸ö×Ö½Ú) ¼ÙÉèд34·Ö00Ãë ±äÖ·Á¿=10 ;ÃüÁî¸ñʽ Æðʼ DE=01 W 2 µØÖ·=0010 ʱ¼ä CRC CR

;PC·¢ËÍÂë @ 0 1 57 32 0010 3400 04 CR ;ÒDZí½ÓÊÕÂë

W210: DB 40H,30H,31H,35H,37H,33H,32H,30H,30H,31H,30H DB 33H,34H,30H,30H,30H,34H,0DH ;7¡¢ÍùÒDZíÄÚд¹¦ÂʲÎÊý (Á½¸ö×Ö½Ú ) ±äÖ·Á¿=10

;ÃüÁî¸ñʽ Æðʼ DE=01 W 2 µØÖ·=0012 ¹¦ÂÊ CRC CR

;PC·¢ËÍÂë @ 0 1 57 32 0012 0123 01 CR ;ÒDZí½ÓÊÕÂë

W212: DB 40H,30H,31H,35H,37H,33H,32H,30H,30H,31H,32H DB 30H,31H,32H,33H,30H,31H,0DH

;8¡¢ÍùÒDZíÄÚдʱ¼ä²ÎÊý£¨Á½¸ö×Ö½Ú£©ºÍ¹¦ÂʲÎÊý£¨Á½¸ö×Ö½Ú£© ±äÖ·Á¿=10

;ÃüÁî¸ñʽ Æðʼ DE=01 W 4 µØÖ·=0010 ʱ¼äºÍ¹¦ÂÊ CRC CR

;PC·¢ËÍÂë @ 0 1 57 34 0010 0034 0123 02 CR ;ÒDZí½ÓÊÕÂë;

W410: DB 40H,30H,31H,35H,37H,33H,34H,30H,30H,31H,30H DB 30H,30H,33H,34H,30H,31H,32H,33H,30H,32H,0DH ;9¡¢ÃüÁîÒDZíÔÝÍ£ ±äÖ·Á¿=6 ;ÃüÁî¸ñʽ Æðʼ DE=01 P£Ó CRC CR ;PC·¢ËÍÂë @ 0 1 50 53 02 CR