openLuat / luatos-soc-2023

pls use luatos-soc-2024

Home Page:https://wiki.luatos.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CSDK for ABCDEGF

Github Actions

使用前须知

  1. 强烈推荐使用git来下载本代码库, 不会命令行操作git可以用 tortoiseGit
  2. 本CSDK底层是没有AT指令的,不存在"调用某某AT指令"的情况
  3. 由于依赖luatos主库,所以要在 luatos-soc-2023 所在同级目录 clone LuatOS 仓库,否则编译报错
  4. 本项目使用xmake构建,就算不熟悉lua和构建也能直接上手使用,几乎不会在构建上花费您的时间,但如需自定义的一些操作请先查看下相关api
  5. 请留意, 本代码库使用的GCC版本与 luatos-soc-2022 库是不一样的, 当前无法更换

文档中心

介绍

CSDK for ABCDEGF, 适用于所有基于ABCDEGF的合宙模组, 包括衍生型号及海外型号:

  • Air780EP
  • Air780ET
  • Air780EL

目录说明

  • PLAT 打包好的sdk, 含协议栈, 部分源码, 头文件, 打包工具
  • project 项目文件, 每个不同的项目代表不同的demo或者turnkey方案
  • xmake.lua 主编译脚本, 一般不需要修改

编译说明

  1. 安装xmake, 选取加入PATH; xmake下载地址:https://xmake.io/#/guide/installation windows下可以直接访问:https://github.com/xmake-io/xmake/releases ,下载系统对应的xmake-x.x.x-win32.exe或者xmake-x.x.x-win64.exe即可. 建议使用最新版.

    注意:环境变量需重启电脑生效

    本地下载地址: https://pan.air32.cn/s/DJTr?path=%2F%E5%B8%B8%E7%94%A8%E5%B7%A5%E5%85%B7

  2. 如果编译example的话在本代码库的根目录执行build.bat example进行编译,注意:默认编译ec718p,如需编译ec718sec716s需要自行修改build.bat中的CHIP_TARGET变量

  3. 生成的binpkg位于out目录, 日志数据库文件位于PLAT目录

加入入口函数

  • 加入头文件common_api.h

  • 类似于void main(void),但是可以任意名字,不能有入口参数和返回参数,同时允许多个入口

  • 通过INIT_HW_EXPORT INIT_DRV_EXPORT INIT_TASK_EXPORT这3个宏修饰后,系统初始化的时候会调用function,不同的宏涉及到调用顺序不同

  • 大优先级上INIT_HW_EXPORT > INIT_DRV_EXPORT > INIT_TASK_EXPORT

  • 这3个宏有统一用法INIT_HW_EXPORT(function, level),其中function就是入口函数,level是小优先级,填"0","1","2"...(引号要写的),引号里数字越小,优先级越高。

  • INIT_HW_EXPORT一般用于硬件初始化,GPIO之类的,可以没有

  • INIT_DRV_EXPORT一般用于外设驱动初始化,初始化外部器件之类的,打开电源,提供时钟之类的,可以没有

  • INIT_TASK_EXPORT一般用于初始化任务,用户代码基本上都是跑在任务里,原则上必须有

加入自己的项目

  1. project新建目录,目录名称和项目名称一致,目录下新建xmake.lua,内容仿照着example写,核心是TARGET_NAME必须和项目名称一致
  2. 代码路径当然不是限制的,在SDK的任何目录,甚至电脑上的其他地方,前提是你会改project里xmake.lua内的源码路径
  3. 根目录执行build.bat 你的项目名称

在SDK外存放项目文件的编译方法

假设项目路径是 F:\example_test , 目录结构如luatos-soc-2023\project\example一样,测试可将luatos-soc-2023\project\example复制到F:并更名为example_test

编译方式:

build.bat中的PROJECT_DIR解注释并修改为你的外部项目路径

rem you can set your outside project
set PROJECT_DIR=F:\example_test

随后执行build即可

恢复到默认项目查找逻辑, 将上面PROJECT_DIR恢复注释即可

rem you can set your outside project
rem set PROJECT_DIR=F:\example_test

授权协议

MIT License

About

pls use luatos-soc-2024

https://wiki.luatos.com

License:MIT License


Languages

Language:C 97.3%Language:Python 1.7%Language:Lua 0.8%Language:Assembly 0.2%Language:Batchfile 0.0%Language:Dockerfile 0.0%Language:HTML 0.0%