├── build --------------------------------------> Makefile系统
├── build.sh -----------------------------------> 编译脚本
├── ci.yml -------------------------------------> 自动化平台构建脚本,对用户无用
├── include ------------------------------------> 语音识别引擎及其他自动化生成外部头文件,不可修改
├── lib ----------------------------------------> 语音识别引擎及其他底层驱动库
├── middleware ---------------------------------> RTOS系统
├── nds32-ae210p.ld ----------------------------> 链接信息脚本,不可修改
├── nds32-ae210p.sag ---------------------------> 内存段分布配置,不可修改
├── readme.txt ---------------------------------> 发布版本信息
├── src ----------------------------------------> 架构代码文件夹
│ ├── app ------------------------------------> APP层代码文件夹
│ │ ├── inc
│ │ └── src
│ │ ├── main.c -------------------------> 系统启动主程序,main函数入口
│ │ ├── sessions -----------------------> sessions代码文件夹
│ │ │ ├── uni_setting_session.c ------> setting类事件处理session
│ │ │ ├── uni_wakeup_session.c -------> wakeup类事件处理session
│ │ │ └── uni_watchdog_session.c -----> watchdog事件处理session
│ │ ├── uni_record_save.c --------------> 录音保存功能实现,蜂鸟M暂不支持
│ │ ├── uni_session.c ------------------> 创建释放session对象
│ │ ├── uni_session_manage.c -----------> 管理session注册
│ │ └── uni_user_meeting.c -------------> APP层与USER层交互接口
│ ├── hal ------------------------------------> HAL层实现代码
│ ├── sdk ------------------------------------> SDK层实现代码
│ │ ├── audio ------------------------------> Audio播放器
│ │ ├── idle_detect ------------------------> 设备空闲计时管理
│ │ ├── player -----------------------------> MP3解码器
│ │ └── vui --------------------------------> 语音识别功能
│ └── utils ----------------------------------> UTILS层实现代码
│ ├── arpt -------------------------------> ARPT自动化测试工具
│ ├── auto_string ------------------------> 变长字符串
│ ├── bitmap -----------------------------> 二值状态变量集合
│ ├── black_board ------------------------> 系统状态管理
│ ├── cJSON ------------------------------> JSON格式解析
│ ├── config -----------------------------> config.bin文件内容解析
│ ├── crc16 ------------------------------> CRC16算法
│ ├── data_buf ---------------------------> 一个不用互斥锁管理的Ring Buffer
│ ├── event ------------------------------> 创建事件对象
│ ├── event_list -------------------------> 事件队列
│ ├── event_route ------------------------> 事件分发
│ ├── float2string -----------------------> 浮点转字符串,用于无float类型打印能力的printf
│ ├── fsm --------------------------------> 状态机
│ ├── hash -------------------------------> 一个简易HASH算法
│ ├── interruptable_sleep ----------------> 非阻塞的sleep方式
│ ├── list -------------------------------> 通用链表
│ ├── log --------------------------------> 带等级控制的LOG输出接口
│ ├── string -----------------------------> 一套简易的string操作接口
│ ├── timer ------------------------------> 基于RTOS系统的Timer
│ └── uart -------------------------------> 通用的UART接口
├── startup ------------------------------------> 芯片启动代码,不可修改
├── tools --------------------------------------> 自动化构建工具
│ └── scripts --------------------------------> 自动化构建脚本
│ ├── aik_debug.json ---------------------> Debug固件对应的AIK配置文件
│ ├── aik_release.json -------------------> Release固件对应的AIK配置文件
│ ├── asrfix.dat -------------------------> 声学模型
│ ├── cmd_reply_data.json ----------------> UDP平台用户定制命令词和回复语信息
│ ├── config_debug.bin -------------------> Debug固件对应的应用配置文件
│ ├── config_release.bin -----------------> Release固件对应的应用配置文件
│ ├── custom_config.json -----------------> UDP平台用户定制系统配置信息
│ ├── default_tones ----------------------> 默认保底音频文件文件夹
│ ├── grammar.dat ------------------------> 语法模型
│ ├── grammar_jsgf.zip -------------------> 语法模型对应的构建脚本
│ ├── grammar.zip ------------------------> 语法模型文件压缩包
│ ├── input.txt --------------------------> 用户定制回复语列表
│ ├── pcm.bin ----------------------------> MP3音频flash固件,自动生成的中间文件
│ ├── pcm_map.txt ------------------------> MP3音频文件名及内容列表
│ ├── res_build_tool.py ------------------> 自动化构建脚本
│ ├── thresh.dat -------------------------> 唤醒词阈值推荐表
│ ├── tones ------------------------------> MP3音频文件夹
│ └── wav_tones --------------------------> WAV音频文件夹,自动转换到tones
├── uni_ci.yml ---------------------------------> 构建平台脚本,对用户无用
└── user ---------------------------------------> USER层实现代码
├── inc
│ ├── unione.h ---------------------------> USER层使用的底层头文件
│ ├── user_config.h ----------------------> USER可配置项,包括串口、音量等
└── src
├── examples ---------------------------> 包含个别USER模块的示例代码
├── user_asr.c -------------------------> 语音识别控制接口
├── user_event.c -----------------------> USER事件分发机制,底层调用USER注册的事件回调函数
├── user_file.c ------------------------> SD卡文件系统操作接口,蜂鸟M暂不支持
├── user_flash.c -----------------------> Flash操作接口
├── user_gpio.c ------------------------> GPIO操作接口
├── user_main.c ------------------------> 用户代码入口,参考示例实现user_main()接口以增加业务逻辑
├── user_player.c ----------------------> 音频播放控制接口
├── user_power.c -----------------------> 功耗操作接口,蜂鸟M暂不支持
├── user_pwm.c -------------------------> PWM操作接口
├── user_record.c ----------------------> 录音控制接口,蜂鸟M暂不支持
├── user_timer.c -----------------------> Timer操作接口
├── user_uart.c ------------------------> UART操作接口
└── user_uni_ucp.c ---------------------> 通用串口协议操作接口