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

Keil C51中嵌入汇编

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

   我们知道,用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://www.xjtudll.cn/Exp/74/

标签: keilC51
分享给朋友:

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

Windows Server 2012 发布RemoteApp程序

Windows Server 2012 发布RemoteApp程序

https://blog.51cto.com/vic366/924410 打开管理器管理器仪表板,选择本地服务器->远程桌面服务 选择集合->QuickSessionCollection->任务->发布RemoteApp程序 选择要发布程序的程序 如果程序不在列表中,可以...

Win7在此处打开命令窗口

Win7在此处打开命令窗口

有时候会用到命令行 但是每次都要cd,太麻烦 后来发现居然可以用shift+右键,就会弹出来“在此处打开命令窗口”。...

SQL Server 树形递归查询

SQL Server 树形递归查询

原始查询 原始表格查询: select * from dbo.T_DeptInfo; 原始表格查询结果:: 递归查询 递归查询结果 带缩进的的树形递归查询 缩进递归查询结果 查询是否子节点的树形递归查询 树形递归查询是否包含子节点的查询结果...

水晶报表 跳过打印预览,直接打印

不要用 CrytalReportViewer1.ReportSource=myReport; 直接myReport.PrinttoPrinter(1,true/false,0,0); 重点就是这个PrintToPrinter函数...

金蝶K3老单插件开发-如何刷新单据、锁定单据

在金蝶K3工业老单插件开发中,用SQL在后台更新了单据数据,如何刷新单据,将新的值显示在单据上?用 m_BillTransfer.DoRefreshControl方法是不行的,需要使用如下方法: m_BillTransfer.BillFunc.ReFillBill 再介绍几个K3工业老单BillFu...

c# textbox的passwordchar清空

//三种都是清空 this.textBox1.PasswordChar = new char(); this.textBox1.PasswordChar = '\0'; this.textBox1.PasswordChar = default(char);...

发表评论

访客

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