# fw-AD15N **Repository Path**: Jieli-Tech/fw-AD15N ## Basic Information - **Project Name**: fw-AD15N - **Description**: About Firmware for Generic MCU SDK(AD15N series), Support AD15N、AD14N - **Primary Language**: C - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 101 - **Forks**: 41 - **Created**: 2021-05-27 - **Last Updated**: 2026-06-05 ## Categories & Tags **Categories**: hardware **Tags**: None ## README # fw-AD14N-AD15N-AC104N-AD17N-AD18N About Firmware for Generic MCU SDK(AD1x-4578_AC104 series), Support AD14N,AD15N,AC104N,AD17N,AD18N [tag download]:https://gitee.com/Jieli-Tech/fw-AD15N/tags [tag_badgen]:https://img.shields.io/github/v/tag/Jieli-Tech/fw-AD15N?style=plastic&labelColor=ffffff&color=informational&label=Tag& # fw-AD1x-4578_AC104_SDK [![tag][tag_badgen]][tag download] 中文 | [EN](./README-en.md) AD14N-AD15N-AD17N-AD18N-AC104 系列通用MCU SDK 固件程序 本仓库包含SDK release 版本代码,线下线上支持同步发布,支持玩具类产品和通用MCU类应用二次开发. 本工程提供的例子,需要结合对应命名规则的库文件(lib.a) 和对应的子仓库进行编译. ![Alt](jl_ad_chip.png) 快速开始 ------------ 欢迎使用杰理开源项目,在开始进入项目之前,请详细阅读SDK 介绍文档, 从而获得对杰理系列芯片和SDK 的大概认识,并且可以通过快速开始介绍来进行开发. 工具链 ------------ 关于如何获取`杰理工具链` 和 如何进行环境搭建,请阅读以下内容: * 编译工具 :请安装杰理编译工具来搭建起编译环境, [下载链接](https://pan.baidu.com/s/1f5pK7ZaBNnvbflD-7R22zA) 提取码: `ukgx` * 编译器邀请码:4VlZaQCq-lImlZX2u-GBeCs501-ektNxDGu * USB 升级工具 : 在开发完成后,需要使用杰理烧写工具将对应的`hex`文件烧录到目标板,进行开发调试, 关于如何获取工具请进入申请 [链接](https://item.taobao.com/item.htm?spm=a1z10.1-c-s.w4004-22883854875.5.504d246bXKwyeH&id=620295020803) 并详细阅读对应的[文档](doc/stuff/usb%20updater.pdf),以及相关下载脚本[配置](doc/stuff/ISD_CONFIG.INI配置文件说明.pdf) 介绍文档 ------------ * 芯片简介 : [SoC 数据手册扼要](./doc) * 芯片选型号手册 : [SoC 选型手册.pdf](./doc/杰理科技AD14_AD15_AD16_AD17_AD18系列语音MCU选型表.pdf) * SDK 版本信息 : [SDK 历史版本](doc/AD1x-4578_AC104_SDK_发布版本信息.pdf) * SDK 介绍文档 : [SDK 快速开始简介](./doc/AD14N_AD15N_AD17N_AD18N_AC104N_SDK手册.pdf) * SDK 在线文档 : [SDK 在线文档](https://doc.zh-jieli.com/AD14/zh-cn/master/index.html) * SDK 结构文档 : [SDK 模块结构](./doc/) * 视频资源 : [视频链接](https://space.bilibili.com/3493277347088769/dynamic) * FAE 支持文档 : [FAE支持](https://gitee.com/jieli-tech_fae/fw-jl) * MIDI 应用开发手册 : [MIDI应用开发手册](https://doc.zh-jieli.com/MIDI/zh-cn/master/index.html) 编译工程 ------------- 请选择以下一个工程进行编译,下列目录包含了便于开发的工程文件: * 玩具类应用 : ./sdk/AD14N_voice_toy.cbp, ./sdk/AD15N_voice_toy.cbp, ./sdk/AD17N_voice_toy.cbp, ./sdk/AD18N_voice_toy.cbp, 适用领域: * 通用MCU应用 : ./sdk/AD14N_mcu.cbp, ./sdk/AD15N_mcu.cbp, ./sdk/AD17N_mcu.cbp, ./sdk/AD18N_mcu.cbp,适用领域: * 小音箱应用: ./sdk/AC104N_mbox_mg ,适用领域: 即将发布: ------------ SDK 支持Codeblock编译环境,请确保编译前已经搭建好编译环境, * Codeblock 编译 : 进入对应的工程目录并找到后缀为 `.cbp` 的文件, 双击打开便可进行编译. * Makefile 编译 : `apps/app_cfg` 开始编译之前,需要先选择好目标应用并编辑保存, 请双击 `make_prompt` 并输入 `make` `在编译下载代码前,请确保USB 升级工具正确连接并且进入编程模式` 硬件环境 ------------- * 开发评估板 :开发板申请入口[链接](https://shop321455197.taobao.com/?spm=a230r.7195193.1997079397.2.2a6d391d3n5udo) * 生产烧写工具 : 为量产和裸片烧写而设计, 申请入口 [连接](https://item.taobao.com/item.htm?spm=a1z10.1-c-s.w4004-22883854875.8.504d246bXKwyeH&id=620941819219) 并仔细阅读相关 [文档](./doc/stuff/烧写器使用说明文档.pdf) 打包、音频文件转换、midi等通用音频工具 ------------- * [下载链接](https://pan.baidu.com/s/1ajzBF4BFeiRFpDF558ER9w#list/path=%2F) 提取码:`3jey` SDK 框架图 ------------- ``` ┌──────────────────────────────────────────────────────────────────────────┐ │ 应用层 (Application) │ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │ │ │ voice_toy │ │ mcu │ │ mbox_mg │ │ │ │ (语音玩具) │ │ (通用MCU) │ │ (小音箱) │ │ │ │ │ │ │ │ │ │ │ │ toy_music │ │ mcu_app │ │ music │ │ │ │ toy_midi │ │ │ │ fm │ │ │ │ toy_record │ │ │ │ rec │ │ │ │ toy_linein │ │ │ │ line_in │ │ │ │ toy_speaker │ │ │ │ loudspeaker │ │ │ │ toy_idle │ │ │ │ usb_device │ │ │ │ toy_usb_slave│ │ │ │ │ │ │ │ toy_softoff │ │ │ │ │ │ │ └──────┬───────┘ └──────┬───────┘ └──────┬───────┘ │ └─────────┼─────────────────┼─────────────────┼───────────────────────────┘ │ │ │ ┌─────────┴─────────────────┴─────────────────┴───────────────────────────┐ │ BSP 中间层 (Board Support Package) │ │ ┌─────────────────────────────────────────────────────────────────┐ │ │ │ 通用模块 (common/) │ │ │ │ │ │ │ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │ │ │ │ decoder │ │ encoder │ │ VFS │ │ key │ │ │ │ │ │ (解码器) │ │ (编码器) │ │(虚拟文件) │ │ (按键) │ │ │ │ │ │ A/F1A/ │ │ A/MP3/ │ │ FAT/ │ │ IO/AD/ │ │ │ │ │ │ MP3/MIDI │ │ UMP3 │ │ NORFS/ │ │ Matrix/ │ │ │ │ │ │ WAV/F1X │ │ │ │ SYDF │ │ IR/Touch │ │ │ │ │ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │ │ │ │ │ │ │ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │ │ │ │ msg │ │ norflash │ │ USB │ │ sound │ │ │ │ │ │ (消息) │ │(外挂Flash)│ │(device/ │ │ effect │ │ │ │ │ │ │ │ │ │ host/usr)│ │ 音效算法 │ │ │ │ │ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │ │ │ │ │ │ │ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │ │ │ │ midi_open│ │ VM │ │ FM │ │ speaker │ │ │ │ │ │(MIDI开源)│ │(虚拟存储) │ │(收音机) │ │ (扩音) │ │ │ │ │ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │ │ │ └─────────────────────────────────────────────────────────────────┘ │ │ │ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │ │ sh54 │ │ sh55 │ │ sh57 │ │ ch58 │ │ │ │ (AD14N) │ │ (AD15N) │ │ (AD17N) │ │ (AD18N) │ │ │ │ CPU驱动 │ │ CPU驱动 │ │ CPU驱动 │ │ CPU驱动 │ │ │ │ SPI/IIC/ │ │ SPI/IIC/ │ │ SPI/IIC/ │ │ SPI/IIC/ │ │ │ │ UART/ADC │ │ UART/ADC │ │ UART/ADC │ │ UART/ADC │ │ │ │ DAC/PWM │ │ DAC/PWM │ │ DAC/PWM │ │ LCD │ │ │ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │ └─────────────────────────────────────────────────────────────────────────┘ │ ┌─────────┴───────────────────────────────────────────────────────────────┐ │ 底层库 (include_lib) │ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │ │ audio │ │ decoder │ │ encoder │ │ fs │ │ │ │ (音频API)│ │(解码库API)│ │(编码库API)│ │(文件系统) │ │ │ │ howling │ │ MIDI/A/ │ │ │ │ FAT/ │ │ │ │ echo/eq │ │ MP3/F1A │ │ │ │ NORFS/ │ │ │ │ speed/ans│ │ WAV/Lim │ │ │ │ SYDF │ │ │ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │ │ │ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │ │ device │ │ update │ │ cpu │ │ msg │ │ │ │ SDMMC/USB│ │(设备升级) │ │(CPU寄存器)│ │(消息API) │ │ │ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │ │ │ │ ┌──────────────────────────────────────────────────────────────────┐ │ │ │ liba/ 预编译库 (.a 文件) │ │ │ │ lib_midi_decode.a / lib_midi_synth.a / lib_howling_fs.a / ... │ │ │ └──────────────────────────────────────────────────────────────────┘ │ └─────────────────────────────────────────────────────────────────────────┘ │ ┌─────────┴───────────────────────────────────────────────────────────────┐ │ 硬件层 (Hardware) │ │ RISC Core @160MHz │ 2Mbit Flash │ 20K+8K RAM │ DAC/ADC/PWM │ │ UART×2 / IIC / SPI×2 / SDIO / IR / Timer×3 / GPIO │ └─────────────────────────────────────────────────────────────────────────┘ ``` SDK主要功能 ------------- * 支持内置FLASH的解码播放 * 支持外置FLASH的解码播放 * 支持解码MIO功能 * 支持.a/.b/.e、.f1a/.f1b/.f1c这两种种格式的解码播放 * 支持MIDI播放 * 支持变速变调(不过需要把系统时钟调整到100Mhz以上) * 最多支持.a/.b/.e + .f1a/.f1b/.f1c 两路音频同时解码播放 * DAC支持PWM差分输出,以及外接单端功放 * DAC支持8K、12k、16K、24K、32K采样率 * 支持硬件的重采样 * 关机功耗1.7uA+ MCU信息 ------------- * RISC / 160MHz /20K+8K * flash / 2Mbit * UART * 2 / IIC / SPI * 2 * 10bit ADC * 16bit dac * SD IO * IR * PWM * 4 * 16bit timer * 3 社区 -------------- * 技术交流群[钉钉](./doc/stuff/dingtalk.jpg) 免责声明 ------------ AD1x-457_AC104_SDK 支持AD14/AD15/AC104/AD17 系列芯片开发. AD15/AD14/AD17 系列芯片支持了通用MCU 常见应用,可以作为开发,评估,样品,甚至量产使用,对应SDK 版本见Release