公司网站建设制度,网站备案拍照点,东阳网络推广,大数据营销经典案例在嵌入式开发中#xff0c;位运算是一种高效且常用的操作技巧。本文将介绍如何使用Air780E模组和LuatOS进行位运算#xff0c;并通过示例代码帮助读者快速上手。
一、位运算概述
位运算是一种在计算机系统中对二进制数位进行操作的运算。由于计算机内部数据的存储和处理都是…在嵌入式开发中位运算是一种高效且常用的操作技巧。本文将介绍如何使用Air780E模组和LuatOS进行位运算并通过示例代码帮助读者快速上手。
一、位运算概述
位运算是一种在计算机系统中对二进制数位进行操作的运算。由于计算机内部数据的存储和处理都是以二进制形式进行的位运算能够直接对整数的二进制位进行高效操作。位运算包括与、或|、异或^、非~、左移和右移等基本操作。
二、演示功能概述
本文通过了解位操作的API函数并用代码演示功能来熟悉Air780E-LuatOS-软件 demo-基础服务-位运算(bit)。
三、硬件准备
3.1 Air780E核心板
使用Air780E核心板如下图所示 3.2 SIM 卡
中国大陆环境下可以上网的sim 卡。一般来说使用移动/电信/联通的物联网卡或者手机卡都行。
3.3 PC 电脑
请准备一台配备 USB 接口且能够正常上网的电脑。
电脑操作系统为
WIN10以及以上版本的WINDOWS系统。
3.4 数据通信线
带TYPE-C口的USB数据线.
四、软件环境
4.1 Luatools 工具
要想烧录LuatOS到4G模组中需要用到调试工具Luatools
Luatools 工具使用说明
https://docs.openluat.com/Luatools/
4.2 准备需要烧录的代码
首先要说明一点脚本代码 要和固件的 soc 文件一起烧录。
4.2.1 烧录的底层固件文件
底层 core 下载地址
LuatOS 固件版本下载地址
https://docs.openluat.com/air780e/luatos/firmware/ Air780E的底层固件在 Luatools 解压后目录的
LuatOS-SoC_V1112_EC618_FULL.soc 4.2.2 烧录的脚本代码
首先要下载Air780的LuatOS示例代码到一个合适的项目目录示例代码网站
https://gitee.com/openLuat/LuatOS-Air780E
下载流程参考下图: 五、API 说明
位操作支持库
5.1 bit.bnot( value )
取反等价于 C 语言中的~
参数 返回值 例子 5.2 bit.band( val1, val2, … valn )
与运算等价于 语言中的 val1 val2 … valn
参数 返回值 例子 5.3 bit.bor( val1, val2, … valn )
或运算等价于 C 里面的 val1 | val2 | … | valn
注:对于Air780E建议不要超过多少个参数
参数 返回值 例子 5.4 bit.bxor( val1, val2, … valn )
异或运算等价于 C 语言中的 val1 ^ val2 ^ … ^ valn
参数 返回值 例子 5.5 bit.lshift( value, shift )
逻辑左移等价于 C 语言中的 value shift
参数 返回值 例子 5.6 bit.rshift( value, shift )
逻辑右移等价于 C 语言中的 value shift
参数 返回值 例子 5.7 bit.arshift( value, shift )
算数右移
参数 返回值 例子 5.8 bit.bit( position )
左移运算等价于 C 语言中的 1 position
参数 返回值 例子 5.9 bit.isset(value, position)
测试位数是否被置 1
参数 返回值 例子 5.10 bit.isclear(value, position)
测试位数是否被置 0
参数 返回值 例子 5.11 bit.set(value, pos1, pos2, …posn)
置 1
参数 返回值 例子 5.12 numberbit.clear(value, pos1, pos2, …posn)
置 0
参数 返回值 例子 六、功能验证
6.1 示例代码
下面根据 demo 演示位操作的功能可以参考以下示例代码.
示例代码如下: 6.2 烧录步骤
6.2.1 正确连接电脑和 4G 模组电路板
使用带有数据通信功能的数据线不要使用仅有充电功能的数据线.
6.2.2 识别 4G 模组的 BOOT 引脚
在下载之前要用模组的 BOOT 引脚触发下载 也就是说要把 4G 模组的 BOOT 引脚拉到 1.8v或者直接把 BOOT 引脚和 VDD_EXT 引脚相连.我们要在按下 BOOT 按键时让模块开机就可以进入下载模式了.
具体到Air780E开发板
1、当我们模块没开机时按着 BOOT 键然后长按 POW 开机
2、当我们模块开机时按着 BOOT 键然后点按重启键即可。 6.2.3 识别电脑的正确端口
判断是否进入 BOOT 模式模块上电此时在电脑的设备管理器中查看串口设备 会出现一个端口表示进入了 BOOT 下载模式如下图所示 6.2.4 用 Luatools 工具烧录
新建项目
首先确保你的 Luatools 的版本大于等于 3.0.6 版本的。
在 Luatools 的左上角上有版本显示的如图所示 Luatools 版本没问题的话 就点击 Luatools 右上角的“项目管理测试”按钮如下图所示 这时会弹出项目管理和烧录管理的对话框可以新建一个项目,如下图 开始烧录
选择Air780E板子对应的底层 core 和刚改的 main.lua 脚本文件下载到板子中 点击下载后我们需要进入BOOT模式才能正常下载。
如果没进入BOOT模式会出现下图情况 进入 BOOT 模式下载,如图 6.3 对应log信息