T5开发

T5D1开发心得

迪文目前T5产品型号非常多,就个人来看开发来看,对T5UID1熟悉度较高,主要包括4.3寸和3.5寸86盒产品。
关于T5UID1,从入门方面来讲和原来的K600+系列产品相比地址和一些指令出现了变动,1包括T5的地址规划必须从1000H开始原来的K600+是从0开始,2,指令中数据库操作指令MOVXL指令取消,数据库读写改为地址0008H如下图
在这里插入图片描述
数据库读写变为
LDWR R0,0008H
LDWR R20,5A(A5)00H
LDWR R22,0000H
LDWR R24,1000H
LDWR R26,0002H
MOVXR R20,0,4
上面几行代码表示将将变量地址1000H从数据库地址000000中读出来/(写进去)
读取长度为两个字。
另外T5UID1相比K600+在编写时多了框架要求如下图;
在这里插入图片描述
其中当需要使用中断时标准格式为
ORG 1000H
GOTO MAIN
GOTO T0INT
GOTO T1INT
GOTO T2INT
ORG 1080H
MAIN NOP
GOTO MAIN
T0INT:
NOP
RETI
T1INT:
NOP
RETI
T2INT:
NOP
RETI
不需要使用中断将 GOTO T1INT换位NOP即可。
主程序从MAIN开始即可。
说完了区别那么开始关于T5UID1的初步编程,首先从最简单的变量地址赋值开始如下图:
在这里插入图片描述
其中R0为加载变量地址将对其读写,1000H表示变量地址,R10之前各寄存器有实际应用含义不可随意使用,200表示赋值量,MOVXR读写指令,详细使用见迪文开发指南。
写完上面表示会基本的赋值,那么上面对应的“变量地址赋值”是程序对应的子程序,这时候就需要了解相关的子程序调用了,迪文的子程序调用格式为
CALL 子程序
子程序:
NOP
RET
各子程序结束时需要RET不然会继续向下执行不会结束,子程序支持嵌套。
讲到这里各位对基本功能块的写法有个基本了解,为了加深映像下面增加了几个例子,比如跳转,加减法如下
在这里插入图片描述
从上图那么就可以进行基本的运算和判断,其中,ADD表示进行加法运算,R10,R14为32Bit数,R20表示64Bit数据,100+100结果等于200结果在R27寄存器,所以使用LDWR时是双字节长度,所以从R26将其取出,IJNE为8Bit立即数判断,表示对于一些需要判断条件1001H地址中的数据等于200时执行操作,否则跳转,执行其它功能,这种判断对执行特殊指令的功能特别适用,比如温控器应用中,达到多少温度执行开关机或者定时开关机功能。这样使用逻辑判断来实现较为复杂的功能。
通过上面的学习相信大家对T5UID1有个基本的思路,配合开发指南的详细说明,一些较为简单的功能应该能较快写出,只有熟练掌握基本功能那么接下来一些较为复杂的功能,比如最常用的密码功能,简单固定密码写法就是如下,密码为123456
在这里插入图片描述
复杂的可修改密码写法又相对来说复杂一些如下所示:
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
通过上面可以看出,无论代码的量和逻辑都增加了非常多,但是都是密码功能,其实就是从简单的功能块堆起来实现的,由数据库的读写来保存对比密码来替代了不可改写的固定密码,所以学习使用迪文屏时需要优先熟练基本功能,只有这样才能在接下来的复杂功能逻辑中如鱼得水,这次就先讲这么多,下次讲解86盒modbus的详细使用情况。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值