项目简介
本项目是基于ICF(Intermediate Configuration Format)语言的嵌入式系统配置工具。ICF语言为嵌入式编程设计,能简化GPIO(通用输入输出接口)和EXTI(外部中断事件控制器)的初始化设置与逻辑嵌入,让开发者更专注运行逻辑,减少对代码格式和特定条件的关注。
项目的主要特性和功能
- GPIO初始化与配置:支持STM32F10xxxx系列芯片的GPIO初始化,可配置多种工作模式(推挽输出、开漏输出、复用推挽输出等),还能设置工作频率和初始状态。
- EXTI外部中断配置:支持外部中断的初始化与配置,可设置中断触发模式(上升沿触发、下降沿触发等)和中断优先级。
- 虚拟选择器与全局代码:提供全局域选择器(global)和主逻辑域选择器(main),便于管理全局代码和主循环逻辑,支持在全局域定义可访问的函数和变量。
- 代码生成与编译:通过ICF语言配置自动生成对应的C语言代码,支持将生成的代码输出到控制台或写入指定文件。
安装使用步骤
环境准备
- 确保系统中已安装C++编译器(如GCC)。
- 确保系统中已安装STM32开发环境(如STM32CubeMX)。
下载项目
用户已下载本项目的源码文件。
编译项目
进入项目根目录,执行以下命令进行编译:
bash
make
运行项目
编译成功后,通过以下命令运行项目:
bash
./icf <input_file> [output_file]
其中,<input_file>
是ICF配置文件的路径,[output_file]
是可选的输出C代码文件路径。若不指定output_file
,生成的代码将输出到控制台。
示例配置
参考项目中的示例配置文件(如test/示例代码.c
),编写自己的ICF配置文件。运行项目时,指定该配置文件路径即可生成对应的C代码。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】