当前位置:首页 > 技术心得 > 正文内容

Keil C51中嵌入汇编

xjtudll16年前 (2010-04-20)技术心得18260

   我们知道,用C语言实现精确延时是一件比较困难的事情,而用汇编写精确延时程序就简单多了,但是整个程序都用汇编,那就是件头疼的事情。要是能在C里面嵌入汇编,那就爽了,本文介绍的就是如何在Keil C51里嵌入汇编。

 

1、在 C 文件中以如下方式加入汇编代码:

#pragma ASM

; Assembler Code Here

#pragma ENDASM

 

例如:

//延时1ms程序 晶振:11.0592MHZ

   void delay_1ms(void)                

   {

   #pragma asm

              DELAY1MS: MOV R7,#50

              DD: MOV R6,#10

              D2: DJNZ R6,$

              DJNZ R7,DD

   #pragma endasm

   }

 

2、在 Project 窗口中包含汇编代码的 C 文件上右键,选择“Options for ...”,点击右边的“Generate Assembler SRC File”和“Assemble SRC File”,使检查框由灰色变成黑色(有效)状态。如图所示。

 

3、根据选择的编译模式,把相应的库文件( Small 模式时,是 Keil\C51\Lib\C51S.Lib)加入工程中, 该文件必须作为工程的最后文件

4、编译,即可生成目标代码。 

扫描二维码推送至手机访问。

版权声明:本文由鸟的天空发布,如需转载请注明出处。

本文链接:http://xjtudll.cn/Exp/74/

标签: keilC51
分享给朋友:

“Keil C51中嵌入汇编” 的相关文章

Android调用系统自带的文件管理器进行文件选择

参考资料: http://blog.csdn.net/zqchn/article/details/8770913 http://www.xuebuyuan.com/929105.html 调用系统自带的文件管理器来选择文件         pri...

Doxygen-利用graphviz生成及添加函数关系调用图

Doxygen-利用graphviz生成及添加函数关系调用图

准备工作:安装graphviz。 参考文献:http://hi.baidu.com/rdray/item/7b39b14830ba6c08c116131a 基本配置就不讲了,与生成Html文件类似。请参考:http://xjtudll.cn/Exp/243/ 1、Expert->Dot 要勾选...

CRC查表法——表的由来

为了更容易理解这篇文章,拿出纸笔跟着算一遍吧。文中的一些假定:a0,a1,b0,b1,b2,b3,c1,c2,c3等等,拿笔将其含义记下来,免得思维混乱。 查表法实际上利用的是XOR运算的交换律和结合律,即(A XOR B )XOR C = A XOR (B XOR C) 我们再以一个简单的例子来...

“数据类型 varchar 和 bit 在 add 运算符中不兼容”解决方法

      在SQL 2005中出现“数据类型 varchar 和 bit 在 add 运算符中不兼容”只需用convert()函数       如要把一个bit类型的变量@n...

IOS获取应用程序的名称和版本号

应用程序的名称和版本号等信息都保存在mainBundle的一个字典中,用下面代码可以取出来。 NSDictionary* infoDict =[[NSBundle mainBundle] infoDictionary]; NSString* versionNum =[infoDict object...

CC2541  HOGP Android 5.x无法自动回连

CC2541 HOGP Android 5.x无法自动回连

参考资料: https://e2e.ti.com/support/wireless_connectivity/bluetooth_low_energy/f/538/t/406142 问题: 使用CC254x做BLE键盘,利用HOGP(HID Over Gatt Profile),成功实现了键盘的功能...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。