文件在Atmel工作室
Files in Atmel Studio
首先让我澄清一下,我读了很多关于这个问题的文章,我不想要类似的答案。
我想打开一个文件从我的个人电脑存储在我的硬盘到atmel工作室。读取文件不是我的程序的一部分,但我需要读取这个文件,因为它包含示例数据。我可以在我的程序中手动填充数组,但那会很累人。
我只需要将文件内容读取到数组中,这样我就可以测试我的算法。我知道在avr上没有文件系统,读取文件没有意义,但正如我所说的,读取文件不是我的算法的一部分。
在Atmel Studio 6中是否有任何工作可以读取文件?
搜索一些工具bin2h bin2c或bin2hex或类似的。转换二进制数据到文件与c-uint8_t数组,你可以包括。我很确定avr-gcc或winavr确实包含这样的工具,但我不记得名字了。
对于任何想要解决这个问题的人,这是我的解决方案。我没有使用任何工具,而是编写了一个c++函数来读取文件并将其以数组的形式写入,这个函数将在atmel之外使用。
void writevectorf(const char *filename, vector<float> &myvector){
FILE * pFile = fopen(filename,"w");
if (pFile!=NULL){
unsigned int size = myvector.size()-1;
fprintf(pFile,"%s","#include <vector>nn");
fprintf(pFile,"%s","float myfloats[] = {");
for (unsigned int i=0; i<size; ++i)
fprintf(pFile, "%0.7g, ",myvector[i]);
fprintf(pFile, "%0.7g};n",myvector[size]);
fprintf(pFile, "%s = %d;n","int datasize",myvector.size());
fprintf(pFile, "%s %d %s","std::vector<float> input (myfloats, myfloats +",myvector.size(),");");
fclose(pFile);
}
else
cout << "Unable to open file: " << filename << endl;
}
这个函数将文件写入一个向量,它也写入一个数组,请随意修改它以满足您的需要。
相关文章:
- 视觉工作室项目.提取源文件夹名称
- 为什么我在尝试模板时遇到视觉工作室C++错误
- 视觉工作室 2017;启用 /permissive 时,类型 "const wchar_t *" 的参数与类型 "PWSTR" 的参数不兼容
- VI工作室代码错误无法打开输出文件主.exe
- 与其他编译器相比,相同的代码在工作室Microsoft提供不同的输出
- remove(str.begin(), str.end(), );无法正常工作(我正在使用视觉工作室 2012)
- 如何在安卓工作室中将c ++头文件从一个文件夹导入到另一个文件夹?
- 在 embarcadero / RAD 工作室中的 .dfm 文件中使用常量
- 背包问题,视觉工作室问题
- 如果变量数据包含大于 vector 所有元素的整数,则仅在视觉工作室上接收"矢量下标超出范围"?
- PVS 工作室分析
- 编译器错误(英特尔并行工作室 2019 与 Visual Studio 社区 2019)
- C++ 调试断言失败 - 矢量下标超出视觉工作室的范围
- 安卓工作室 |CPP 文件错误错误: 位图库中对"AndroidBitmap_unlockPixels"的未定义引用
- 输出窗口中消息的可视化工作室源
- Atmel Studio:返回一个包含数组的寄存器
- 可视化工作室项目中C++预编译标头未正确链接
- 在turbo c++中编译.不在视觉工作室
- exteranl原生构建问题,构建命令失败,android工作室
- 文件在Atmel工作室