微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 在C51程序中嵌入汇编

在C51程序中嵌入汇编

时间:11-27 来源:互联网 点击:
在C文件中直接嵌入汇编可采用以下方式

#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()

{

#pragma ASM

mov R5, #00H

LOOP1: mov R6, #00H

loop2: mov R7, #00H

loop3: djnz R7, loop3

djnz R6, loop2

djnz R5, loop1

#pragma ENDASM

}


Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top