2999|0

9720

帖子

24

TA的资源

版主

楼主
 

ST MEMS状态机和机器学习.ucf文件转c代码工具。 [复制链接]

 

请问LSM6DSOX 的FSM 和MLC功能 配置好的ucf文件后续如何转换成C代码嵌入到MCU

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace UcfFile2CCode
{
    public partial class MainWindow : Form
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            OpenFileDialog dialog = new OpenFileDialog();
            dialog.Filter = "ucf files (*.ucf)|*.ucf|All files (*.*)|*.*";
            dialog.Title = "请选择要转换的.ucf文件";
            if (dialog.ShowDialog() == DialogResult.OK)
            {
                string ccode = "typedef struct {\r\n" +
                                "\tuint8_t address;\r\n" +
                                "\tuint8_t data;\r\n" +
                                "}ucf_line_t;\r\n\r\n" +
                                "const ucf_line_t ucf_lines[] = {\r\n";
                string[] ucfTextLines = File.ReadAllLines(dialog.FileName);
                foreach (string ucfTextLine in ucfTextLines)
                {
                    if (ucfTextLine.IndexOf("Ac") == 0)
                    {
                        string[] sp = ucfTextLine.Split(' ');
                        ccode += string.Format("\t{{.address = {0}, .data = {1},}},\r\n", sp[1], sp[2]);
                    }
                }
                ccode = ccode.Substring(0, ccode.Length - 3) + "\r\n};";
                File.WriteAllText(dialog.FileName + ".h", ccode);
            }
        }
    }
}

UcfFile2CCode bin.zip (4.13 KB, 下载次数: 2)

UcfFile2CCode source.zip (14.87 KB, 下载次数: 2)

点赞 关注
个人签名虾扯蛋,蛋扯虾,虾扯蛋扯虾
 

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表