打印

程序疑惑

[复制链接]
916|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
西陆|  楼主 | 2020-3-25 15:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
TE, AN, ST, RS, rc
这样写延时函数有没有问题:
DELAY_ANYMS:
             LDR CN1,0
             STR TEMP1
             LDR CN2,0
             STR TEMP2
    DELAY_ANYMS_1:
         CLRWDT
         DECRSZ   TEMP1,1
         LJUMP    DELAY_ANYMS_1
         DECRSZ   TEMP2,1
         LJUMP    DELAY_ANYMS_1
         RET



能不能实现我改变CN1和CN2的值  改变延时时间,我试过没找到规律。
求大佬解答

使用特权

评论回复

相关帖子

沙发
西陆|  楼主 | 2020-3-25 15:44 | 只看该作者

使用特权

评论回复
板凳
西陆|  楼主 | 2020-3-25 15:44 | 只看该作者
有没有大佬来解答一手

使用特权

评论回复
地板
叶春勇| | 2020-3-25 15:46 | 只看该作者
你这是什么单片机呀

使用特权

评论回复
5
西陆|  楼主 | 2020-3-25 16:04 | 只看该作者
叶春勇 发表于 2020-3-25 15:46
你这是什么单片机呀

FT60F02X  辉芒微的

使用特权

评论回复
6
叶春勇| | 2020-3-25 16:43 | 只看该作者
西陆 发表于 2020-3-25 16:04
FT60F02X  辉芒微的

这个单片机有c语言的。

使用特权

评论回复
7
blust5| | 2020-3-25 17:06 | 只看该作者
对汇编已经忘光了,目前都是用C

使用特权

评论回复
8
光轮TreeOS| | 2020-3-26 09:09 | 只看该作者
DECRSZ   TEMP1,1   
DECRSZ   TEMP2,1

操作的都是TEMP1、TEMP2,怎么会实现改变CN1和CN2的值  改变延时时间呢,有些疑惑。

使用特权

评论回复
9
西陆|  楼主 | 2020-3-26 09:34 | 只看该作者
光轮TreeOS 发表于 2020-3-26 09:09
DECRSZ   TEMP1,1   
DECRSZ   TEMP2,1

是   实现:如果我改变  cn1,2的值  能不能 改变延时时间。

使用特权

评论回复
10
光轮TreeOS| | 2020-3-26 15:37 | 只看该作者
貌似不能,因为你判断的是TEMP1和TEMP2的值,改CN1、CN2和它有关系吗

使用特权

评论回复
11
叶春勇| | 2020-3-26 16:45 | 只看该作者
        MOVLW        0x0a
        MOVWF        _cn1
        MOVLW        0x14
        MOVWF        _cn2
_00114_DS_:
        MOVF        _cn1,W
        BTFSS        STATUS,2
        GOTO        _00108_DS_
_00111_DS_:
        MOVF        _cn2,W
        BTFSS        STATUS,2
        GOTO        _00115_DS_
        DECF        _cn2,F
        GOTO        _00111_DS_
_00115_DS_:
        DECF        _cn1,F
        GOTO        _00114_DS_

/* c d代码 * /
volatile unsigned char cn1=0,cn2=0;

#define delay(A,B) {cn1=(A);cn2=(B);for(;cn1==0;cn1--) for(;cn2==0;cn2--);}
void main (void)
{
        delay(10,20);
        while(1);
}

使用特权

评论回复
12
西陆|  楼主 | 2020-3-30 10:26 | 只看该作者

goto  _00108_ds_   这里报错

使用特权

评论回复
13
叶春勇| | 2020-3-30 11:41 | 只看该作者
西陆 发表于 2020-3-30 10:26
goto  _00108_ds_   这里报错
                LDWI         AH                         //000B         2A0A
                ORG                000CH
                STR         40H                         //000C         01C0
                LDWI         14H                         //000D         2A14
                STR         41H                         //000E         01C1
                LJUMP         15H                         //000F         3815
                DECR         41H,1                         //0010         0DC1
                LDR         41H,0                         //0011         0841
                BTSC         STATUS,2                 //0012         1503
                LJUMP         10H                         //0013         3810
                ORG                0014H
                DECR         40H,1                         //0014         0DC0
                LDR         40H,0                         //0015         0840
                BTSC         STATUS,2                 //0016         1503
                LJUMP         11H                         //0017         3811
                LJUMP         18H                         //0018         3818
                LDR         43H,0                         //0019         0843
                STR         PCLATH                         //001A         018A
                SWAPR         42H,0                         //001B         0742
                ORG                001CH
                STR         STATUS                         //001C         0183
                SWAPR         7EH,1                         //001D         07FE
                SWAPR         7EH,0                         //001E         077E
                RETI                                         //001F         0009
                CLRR         STATUS                         //0020         0103
                LJUMP         0BH                         //0021         380B
                        END

使用特权

评论回复
14
叶春勇| | 2020-3-30 11:41 | 只看该作者
这个c语言生成的代码的确没专用指令效率。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

8

帖子

0

粉丝