目前使用DSP28335的SCI功能,基于CCS4仿真平台,遇到的问题是:
rx_data [rx_count++]= ScibRegs.SCIRXBUF.all ;
如上的语句,接收BUF将数据存入rx_data数组中,初始化中rx_data数组赋初值为0,初次控制板上电,程序编译后,rx_data数组中接收的数据正确,但进行rest和restart后,再进行编译后,却无法将之前rx_data数组中的数据清零,只有对控制板断电,才能将rx_data数组中的数清零。因此,在调试中,之前的操作对后续操作有非常大的影响,需要重新上电,才能验证更改是否生效。
目前还不知道是何原因,请各位高手多多指点,非常感谢!
Forrest:
我在CCSV4中没能重复这个问题。
如果确实有给rx_data赋初值,那么rx_data在reset或restart后应该为初始值。
请在下面的例程中试一下:
www.ti.com.cn/…/sprc530
目前使用DSP28335的SCI功能,基于CCS4仿真平台,遇到的问题是:
rx_data [rx_count++]= ScibRegs.SCIRXBUF.all ;
如上的语句,接收BUF将数据存入rx_data数组中,初始化中rx_data数组赋初值为0,初次控制板上电,程序编译后,rx_data数组中接收的数据正确,但进行rest和restart后,再进行编译后,却无法将之前rx_data数组中的数据清零,只有对控制板断电,才能将rx_data数组中的数清零。因此,在调试中,之前的操作对后续操作有非常大的影响,需要重新上电,才能验证更改是否生效。
目前还不知道是何原因,请各位高手多多指点,非常感谢!
Young Hu:
rui fu Li:
您好!
您的意思是restart后,初始化,从main函数执行程序,没法将rx_data这个数组赋值?
rx_data这个数组是什么变量?全局还是局部?最好是在定义的时候就赋初值。
可以在这个数据操作完后,在程序中手动置位。