Contents Menu Expand Light mode Dark mode Auto light/dark mode
LuatOS 文档
(NEW) Go to English site
前往中文站点
Discord
Light Logo Dark Logo

💁 LuatOS 介绍

  • 🏠️ 首页
  • 🕹️ 在线体验LuatOS
  • 🛠 LuatOS工具大全
  • 💬 技术支持

🌠 快速上手

  • 🌙 Lua教程
    • 基础语法
    • LuaTask框架
  • 固件下载

📖 参考手册

  • 🍴 LuatOS-SOC接口文档
    • 适配状态
    • adc - 模数转换
    • airlink - AirLink(设备间通讯协议)
    • airtalk - 设备之间,设备与PC、手机,对讲处理
    • antbot - 蚂蚁链
    • audio - 多媒体-音频
    • bit64 - 32位系统上对64位数据的基本算术运算和逻辑运算
    • ble - 低功耗蓝牙
    • bluetooth - 蓝牙(总库)
    • camera - 摄像头
    • can - can操作库
    • cc - VoLTE通话功能
    • codec - 多媒体-编解码
    • coremark - 跑分
    • crypto - 加解密和hash函数
    • dac - 数模转换
    • disp - disp库(已废弃)
    • eink - 墨水屏操作库
    • ercoap - 新的Coap协议解析库
    • errDump - 错误上报
    • fastlz - FastLZ压缩
    • fatfs - 读写fatfs格式
    • fdb - kv数据库,掉电不丢数据
    • fft - 快速傅里叶变换(FFT/IFFT),支持 float32 与 q15 定点内核
    • fonts - 字体库
    • fota - 底层固件升级
    • fskv - kv数据库,掉电不丢数据
    • ftp - ftp 客户端
    • gmssl - 国密算法(SM2/SM3/SM4)
    • gpio - GPIO操作
    • gtfont - 高通字库芯片
    • hmeta - 硬件元数据
    • ht1621 - 液晶屏驱动(HT1621/HT1621B)
    • http - http 客户端
    • httpsrv - http服务端
    • i2c - I2C操作
    • i2s - 数字音频
    • icmp - ICMP协议(PING)
    • iconv - iconv操作
    • io - io操作(扩展)
    • ioqueue - io序列操作
    • iotauth - IoT鉴权库, 用于生成各种云平台的参数
    • iperf - 吞吐量测试
    • ir - 红外遥控
    • json - json生成和解析库
    • keyboard - 键盘矩阵
    • lcd - lcd驱动模块
    • lcdseg - 段式lcd
    • libcoap - coap数据处理
    • libgnss - NMEA数据处理
    • little_flash - flash驱动 软件包(同时支持驱动nor flash和nand flash设备)
    • log - 日志库
    • lora - lora驱动模块
    • lora2 - lora2驱动模块(支持多挂)
    • lvgl - LVGL图像库
    • max30102 - 心率模块(MAX30102)
    • mcu - 封装mcu一些特殊操作
    • miniz - 简易zlib压缩
    • misc - 杂项驱动,各种非常规驱动,芯片独有驱动都放在这里
    • mlx90640 - 红外测温(MLX90640)
    • mobile - 蜂窝网络
    • modbus - modbus主从协议栈协议
    • mqtt - mqtt客户端
    • natp - 网络地址端口转换(开发中)
    • nes - nes模拟器
    • netdrv - 网络设备管理
    • nimble - 蓝牙BLE库(nimble版)
    • onewire - 单总线协议驱动
    • os - os操作
    • otp - OTP操作库
    • pack - 打包和解包格式串
    • pin - 管脚命名映射
    • pins - 管脚外设复用
    • pm - 电源管理
    • protobuf - ProtoBuffs编解码
    • pwm - PWM模块
    • repl - “读取-求值-输出” 循环
    • rsa - RSA加密解密
    • rtc - 实时时钟
    • rtos - RTOS底层操作库
    • sdio - sdio
    • sensor - 传感器操作库
    • sfd - SPI FLASH操作库
    • sfud - flash驱动 软件包(支持驱动nor flash设备)
    • sms - 短信
    • socket - 网络接口
    • softkb - 软件键盘矩阵
    • spi - spi操作库
    • sqlite3 - sqlite3数据库操作
    • statem - SM状态机
    • string - 字符串操作函数
    • sys - sys库
    • timer - 操作底层定时器
    • touchkey - 触摸按键
    • tp - 触摸库
    • u8g2 - u8g2图形处理库
    • uart - 串口操作库
    • ulwip - 用户空间的lwip集成(开发中)
    • usbapp - USB功能操作
    • w5500 - w5500以太网驱动
    • wdt - watchdog操作库
    • websocket - websocket客户端
    • wlan - wifi操作
    • wlanraw - WLAN数据RAW传输
    • ws2812 - 幻彩灯带RGB控制器(WS2812系列)
    • xxtea - xxtea加密解密
    • yhm27xx - yhm27xx充电芯片
    • ymodem - ymodem协议
    • zbuff - c内存数据操作库
    • zlib - zlib压缩/解压缩(已废弃)
  • 📮 sys系统消息
  • 🌕 原生API手册
  • 🥢 扩展库接口文档
    • air153C_wtd - 添加软件看门狗功能,防止死机
    • airlbs - airlbs 定位服务(收费服务,需自行联系销售申请)
    • dhcpsrv - DHCP服务器端
    • dnsproxy - DNS代理转发
    • exchg - exchg扩展库
    • exfotawifi - 用于Air8000/8000A/8000W型号模组自动升级WIFI
    • exgnss - exgnss扩展库
    • exnetif - exnetif 控制网络优先级(以太网->WIFI->4G)根据优先级选择上网的网卡。简化开启多网融合的操作,4G作为数据出口给WIFI,以太网设备上网,以太网作为数据出口给WIFI,Air8000上网,WIFI作为数据出口给Air8000,以太网上网。
    • exvib - exvib 三轴加速度传感器扩展库
    • httpdns - 使用Http进行域名解析
    • httpplus - http库的补充
    • lbsLoc - lbsLoc 发送基站定位请求
    • lbsLoc2 - 基站定位v2
    • libfota - libfota fota升级
    • libfota2 - fota升级v2
    • libnet - libnet 在socket库基础上的同步阻塞api,socket库本身是异步非阻塞api
    • netLed - netLed 网络状态指示灯
    • udpsrv - UDP服务器
    • xmodem - xmodem 驱动
  • 社区扩展库
Back to top

DAPLink使用手册#

前往淘宝购买

警告

⚠特殊说明:2023年6月17日前发货的用户请注意:

展开查看

由于第一批板子贴错电阻,会导致无法使用高速下载 如若符合2023年6月17日前发货的情况,官方会免费补发修正后的DAPLink(已收到货的板子无需退回) 计划会以免单优惠券形式发放,统一短信通知各位,如有疑问请前往购买的平台咨询客服

此批次烧录器的使用解决方案如下:

  1. 改低速度使用,速度需要尽量低

  2. 扔了,用补发的新的

  3. 自行更换电阻为100Ω,相当于白嫖个调试器,如下图:

error_res

概述#

DAPLink是ARM官方开源的一个调试器方案,官方地址为ARMmbed/DAPLink (github.com),可以用来调试arm cortex内核的几乎所有单片机,最新出的M33,M85内核也支持调试。

合宙基于ARM官方代码移植到了Air32F103CBT6,并适配了216M主频和96K大RAM的资源,支持更快的的下载速度(固件开源),并设计了一个超小体积的DAPLink硬件

img

主要功能#

  • 全系列Arm-cortex内核芯片的调试和烧录,ARM官方维护,后续新内核依然会支持

  • 一个全功能USB转串口(CDC),带硬件DTR和RTS,可以实现自动下载功能

  • 带U盘拖拽烧录功能,可以直接将hex或者bin文件拖拽到U盘实现烧录(仅支持烧录CBT6)

  • 适配DAPLink V2 WINUSB版本,速度对比HID版本提升3到10倍,极大节约了下载时间

  • 支持WEBUSB功能,可以网页烧录固件,支持插入弹窗,无需担心不会用

  • 支持Keil,IAR,PyOCD等多种调试环境

img

硬件#

  • 尺寸仅有2.5*1.3cm大小,比USBA口都要小

  • 使用4层沉金PCB设计

  • 选用沉板TYPEC口更加结实稳定

  • USB口使用TI的ESD芯片保护

  • 大电流LDO在稳定为air32供电的同时还能为外界设备提供电源

img

四颗LED功能分别为:

  • dap运行指示灯,常亮

  • 串口CDC指示,串口有数据时闪烁

  • DEBUG指示,烧录或调试时亮

  • MSC U盘烧录功能指示,有数据时闪烁

开源教程#

这么好用想学学自己做一个,当然可以。合宙开源这个DAPLink的全部资料,软件硬件全部统统开源:

  • 软件开源

  • 硬件开源

为了让小白也能学习,稀饭大神还贴心的为大家录制了PCB设计的完整教程,使用全开源的KICAD设计软件,从画符号、画原理图、画PCB、走线、生产文件制作,到如何下单打样进行全流程教学,跟着教程走,轻松学会4层板的设计

教程地址: 合集·KiCad7.0教程-制作DAPLink

使用教程#

DAPLink引脚功能分配如下

image-20230601135449140

备注

由于设计仅适配3.3V电平,若连接5V设备调试,须自行承担烧毁风险

KEIL配置#

点击工程配置魔术棒,找到Debug选项卡,在下拉列表中选择CMSIS-DAP Debugger,点击Settings

image-20220605110335656

查看设备是否连接正常,连接正常可以在SW Device列表里看到设备,可以调整时钟速度提高效率

备注

由于该DAPLink使用的是实际设置速度,所以如果设备列表是空的,可能是因为被调试的芯片无法支持较高频率,可以调低频率后再使用

image-20220605112459682

更新固件#

后续如果修复BUG,DAPLink固件会有更新,这时候我们就需要进行下面的操作

备注

有些电脑系统仍在使用Win7,无法使用DAPLink V2版本固件,这时候就需要降级到V1固件

  1. 从Air32的SDK仓库获取你需要的固件,请选择 iap.hex结尾的固件

  2. 短接DAPLink板子的 RST与 GND

  3. 插入USB,电脑上会出现一个名为 MAINTENANCE的USB存储器

  4. 断开 RST与 GND之间的短接连线

  5. 将 iap.hex结尾的固件文件复制进这个USB存储器

  6. 复制完几秒钟后,DAPLink会进行升级,几秒钟后会自动重连,升级完成

常见问题#

插电脑上没有驱动#

  • 如果是WIN7设备,推荐按上面的教程刷成v1固件,或者自行研究如何安装驱动。

  • 若连上之后,串口设备名称为 mdeb Serial Port,并且无法自动识别WINUSB驱动。则为驱动被污染,解决方法如下:

    • 设备管理器-串口(COM和LPT)-mdeb Serial Port(COMxx)-右击-卸载设备,勾选 删除此设备的驱动程序软件,点击确定

    • 设备管理器-通用串行总线控制器-mdeb开头的一个设备-右击-卸载设备,勾选 删除此设备的驱动程序软件,点击确定

    • 点击设备管理器上方的 扫描检测硬件改动按钮

设备管理器有设备,但是KEIL不认#

请升级至2021年后版本的KEIL

或与上个问题里一样,用的是假的驱动

设备管理器有设备,KEIL也是最新版本,但还是不认#

可能是windows驱动识别问题,可以按如下步骤操作:

  1. 打开设备管理器

  2. 展开通用串行总线控制器

  3. 可能你会看见一个或多个USB Composite Device

  4. 一个个双击打开他们,切到详细信息选项卡,将属性改为设备实例路径

  5. 如果显示内容包含了USB\VID_0D28&PlD_0204\内容,则该设备为DAPLINK设备

  6. 对该设备-右击-卸载设备,点击确定

  7. 点击设备管理器上方的 扫描检测硬件改动按钮,重新识别后即可在KEIL中识别到

设备管理器有设备,但是openocd不认#

请升级至最2023年后的新版本的openocd

烧录器连上了,但是KEIL设备列表里不显示被调试的板子#

  • 被调试的芯片无法支持较高频率,可以调低频率后再使用

  • 被调试板子关闭了SWD功能

keil下载时报RDDI-DAP Error的解决办法#

DAPLink和MDK之间的常见问题,解决办法可以尝试以下方法: Alt text

  1. SWD调试线的问题:

    • 很多人会说我用别的DAPLINK没问题,那是因为DAPLINK V1版本速度很慢,对线没要求。

    • **把SWD和SCK的杜邦线线掰开分散(一根一根的散开),**或者SWD VCC SCK GND 或VCC SWD GND SCK 这种方式并排连接,数据线尽可能短。

  2. 把MCU的复位线接上

  3. MDK软件配置问题:

    • 按下图设置: 1693110272390

    • 调节Max Clock的速度,有些MCU 只支持100K

  4. MDK 版本问题

    • 更新MDK 到5.36或以后的版本

    • 打开keil中的pack installer; 选择对应的设备,把pack 包括cmsis等更新到最新。

Copyright © LuatOS团队 | 下载离线版文档

目录
  • DAPLink使用手册
    • 概述
    • 主要功能
    • 硬件
    • 开源教程
    • 使用教程
      • KEIL配置
      • 更新固件
    • 常见问题
      • 插电脑上没有驱动
      • 设备管理器有设备,但是KEIL不认
      • 设备管理器有设备,KEIL也是最新版本,但还是不认
      • 设备管理器有设备,但是openocd不认
      • 烧录器连上了,但是KEIL设备列表里不显示被调试的板子
      • keil下载时报RDDI-DAP Error的解决办法