跳转至

LuatIO,IO初始化配置工具

1、LuatIO,是一个用于配置合宙模组IO初始化功能的配置工具,也就是说,合宙模组的IO可以复用为多种功能,你的产品里用到的是哪种,你就要先指定使用哪种,比如:

Air780EPM,PIN66,如果你要是用其PWM1功能,你就需要在LuatIO工具里先进行指定该管脚使用PWM功能;

说明!PIN66在Air780EPM的管脚图上标注的是I2C1_SDA,为推荐功能,但并不是唯一功能,该管脚可以复用为多种功能,具体见各模组型号的GPIO复用表说明;

当然,其它管脚也一样,模组管脚名仅为选择的一种典型功能做推荐,但并不是唯一功能,各模组型号的GPIO复用表均有详细说明;

2、LuatIO工具详细使用说明:LuatIO初始化配置工具 - common@air780epm - 合宙模组资料中心

3、LuatIO工具可以理解为LuatOS核心库 pins 的图形化实现方式,目的是为了更容易理解,可简单类比为STM32的图形化配置工具STM32CubeMX,软硬介绍,更直观,使用体验更友好;

通过 pins 核心库,还可以实现对IO复用功能的动态化配置,更详细的介绍请点击如下链接了解;

https://docs.openluat.com/osapi/core/pins/

4、以Air780EPM为例,通过LuatIO工具,生产一份json文件:pins_Air780epmjson,直接跟随项目其它Lua代码下载到Air780EPM模组即可,main代码无需做任何包括类似require的操作;

5、以Air780EPM为例,pins_Air780EPM.json是必须的吗?有哪些注意事项?

首先,只有同一种功能,可以由多个引脚可以实现时,才需要配置;

例如,Air780EPM的PIN56可以用作ONEWIRE功能,PIN54可以用作ONEWIRE功能,PIN23可以用作ONEWIRE功能,PIN78可以用作ONEWIRE功能,;

LuatOS软件中默认使用的是PIN23,如果用户要使用PIN54、PIN56或PIN78时,此时就必须配置(可以使用LuatIO工具配置,也可以在脚本中调用pins.setup配置);

例如,Air780EPM只有PIN17和PIN18两个脚才能用作UART1功能,此时就不要配置,用户在脚本中使用UART1时,默认使用的就是PIN17和PIN18两个脚;

虽然pins_Air780EPM.json并非一定是必须的,但是,为了防止错误,我们建议将此动作作为模组IO管脚初始化的必须步骤;

6、LuatIO工具可以通过LuaTools工具进入,相关截图如下(截图仅为示例说明);

a. 第一步,进入"项目管理测试";

b. 第二步,新建项目,选择对应的底层固件和上层脚本代码;

注意!

这一步非常重要,只有当正确选择了底层固件上层脚本之后,第三步的"管脚配置",也就是LuatIO工具,才会被正常识别并调用,否则,会显示暗淡色无法被选择并唤起;

本质上,LuaTools会根据底层固件和上层脚本自动识别模组型号,并自动匹配对应型号模组的LuatIO配置界面;

c. 第三步,打开"管脚配置",根据自己需要选择新建还是使用之前的配置;

d. 第四步,根据自己项目的需要,通过LuatIO为每个管脚初始化需要使用的功能;

7、让我们再看一次合宙Air780系列模组GPIO复用表,加深印象;