ZDB5304烧写方法

1.  跳线和5304的位置如下图

 

2. 打开z-wave programmer软件,设置如下图,注意烧写接口为uart,烧写的时候会提示的。选yes是uart,选no是spi。

  

烧写过程中会提示按下reset或释放reset按键。照做即可。

烧完后,用Compare来比对一下,确认是否烧写成功。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
先解释一下题目中的数据定义: - X DW10,20.30,40,50 表示定义了一个名为 X 的数据段,其中包含了 5 个双字(即 10 个字节)的数据,分别是 10、20.30(实数)、40、50,按照从左到右的顺序存放。 - Y DB4 表示定义了一个名为 Y 的数据段,其中包含了 4 个字节的数据,每个字节都是一个无符号整数。 - Z DB? 表示定义了一个名为 Z 的数据段,其中包含了 1 个字节的数据,初始值未知。 - W DB? 表示定义了一个名为 W 的数据段,其中包含了 1 个字节的数据,初始值未知。 接下来是表达式计算的过程: 1. 将 X 中的所有数据相加得到总和 S,即 S = 10 + 20.30 + 40 + 50 = 120.30。 2. 将 Y 中的所有数据相加得到总和 T,即 T = Y[0] + Y[1] + Y[2] + Y[3]。 3. 计算商 Q 和余数 R,其中 Q = INT(S / T) = INT(120.30 / T),R = S - Q * T。 4. 将 Q 和 R 分别存入 Z 和 W。 根据以上步骤,可以编如下代码: ``` ; 数据段 姓名DW DW 0 达瓦DW DW 0 格桑普布DW DW 0 曲吉热巴DW DW 0 扎西次仁DB DB 0, 0, 0, 0 朗杰DB DB ?, 0 ; 代码段 assume cs:代码段, ds:数据段 start: ; 将 X 中的所有数据相加得到总和 S mov eax, [姓名DW] add eax, [达瓦DW] fld [格桑普布DW] fadd dword ptr [曲吉热巴DW] fadd SBYTE ptr [扎西次仁DB] fstp qword ptr [esp] ; 将浮点数结果保存到栈顶 ; 将 Y 中的所有数据相加得到总和 T movzx eax, BYTE ptr [朗杰DB] add al, BYTE ptr [朗杰DB+1] add al, BYTE ptr [朗杰DB+2] add al, BYTE ptr [朗杰DB+3] ; 计算商 Q 和余数 R mov ecx, eax ; ecx = T fild qword ptr [esp] ; 将 S 转为浮点数 fidiv dword ptr [朗杰DB] ; ST(0) = S / T fistp dword ptr [朗杰DB] ; Q = ST(0),保存到 Z 中 mov ebx, eax ; ebx = Q imul ecx ; edx:eax = T * Q mov eax, [姓名DW] add eax, [达瓦DW] fld [格桑普布DW] fadd dword ptr [曲吉热巴DW] fadd SBYTE ptr [扎西次仁DB] fsub st(0), st(1) ; ST(0) = S - T * Q fistp dword ptr [esp] ; R = ST(0),保存到 W 中 mov BYTE ptr [朗杰DB+1], al ; 将 R 存入 W 中 ; 程序结束 mov ah, 4ch int 21h end start ``` 需要注意几点: - 浮点数运算需要使用 FPU 指令,而且 FPU 寄存器的操作是栈式的。 - 在进行浮点数运算之前,需要先将整数转为浮点数,可以使用 FILD 指令。 - 在进行整数除法之前,需要先将浮点数转为整数,可以使用 FIST 指令。由于 FIST 指令会将结果存入内存中,因此需要指定存储地址。 - 由于浮点数运算和整数运算使用的寄存器不同,因此需要注意保存和恢复现场。在上面的代码中,将浮点数结果保存到栈顶,然后再从栈顶取出进行整数运算。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值