在C51程序中嵌入?yún)R編
#pragma ASM
匯編代碼
#pragma ENDASM
以流水燈程序為例,其中延時部分用匯編
代碼如下
#include //°üº¬µ¥Æ¬»ú¼Ä´æÆ÷µÄÍ·Îļþ
#define uchar unsigned char
#define uint unsigned int
void delay();
void main()
{
uchar num,dat1,dat2;
delay;
P0=0;
while(1)
{
dat1=0xfe;
dat2=0x7f;
for(num=0;num<7;num++)
{
P1=dat1; //³õʼ»¯¸³Öµ
dat1=dat1<<1; //ÓÒÒÆһλ
delay; //ÑÓʱ
}
for(num=0;num<7;num++)
{
P1=dat2; //³õʼ»¯¸³Öµ
dat2=dat2>>1; //ÓÒÒÆһλ
delay; //ÑÓʱ
}
}
}
void delay()
{
LOOP1: mov R6, #00H
loop2: mov R7, #00H
loop3: djnz R7, loop3
}
評論