TI中文支持网
TI专业的中文技术问题搜集分享网站

上位机与下位机通讯出错

最近在模仿TI太阳能逆变器例程写程序,通讯部分是按照TI例程写的,但是由于例程只能看到下位机程序,所以上位机是自己写的。

例程中下位机从上面收到一个数据,会将这个数据返回。于是上位机程序里根据这个返回数做一个判断。

但是这样做了以后,上位机收到的数据里还是会出现错误。

不知道大家在上位机与下位机通讯里是怎么做的?

mangui zhang:

你的意思是自发自收都不正常   收到数据了   是不对的吗

这样你最好先确认一下波特率    MCU里面设的和你上位机设的都一样吗

还有TTL和232之间硬件应该没问题吧

最近在模仿TI太阳能逆变器例程写程序,通讯部分是按照TI例程写的,但是由于例程只能看到下位机程序,所以上位机是自己写的。

例程中下位机从上面收到一个数据,会将这个数据返回。于是上位机程序里根据这个返回数做一个判断。

但是这样做了以后,上位机收到的数据里还是会出现错误。

不知道大家在上位机与下位机通讯里是怎么做的?

user1088122:

回复 mangui zhang:

数据接收大部分都是正确的,比如显示电压采样值,大部分情况都是对的,但是偶尔会跳到0V,用电压记录波形可以看到这种跳跃。

TI的例程在controlsuite里只有下位机例程,如果能看到上位机的例程就好了,也可以学习一下。

最近在模仿TI太阳能逆变器例程写程序,通讯部分是按照TI例程写的,但是由于例程只能看到下位机程序,所以上位机是自己写的。

例程中下位机从上面收到一个数据,会将这个数据返回。于是上位机程序里根据这个返回数做一个判断。

但是这样做了以后,上位机收到的数据里还是会出现错误。

不知道大家在上位机与下位机通讯里是怎么做的?

mangui zhang:

回复 user1088122:

我觉得你要确保数据发送完毕之后再送入新的值    

还有ADC确保没采到0值       我有用2812做控制和采集      通过SCI和上位机通信

上位机用VB开发 

还有建议你的数据上发是打包上发   要有一定的针头针尾    

最近在模仿TI太阳能逆变器例程写程序,通讯部分是按照TI例程写的,但是由于例程只能看到下位机程序,所以上位机是自己写的。

例程中下位机从上面收到一个数据,会将这个数据返回。于是上位机程序里根据这个返回数做一个判断。

但是这样做了以后,上位机收到的数据里还是会出现错误。

不知道大家在上位机与下位机通讯里是怎么做的?

user1088122:

回复 mangui zhang:

我下位机程序是套用的controlSUITE里的例程HV_SOLAR_DC_AC_v1.1。因为我觉得这个例程结构写得很好,只是上位机例程看不到。下位机接受到上位机的一个字节,会将这个字节返回。上位机目前会根据返回值做判断。用TI例程里的上位机不会出错,但是自己编写的上位机里却会出错。

最近在模仿TI太阳能逆变器例程写程序,通讯部分是按照TI例程写的,但是由于例程只能看到下位机程序,所以上位机是自己写的。

例程中下位机从上面收到一个数据,会将这个数据返回。于是上位机程序里根据这个返回数做一个判断。

但是这样做了以后,上位机收到的数据里还是会出现错误。

不知道大家在上位机与下位机通讯里是怎么做的?

user1088122:

TI工程师能不能提供一下HV_SOLAR_DC_AC_v1.1例程中的上位机程序?或者通讯协议也行。

最近在模仿TI太阳能逆变器例程写程序,通讯部分是按照TI例程写的,但是由于例程只能看到下位机程序,所以上位机是自己写的。

例程中下位机从上面收到一个数据,会将这个数据返回。于是上位机程序里根据这个返回数做一个判断。

但是这样做了以后,上位机收到的数据里还是会出现错误。

不知道大家在上位机与下位机通讯里是怎么做的?

user1088122:

贴子沉了,自己顶一个

最近在模仿TI太阳能逆变器例程写程序,通讯部分是按照TI例程写的,但是由于例程只能看到下位机程序,所以上位机是自己写的。

例程中下位机从上面收到一个数据,会将这个数据返回。于是上位机程序里根据这个返回数做一个判断。

但是这样做了以后,上位机收到的数据里还是会出现错误。

不知道大家在上位机与下位机通讯里是怎么做的?

rookiecalf:

回复 user1088122:

sci的话,直接照着标准modbus搞个轻量级的modbus就好了

赞(0)
未经允许不得转载:TI中文支持网 » 上位机与下位机通讯出错
分享到: 更多 (0)