STC32G读1个字节XDATA内存或XFR寄存器要10个时钟,这么拉跨吗

[复制链接]
820|12
手机看帖
扫描二维码
随时随地手机跟帖
ayb_ice| | 2022-5-17 14:32 | 显示全部楼层
怎么可能呢,看手册

使用特权

评论回复
英雄本色2022|  楼主 | 2022-5-17 20:07 | 显示全部楼层
ayb_ice 发表于 2022-5-17 14:32
怎么可能呢,看手册

实测了一下,读指令确实要10个时钟,写指令要9个时钟,而手册上说要2-3个时钟,看来手册水份比较大

使用特权

评论回复
ayb_ice| | 2022-5-18 08:31 | 显示全部楼层
英雄本色2022 发表于 2022-5-17 20:07
实测了一下,读指令确实要10个时钟,写指令要9个时钟,而手册上说要2-3个时钟,看来手册水份比较大 ...

怎么可能呢,有个寄存器控制这个速度的,默认是降速的

使用特权

评论回复
STCMCUNT018| | 2022-5-18 08:44 | 显示全部楼层
还是查下指令表,一个团队干的是,还是比江湖大侠要认真很多,最后一列是运行本指令需要的时钟数,在 STC 已不讲机器周期,只讲时钟 1.jpg 2.jpg 3.jpg

使用特权

评论回复
ayb_ice| | 2022-5-18 08:55 | 显示全部楼层
97782628443c9b7c2a.png


使用特权

评论回复
英雄本色2022|  楼主 | 2022-5-18 13:36 | 显示全部楼层
ayb_ice 发表于 2022-5-18 08:31
怎么可能呢,有个寄存器控制这个速度的,默认是降速的

WTST=0加了,不加也测试了是17个时钟

使用特权

评论回复
ayb_ice| | 2022-5-18 14:03 | 显示全部楼层
英雄本色2022 发表于 2022-5-18 13:36
WTST=0加了,不加也测试了是17个时钟

你具体是怎么测试的呢,有代码吗

使用特权

评论回复
英雄本色2022|  楼主 | 2022-5-18 14:17 | 显示全部楼层
ayb_ice 发表于 2022-5-18 14:03
你具体是怎么测试的呢,有代码吗

定时器T0设置为1T模式,把DR56指向地址01:0100H,使用以下测试代码:
SETB TR0
MOV R0,@DR56
CLR TR0
MOV SBUF,TL0
JNB TI,$
CLR TI
SJMP $

使用特权

评论回复
ayb_ice| | 2022-5-18 15:09 | 显示全部楼层
英雄本色2022 发表于 2022-5-18 14:17
定时器T0设置为1T模式,把DR56指向地址01:0100H,使用以下测试代码:
SETB TR0
MOV R0,@DR56

这个代码基本是可以的,但实际是测量的结果是加上了CLR TR0这条指令的时间了,有误差,最好还加上关中断,建议这样求平均值
CLR                EA
SETB         TR0
CLR                A
MOV                TL0,A
MOV R0,@DR56
MOV R0,@DR56
MOV R0,@DR56
MOV R0,@DR56
MOV R0,@DR56
MOV R0,@DR56
MOV R0,@DR56
MOV R0,@DR56
MOV R0,@DR56
MOV R0,@DR56
MOV R0,@DR56
MOV R0,@DR56
MOV R0,@DR56
MOV R0,@DR56
MOV R0,@DR56
MOV R0,@DR56
MOV        A,TL0
MOV SBUF,A
JNB TI,$
CLR TI
SJMP $

使用特权

评论回复
STCMCUNT018| | 2022-5-19 13:08 | 显示全部楼层
设置 速度的,为跑500MHz 考虑的 ,外设慢,要设置等待时钟 QQ图片20220519130738.png QQ图片20220519130745.png

使用特权

评论回复
英雄本色2022|  楼主 | 2022-5-19 14:20 | 显示全部楼层
确实,把CKCON设置为0后就正常了

使用特权

评论回复
tzgok| | 2022-5-19 18:42 | 显示全部楼层
StC有些时候确实奇葩奇葩,你所有寄存器上电默认最高性能设置不就省事了吗?

使用特权

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

本版积分规则

2

主题

42

帖子

2

粉丝