- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
绍兴文理学院 工学院 沈红卫 2012 年4 月 http :///kc/dgdz
利用内嵌汇编实现STC 单片机与51 的无缝对接
——KEIL C 程序中内嵌汇编的实现方法图解
绍兴文理学院 沈红卫
宏晶的STC 系列51 单片机,由于其功能强大、抗干扰能力高、价格低,与51 单片机
充分兼容,以及可以在线烧写(IAP )/在系统烧写(ISP )等众多优点,越来越被认可,得
到越来越多的关注和使用。
我在多年的教学中,一直推荐学生学习和使用这种单片机,并且开发了基于 STC 单片
机的学习平台 《单片机实验系统V2 》、《单片机实验系统V2 》、《单片机实验系统V3 》。这些
平台的共同特点 ,可以利用串口实现在系统烧写程序 (可以烧写 10 万次以上),方便地在
寝室、家里搭建自己的单片机实验室,为 《C 语言》、《单片机原理及应用》等课程的学习奠
定坚实的实践基础,也可大大激发学习的兴趣和动力。
烧写软件可到STC 的官方网站免费下载。通过串口与STC 系统连接,即可实现程序的
烧写。对于没有串口的电脑,可以采购USB-232 转接电缆或转接头,实现将USB 口转换为
串口使用。USB-232 转接电缆或转接头在淘宝上很多,价格从10-50 不等,一般都能使用。
但 ,很多同学在学习单片机原理的时候,因为老师通常以AT89C51 为范例讲述,因
此多接触的 普通51 单片机,而 STC 的单片机 1T 单片机,在运算速度上比普通 51 快
8-10 倍,因此,导致很多在普通51 单片机,例如AT89C52 上能运行的程序,在STC 单片
机上不能 常运行。究其原因,主要 STC 1T 单片机,速度快了,原来的程序中如果涉
及到比较严格的时序配合的,就不能照搬。必须进行少许改造,改造的重点就 调整延时函
数或者子程序。
改造的途径有几种,这里介 通过在C 语言程序中潜入汇编的形式。利用KEIL C 支持
内嵌汇编的特性,通过汇编来写延时函数,可以确保延时的精度,另外不至于改造源程序太
费劲 (只要延时的部分能确保延时时间一致就行)。
本文主要讨论内嵌汇编的实现问题。
在 KEIL 中嵌入汇编的方法很简单。在C 文件中要嵌入汇编的地方用#pragma asm 和
1
绍兴文理学院 工学院 沈红卫 2012 年4 月 http :///kc/dgdz
#pragma endasm 分隔开来,这样编译时KEIL 就知道这中间的一段 汇编了。以下以具体实
例加以说明。
在KEIL 中建立以下工程文件。该程序包含汇编程序。
对加入汇编的源程序myinasm_c.c 要设置编译该文件时的选项。(通过在该文件上右击
鼠标左键,选中快捷菜单中的OPTIONS 选项得到)
激活Generate Assembler SRC File (生成汇编SRC 文件)、Assemble SRC File (封装汇
编文件)。如下图所示 (激活状态)
2
绍兴文理学院 工学院 沈红卫 2012 年4 月 http :///kc/dgdz
选上这两项就可以在 C 中嵌人汇编了,此后,设置后在文件图示中多了三个红色的小
方块。
为了能对汇编进行封装还要在项目中加入相应的封装库文件, 在笔者的项目中编译模
式 小模式所以选用C51S.LIB 。这也 最常用的。这些库文件 中KEIL 安装目录下的LIB
目录中。 加好后就可以顺利编译了。具体加法 :首先右键source files 文件夹,得到下图
界面。选择ADD FILES…选项。
3
绍兴文理学院 工学院 沈红卫 2012 年4 月 http :///kc/dgdz
然后根据你的程序的编译模式 (默认都市 SMALL 模式)。从KEIL 的系统文件下找到
C51S.LIB 加入即可
您可能关注的文档
- 贵州师范大学学生科研申请书1教案.doc
- 岩体分类二元相对模糊评判法.pdf
- 静态路由参数Track.docx
- 分页式系统的FIFO与OPTIMAL置换算法,操作系统实验vc2010代码.doc
- 第五章 2016年会计继续教育题 得分95分.doc
- 方程与不等式的练习题.doc
- 第十一章 计算机网络课后答案精简版.doc
- 地下单层无梁楼盖结构设计及计算分析.pdf
- 个人博客系统毕业设计论文幻灯片.doc
- 第十一章 计算机网络习题4.doc
- 中国国家标准 GB/T 18233.4-2024信息技术 用户建筑群通用布缆 第4部分:住宅.pdf
- GB/T 18233.4-2024信息技术 用户建筑群通用布缆 第4部分:住宅.pdf
- GB/T 18978.210-2024人-系统交互工效学 第210部分:以人为中心的交互系统设计.pdf
- 《GB/T 18978.210-2024人-系统交互工效学 第210部分:以人为中心的交互系统设计》.pdf
- 中国国家标准 GB/T 18978.210-2024人-系统交互工效学 第210部分:以人为中心的交互系统设计.pdf
- GB/T 16649.2-2024识别卡 集成电路卡 第2部分:带触点的卡 触点的尺寸和位置.pdf
- 《GB/T 16649.2-2024识别卡 集成电路卡 第2部分:带触点的卡 触点的尺寸和位置》.pdf
- 中国国家标准 GB/T 16649.2-2024识别卡 集成电路卡 第2部分:带触点的卡 触点的尺寸和位置.pdf
- GB/T 17889.4-2024梯子 第4部分:铰链梯.pdf
- 《GB/T 17889.4-2024梯子 第4部分:铰链梯》.pdf
最近下载
- 百日咳试题附有答案.docx VIP
- 2024年广东省深圳市光明区人大常委会办公室招聘一般类岗位专干12人历年【综合基础知识500题】高频考点模拟试题及参考答案解析.docx VIP
- 高中语文任务驱动型材料作文:枯燥与热闹审题指导(含解析).docx VIP
- 某镇卫生院污水设计方案.pdf VIP
- 2024年广东深圳市光明区人大常委会办公室招聘一般类岗位专干3人历年【综合基础知识500题】高频考点模拟试题及参考答案解析.docx VIP
- 中考数学经验交流会发言稿.pdf
- 2024年7月广东省深圳市光明区人大常委会办公室招聘10人历年【高频考点汇总500题】模拟卷及参考答案详解.docx VIP
- 《溜冰圆舞曲和雷鸣电闪波尔卡》精品课件2023.pptx
- 水利项目安全评价报告.docx
- 2024年7月广东省深圳市光明区人大常委会办公室招聘10人历年【综合基础知识500题】高频考点模拟试题及参考答案解析.docx VIP
文档评论(0)