const S8 me[]={"
Command list:
ME or HELP or /?
REPORT
READ
CLEAR
HEX
RESET ALL
SET DATETIME DD/MM/YYYY HH:MM:SS
SET BAUDRATE n(600-115200)
SET FLASH 1|0(En|Dis) 20(OnTime) 10(OffTime) 90(Period)
SET TIMES 100(Transtime) 20(ADtime)
SET LUX 1 10 100 1000
SET LS 20 500 3000
SET SPEED n(Low) n(High) n(Low_R) n(High_R)
"};
void ComMe()
{
SciPutsC(me);
}
这样可以正常运行
把me定义到函数ComMe里面就发送一堆乱码出来,跟踪进去发现,如果me定义在ComMe里面,me被翻译成指令,进入ComMe不是去执行SciPutsC,而是执行了me对应的机器码
之前就发现了CW的几个bug,报告到freescaleic.org,没什么反馈,现在又发现这种低级bug。这个项目作的我真痛苦。
- CodeWarrior for MCU
Version: 10.4
Build Id:130425
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
我用K60的片子做的测试
楼主用的是那个芯片,S08还是kinetis 还是别的片子?
我的代码:
#include "derivative.h" /* include peripheral declarations */
#include <stdio.h>
signed char dest[50];
void ComMe(){
const signed char me[]={"
Command list:
ME or HELP or /?
REPORT
READ
CLEAR
HEX
RESET ALL
SET DATETIME DD/MM/YYYY HH:MM:SS
SET BAUDRATE n(600-115200)
SET FLASH 1|0(En|Dis) 20(OnTime) 10(OffTime) 90(Period)
SET TIMES 100(Transtime) 20(ADtime)
SET LUX 1 10 100 1000
SET LS 20 500 3000
SET SPEED n(Low) n(High) n(Low_R) n(High_R)
"};
sprintf(dest, "this test is %s", me[1]);
}
int main(void)
{
。。。
ComMe();
。。。
}
在定义数组的时候加个static试试。
一周热门 更多>