51单片机第11步_在C语言中插入汇编语言

本章重点介绍如何在C语言中插入汇编语言。要不是有记录,真不知道怎么搞。

/*

你在 Project Workspace窗口中,将光标移到DELAY.c处,点下鼠标右键,选择"Options for file DELAY.c",

点击右边的"Generate Assembler SRC File"和"Assemble SRC File",使检查框由灰色变成黑色(有效)状态;

将C:\KEIL\C51\C51S.lib可以加,也可以不加进来;

//注意1: 书写汇编语句时,标号要顶格书写,否则不能编译成功;

//注意2: #pragma asm和#pragma endasm的后面不可以打上分号;

//注意3: 不要在汇编结束时,打上RET或END;

*/

//main.c程序如下:

#include <reg51.h>

#include <DELAY.h>

void main(void)

{ while(1)

{ delay10ms();

delay100ms(10); //延时1s;

}

}

//delay.c程序如下:

#include <reg51.h>

void delay10ms()

{

#pragma asm

del10ms: mov r4,#20;

del11: mov r6,#0ffh;

del21: djnz r6,del21;

djnz r4,del11;

#pragma endasm

}

void delay100ms(char i)

{ for(i=0;i<10;i++)

{

#pragma asm

del10msa: mov r4,#20;

del11a: mov r6,#0ffh;

del21a: djnz r6,del21a;

djnz r4,del11a;

#pragma endasm

}

}

//delay.h程序如下:

extern delay10ms();

extern delay100ms(char i);

相关推荐
崇山峻岭之间36 分钟前
单片机传感器实验
单片机·嵌入式硬件
玖玥拾2 小时前
C/C++ 基础笔记(七)
c语言·c++
芯岭技术3 小时前
PY32F030国产32位MCU,应用场景广泛,宽工作电压、丰富外设
单片机·嵌入式硬件·物联网
2023自学中4 小时前
Linux虚拟机 CMakeLists.txt:x86 与 ARM 双架构编译脚本
linux·c语言·c++·嵌入式
himobrinehacken5 小时前
C/C++中字符编码与指针应用全解析
c语言·逆向
182******20837 小时前
2026年学C语言还有出路吗?学习需要报班吗?
c语言·开发语言·学习
智者知已应修善业7 小时前
【51单片机数码管驱动2位显示0-99按键3短按+1长按+10按键4短按-1长按清零,按键不影响数码管显示】2023-8-16
c++·经验分享·笔记·算法·51单片机
luj_17688 小时前
局部两极分析破解数学建模难题
服务器·c语言·开发语言·经验分享·算法
信看8 小时前
常见通信接口
单片机·嵌入式硬件
bubiyoushang8889 小时前
基于 C/C++ 的 MQTT 物联网通信协议实现
c语言·c++·物联网