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);

相关推荐
涛ing35 分钟前
21. C语言 `typedef`:类型重命名
linux·c语言·开发语言·c++·vscode·算法·visual studio
tadus_zeng1 小时前
51单片机(三) UART协议与串口通信实验
单片机·嵌入式硬件·51单片机
黄金小码农1 小时前
C语言二级 2025/1/20 周一
c语言·开发语言·算法
ZLG_zhiyuan1 小时前
ZLG嵌入式笔记 | 电源设计避坑(下)
单片机·嵌入式硬件
wenchm3 小时前
细说STM32F407单片机电源低功耗StopMode模式及应用示例
stm32·单片机·嵌入式硬件
7yewh4 小时前
嵌入式知识点总结 C/C++ 专题提升(七)-位操作
c语言·c++·stm32·单片机·mcu·物联网·位操作
wenchm4 小时前
细说STM32F407单片机电源低功耗StandbyMode待机模式及应用示例
stm32·单片机·嵌入式硬件
egoist20235 小时前
数据结构之堆排序
c语言·开发语言·数据结构·算法·学习方法·堆排序·复杂度
Shimir6 小时前
高并发内存池_各层级的框架设计及ThreadCache(线程缓存)申请内存设计
c语言·c++·学习·缓存·哈希算法·项目
费曼的黑板6 小时前
国产低功耗带LCD驱动和触摸按键功能的MCU
单片机·嵌入式硬件