- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第04章节单片机程序的设计基本
第4章 单片机程序设计基础;§4.1 编程的步骤、方法和技巧;§4.1.1 编程的步骤;§4.1.2 编程的方法和技巧;一、模块化的程序设计方法;1、程序功能模块化的优点;2、划分模块的原则;二、编程技巧;§4.1.3 汇编语言程序的基本结构;§4.2 汇编语言源程序的编辑和汇编;§4.2.1 源程序的编辑;§4.2.2 源程序的汇编;§4.2.3 伪指令;ORG 汇编起始命令;END 汇编结束指令;EQU 赋值命令;DATA 数据地址赋值命令;DB 定义字节命令;DW 定义字命令;DS 定义存储空间命令;BIT 位地址符号命令;§4.3 汇编语言程序设计举例;一、 简单程序设计举例;例2:16位数求补。设16位二进制数在R1R0中,求补结果存于R3R2中。; 例1:片内RAM ONE和TWO两个单元中存有两个无符号数,将两个数中的小者存入RES单元。程序如下:;例2 使用多条CJNE实现多分支程序转移 某温度控制系统,采集的温度值(Ta)放在A中,此外,在内部RAM 54h单元存放控制温度的下限值(T54),在55h单元中存放控制温度的上限(T55),若TaT55,程序转向JW(降温处理),若TaT54,程序转向SW(升温处理),否则,转向FH(返回主程序).;例3 使用散转指令实现多分支程序设键盘上有3个操作键 键值:01 功能:读数据 键值:02 功能:写数据 键值:03 功能:插入数据 假定键值放在A中;;JMP_128: MOV A, R3
RL A
MOV DPTR, #JMPTAB
JMP @A+DPTR
JMPTAB: AJMP ROUT00 ; 128个子程序首址
AJMP ROUT01
… …
AJMP ROUT7F;三 、循环程序;循环程序;四、 子程序设计举例;例:片外RAM2000H单元中有一BCD码,编一子程序将其转换成ASCII码。;六 、运算类程序设计举例;例2:编写将30H,31H单元中的两字节二进制数乘以2的程序(积小于65536)。;例1 利用查表的方法编写Y= X2 (X=0,1,2…9 )的程序。
编程说明:
设变量X的值存放在内存30H单元中,变量Y的值存入内存31H单元。
先用远查表指令MOVC A, @A+DPTR 编写程序(参考程序1);再用近查表指令MOVC A , @A+PC 编写程序(见参考程序2)。;参考程序1:
ORG 1000H
START: MOV A , 30H
MOV DPTR , #TABLE
MOVC A , @A+DPTR
MOV 31H , A
TABLE: DB 0 , 1 , 4 , 9 , 16
DB 25 , 36 , 49 , 64 , 81
END;参考程序2:
ORG 1000H
START: MOV A , 30H
ADD A , #03H;思考该指令的作用?
MOVC A , @A+PC
MOV 31H , A
RET
DB 0 , 1 , 4 , 9 , 16
DB 25 , 36 , 49 , 64 , 81
END;例2 将1位十六进制数,转换成相应ASCⅡ码。用计算求解和查表求解,进行比较。
(1) 计算求解:
编程说明: 设待转换的一位十六进制数存放在40H 单元中,转换后的ASCⅡ码仍存放在40H 中。
编程思路:
十六进制数0~9 ASCⅡ码:30H~39H,加30H,
十六进制数A~F ASCⅡ码:41H~46H,加37H。;Date;参考程序如下:
ORG 0100 H
MOV A , 40 H
ANL A , # 0F H
CLR C
SUBB A, # 0AH ;A10?
JC NEXT
ADD A , #0AH
ADD A , #37H
SJMP SAVE
NEXT: ADD A , #0AH
ADD A , #30H
SAVE: MOV 40H , A
RET
END;(2) 查表求解:
ORG 0100H
MOV A , 40H
您可能关注的文档
最近下载
- 家居装饰行业大数据精准营销策略分析报告.docx
- SH217_03ERP项目_MM物资组关键方案介绍_收货_v1.1-.pptx VIP
- 格物入门. 第1-7卷 丁韪良 著 同治7年 北京 同文馆1.pdf VIP
- 电磁场的对称性分析.pdf VIP
- 传感器基础教科书原理和特点讲解.pdf VIP
- TCBDA51-2021 住宅装饰装修工程施工技术规程.pdf VIP
- 最新人教版九年级数学下册 全册教学课件全集(858张).ppt VIP
- TCBDA 55-2021 住宅室内装饰装修工程质量验收标准.docx VIP
- SH217_03ERP-2_详细业务蓝图及解决方案_3.1-神朔修改后.docx VIP
- 2025年重庆市中考数学试卷(含标准答案)原卷.pdf
文档评论(0)