当前位置: 首页 > news >正文

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

http://www.lryc.cn/news/387650.html

相关文章:

  • 【Qt+opencv】图片与视频的操作
  • Kubernetes面试整理-PersistentVolumes和PersistentVolumeClaims的使用和配置
  • C++学习全教程(Day2)
  • Transformer详解encoder
  • ISO 19110操作要求类/req/operation/signature的详细解释
  • 理解GPT2:无监督学习的多任务语言模型
  • 深度学习11-20
  • 耐磨材料元宇宙:探索未来科技的无限可能
  • 力扣2874.有序三元组中的最大值 II
  • Linux-笔记 嵌入式gdb远程调试
  • 观测云产品更新 | Pipelines、智能监控、日志数据访问等
  • docker 拉取不到镜像的问题:拉取超时
  • 防火墙双机热备
  • 30分钟学习如何搭建扩散模型的运行环境【pytorch版】【B站视频教程】【解决环境搭建问题】
  • 使用Java连接数据库并且执行数据库操作和创建用户登录图形化界面(1)
  • HarmonyOS Next开发学习手册——弹性布局 (Flex)
  • centOS7网络配置_NAT模式设置
  • 喜报 | 极限科技获得北京市“创新型”中小企业资格认证
  • 整合Spring Boot和Pulsar实现可扩展的消息处理
  • 如何给WPS、Word、PPT等办公三件套添加收费字体---方正仿宋GBK
  • 《重构》读书笔记【第1章 重构,第一个示例,第2章 重构原则】
  • 学会整理电脑,基于小白用户(无关硬件升级)
  • 使用ioDraw,AI绘图只需几秒钟!
  • Websocket解析及用法(封装一个通用订阅发布主题的webSocket类)
  • Foxit Reader(福昕阅读器)详细安装和使用教程
  • c++静态成员变量和静态成员函数
  • 视频共享融合赋能平台LntonCVS统一视频接入平台数字化升级医疗体系
  • Gin框架基础
  • 用GPT-4纠错GPT-4 OpenAI推出CriticGPT模型
  • SQL CASE WHEN语句的使用技巧