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

tenx(十速)TM87系列常用宏(一)

xjtudll17年前 (2010-02-08)技术心得10430

tenx(十速)TM87系列常用宏(一)

 

首先,定义一些寄存器,用于存储临时变量,定义R0R770H~77H,方便LCD显示。

定义如下:

ORG 70H

R0 DN 1

R1 DN 1

R2 DN 1

R3 DN 1

R4 DN 1

R5 DN 1

R6 DN 1

R7 DN 1

由于累加器AC和状态寄存器CF无法直接操作,所以定义两个寄存器给ACCF

ACC DN 1

CF DN 1

比较常用的宏有:

1RAM清零

单片机上电后,RAM值是未知的,未避免出现错误,所以需要对RAM清零。

ClearRAM                    .macro 

                                                 .locallabel ClearRAMLoop

                                                        LDS R0,$00

                                                        MVU R0 

                                                        MVH R0

                                                        MVL R0

ClearRAMLoop: 

                                                        MRW# @HL,R0

                                                        CPHL $00

                                                        JMP ClearRAMLoop

             .endm

2LCD清屏

ClearScreen                        .macro

                                                        LDS R0,$00

                                                        MVU R0

                                                        MVH R0

                                                        MVL R0

                                                        LCPX 0

                                                        LCPX 1

                                                        LCPX 2

                                                        LCPX 3                       

                                          .endm

3、中断压栈和出栈

压栈

;压栈

PUSH                                .macro

                                                        STA ACC

                                                        MAF CF

                                          .endm

出栈

;出栈                                                      

POP                                    .macro

                                                        LDA ACC

                                                        MRA CF

                                          .endm

4、清除CFAC

清除CF

;清除CF

CLRCF                               .macro

                                                        RF C

                                          .endm

清除AC

;清除AC

CLRAC                               .macro

                                                        LDS R0,$0

                                          .endm

 

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

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

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

分享给朋友:

“tenx(十速)TM87系列常用宏(一)” 的相关文章

如何获取.NET Framework目录路径?

问题: 如何在C#应用程序中获取.NET Framework目录路径? 例如:“C:\ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727” 方法: 通过使用以下方法可以获取当前.NET应用程序活动的CLR安装目录的路径: Sys...

自定义"back" navigation button 的动作

目的: 监测“返回”按键,并执行相关操作。 问题分析: 首先,“返回”按键是无法监测的,但是返回操作后,界面上会有所改变,所以可以在VIewWillDisappear中执行相关操作。   参考资料: http://stackoverflow...

Keil查看编译后的汇编代码

Keil查看编译后的汇编代码

在使用Keil编译C51时,一般情况下,大家都不去看汇编代码。但在某些特殊情况下,查看汇编代码就是有必要了。 (1)确认C代码是否正确 (2)研究算法 查看汇编代码前的某些准备工作是必须的:你得有工程,并确定程序编译无误。在查看汇编代码前,编译一次。 编译OK后,点Debug 有可能会提示你没有...

金蝶K3采购订单序时簿过滤条件的执行状态分别是什么意思?

【概述】 未完全到货:【数量】-【收料数量】>0的单据 未完全入库:【数量】-【入库数量】>0的单据 未完全开票:【数量】-【开票数量】>0的单据 未完全付款:【价税合计】-【付款关联金额】>0的单据 完全付款: 【价税合计】-【付款关联金额】=0的单据...

Quartus II Warning: Found 6 node(s) in clock paths which may be acting as ripple and/or gated clocks

Quartus II编译某代码之后,老是提示如下warning: Warning: Found 6 node(s) in clock paths which may be acting as ripple and/or gated clocks -- node(s) analyzed as buf...

Altium Smart PDF中文不显示问题

Altium Smart PDF中文不显示问题

在用Altium SmartPDF的时候发现,没法打印出中文,凡是有中文的地方,直接就是空白了,英文能正常显示。如图所示: 实际内容 显示内容 两个图片对比后,可以清晰的看出:中文全部未显示出来,都是空白。 究其原因,很简单,就是汉字的字体没有选中文字体,选用的是英文字体。 该如何解决这个问题呢...

发表评论

访客

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