顺企网江西网站建设,京东网页设计实训报告,电脑网站搜索如何做,微信网站 微信支付手上有个案子#xff0c;“按压机器人”#xff0c;功能是恒定一个力按下一定时间。 屏幕选型使用“sHMIctrl”#xff0c;一下记录使用过程中遇到的问题以及解决方法。
目录
问题1#xff1a;按键控件做定时触发#xff0c;模拟运行时触发不了。
问题2#xff1a;厂家… 手上有个案子“按压机器人”功能是恒定一个力按下一定时间。 屏幕选型使用“sHMIctrl”一下记录使用过程中遇到的问题以及解决方法。
目录
问题1按键控件做定时触发模拟运行时触发不了。
问题2厂家提供的文档如何全局检索
问题3sHMIctrl 说明手册中提到的appbase 代码界面如何打开
问题4appbase中的定时器代码不运行
问题5硬件2个PWM引脚输出不同频率
问题6在appbase中刷新界面方法
问题7在某个界面按键控件 text 值不显示
问题8串口1、2的区别与使用
总结 问题1按键控件做定时触发模拟运行时触发不了。 解决方法
原因时软件模拟时间不准确造成实际硬件上跑正常软件模拟时需要把上图延时200数值减小本测试减小到5 模拟正常。
问题2厂家提供的文档如何全局检索 解决方法上述文档只能页面搜索全局搜索使用上位机软件中的帮助功能。 问题3sHMIctrl 说明手册中提到的appbase 代码界面如何打开 解决方法 问题4appbase中的定时器代码不运行 解决方法
appbase 中定义的坐标不能删除 说明X2,Y2时屏幕分辨率-1的值 问题5硬件2个PWM引脚输出不同频率 解决方法
不支持2个频率这两个PWM智能同一频率不同占空比。 问题6在appbase中刷新界面方法 参照文档做法实际运行不能刷新界面
解决方法
因为APPbase控件中缺少函数这部分代码复制到APPbase中就行了
//---create():appbase初始化,书写有关内部属性的初始化(从bind区域调用)和bin类数组的初始化
void create()
{ //abcbind_get(abc); //属性与全局bind变量的赋值确保当前控件属性与全局变量属性同步
}//---draw():绘制背景在appbase中一般不用
void draw()
{ //在此书写绘制背景的语句//automode(bc); or tranmode(n);//选择显示模式具体讲解请参见语句说明书
}//---show():刷新前景数据一般用于显示所有界面都有的内容比如时钟当然也可以写在page控件中
void show()
{ //在此书写刷新前景的语句//automode(bc); or tranmode(n); //选择显示模式具体讲解请参见语句说明书
}//----onmouse方法用户点击触摸屏上的热区会调用此方法其中
//t:触摸模式 t0 按下鼠标按钮相当于触摸屏点击 ;t1 鼠标移动 t2鼠标抬起t3鼠标长按
//rn:热区编号允许一个控件对应多个热区多个热区靠rn变量识别对于按钮等整个控件一个热区可以忽视rn
//在appbase一般不用当然也可以用此来构建所有页面都有的热区比如状态栏进入菜单的固定热区当然也可以构建在page中
void onmouse(int t,int rn)
{ //在此书写有关热区处理方法的代码
}
问题7在某个界面按键控件 text 值不显示 解决方法对应的页面代码竟然没创建按键class 创建之后正常。
问题8串口1、2的区别与使用 备注在与shmi-ctrl 咨询后得知
串口2支持的模式是 接收字符串
str urecv(int un);接收二进制
void urecvbin(int un,size);注意串口2只能在通信队列控制语句中使用
void que_do(int un,int step,int timeout){ 总结 这款屏幕设计的还是不错的能用在很多场合原因的可以C代码控制外设与界面显示非常方便。
对比自己使用单片机GUI的方式可以节省90%的工作量对我来说。
吐槽下sHMIctrl 说明手册 这个文档虽然体验上比不上大的半导体公司的文档但是按照这个文档都过一遍就能理解这个屏幕是的使用方法。
重点sHMIctrl 智能屏技术群技术支持非常快。
通过技术支持也弥补了文档中的瑕疵遇到的问题都会得到解答。
感谢 对我问题的解答可以说是实时性解答难得的。 总共花了4天时间客户对我做的demo认可。