- 打卡等级:初来乍到
- 打卡总天数:1
- 最近打卡:2023-11-29 11:12:58
新手上路
- 积分
- 39
|
第一次使用STC8H单片机,MDU16硬件乘法器算出来的值为什么全部为0?其数值也没有超过其范围。
为了检查将MD3,MD2,MD1,MD0,通过串口输出,发现里面的数据不是我所写的数据,好像是一些随机数,同样对DMA的串口的寄存器读出也是一些随机数?但DMA的串口能正常使用。而对0000-0005H写入数据后读出是正常的!
还有就是M2M_DMA,能将数据传送给R0,R1这些吗?
现在怀疑是不是我这块单片机有问题啊?
ORL P_SW2,#80H
MOV DPTR,#ARCON ;32位÷16位计算 ;{MD3,MD2,MD1,MD0}÷{MD5,MD4}={MD3,MD2,MD1,MD0}....{MD5,MD4}
MOV A,#0C0H
MOVX @DPTR,A
MOV DPTR,#OPCON ;开始计算
MOV A,#01H
MOVX @DPTR,A
CF32_:
MOV DPTR,#OPCON
MOVX A,@DPTR
JB ACC.0,CF32_ ;计算是否完成
单片机型号: STC8H8K64U
固件版本号: 7.4.4U
. 用户设定频率: 24.000MHz
. 调节后的频率: 23.995MHz ( 主时钟分频系数 = 1; )
. 频率调节误差: -0.020%
|
|