将KEIL软件中数组数据导出的简单方法

描述

编写STM32单片机程序时,经常性的需要进行数据的采集或者传输,为了便于观察和处理数据,需要对数据进行分析和可视化处理,这个时候,我们希望把在调试代码的时候,将KEIL中的数据取出来,之前也想了一些办法,虽然能取出来,但是麻烦,今天偶然发现了一个超级好用的方法,推荐给大家。

01进入调试界面

这步没啥说的,既然要采集数据总要让程序运行起来,进入调试界面,这时候Debug-->Function Editor 可用。

keil

02编辑代码

进入下面界面,

keil

根据自己的需要编辑输出的数组名称和长度,代码如下:

FUNC void export_data(void) {
int i;


exec("log > Data.log");
printf("ori_data\\n");
for (i = 0; i < 500; i++) {
printf ("%d\\n", gADC_Cur[i]);
 }
printf("lp_data\\n");
for (i = 0; i < 500; i++) {
printf ("%d\\n", gs16_LP_50_FIR[i]);
 }
printf("hp_data\\n");
for (i = 0; i < 500; i++) {
printf ("%d\\n", gs16_HP[i]);
 }
exec("log off");
}

点击编译按钮,提示no errors,即表示无错误。

03输出数据

调出command窗口:

keil

并在command窗口输入如下代码:

export_data()

会在工程目录下面生成对应文件

keil

用记事本打开,即可看到数据,可方便导入到MATLAB或者Excel进行处理。

keil

matlab查看数据

keil

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
评论(0)
发评论
jf_45020789 03-05
0 回复 举报
感谢博主!解决了一个大问题!另外,程序中数据换行应该是 ,而不是\n,我完全照抄这里出现了问题。 收起回复

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分