littlebot
Published on 2025-04-08 / 1 Visits
0

【源码】基于Arduino Yn的yunCUL设备固件

项目简介

本项目是针对Arduino Yún的culfw固件项目,名为yunCUL。它在原culfw的基础上进行了一系列的调整和功能添加,旨在让Arduino Yún能更好地适配新设备yunCUL,并对一些硬件和功能进行优化。

项目的主要特性和功能

  • 新增对yunCUL设备的支持,代码中添加相关设备代码。
  • 修复“not enough credits”的bug,优化发送功能。
  • 调整硬件COM端口使用,采用Yún的_Serial1_硬件COM端口替代_Serial_。
  • 优化I²C初始化频率,从100 KHz提升至400 KHz。
  • 增加对OLED和yunCUL继电器的支持。
  • 引入OLED代码,方便使用OLED显示屏。

安装使用步骤

编译代码

可在任何Linux系统上编译代码,也能使用yun - gcc在Yún上进行编译。成功编译后,需将yunCUL.hexyunCUL.eep文件烧录到Yún的AVR中。

确定Arduino Yún连接的COM端口

使用Arduino IDE,查看Yún所报告的COM端口。

烧录文件

直接烧录

  1. 打开命令提示符。
  2. 切换到包含yunCUL.hexyunCUL.eep文件的文件夹。
  3. 调用avrdude将文件烧录到闪存和EEPROM内存中,示例命令如下: cd C:\Users\C\Desktop\yunCUL C:\Users\C\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino9/bin/avrdude -CC:\Users\C\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino9/etc/avrdude.conf -v -patmega32u4 -cavr109 -PCOM6 -b57600 -D -Uflash:w:yunCUL.hex:i -Ueeprom:w:yunCUL.eep:i 可将avrdude文件夹添加到PATH环境变量中。

使用Arduino Uno作为ISP烧录

  1. 将Arduino Uno使用YunSerialTerminal草图进行烧录。
  2. 按照Arduino as your programmer网站的说明,将Yún的ISCP头连接到Uno。
  3. Uno的COM端口会在主机计算机上显示,avr - dude命令行参数使用-PCOM7
  4. Uno作为STK500程序员,avr - dude命令行参数使用-cstk500v1
  5. 选择要烧录的MCU为Yún,avr - dude命令行参数使用-patmega32u4。示例命令如下: set PATH=%PATH%;C:\Users\C\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino9\bin cd C:\Users\C\Desktop\yunCUL avrdude -CC:\Users\C\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino9/etc/avrdude.conf -v -patmega32u4 -cstk500v1 -PCOM7 -b19200 -e -Ulock:w:0x3F:m -Uefuse:w:0xfb:m -Uhfuse:w:0xd8:m -Ulfuse:w:0xff:m avrdude -CC:\Users\C\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino9/etc/avrdude.conf -v -patmega32u4 -cstk500v1 -PCOM7 -b19200 -Uflash:w:yunCUL.hex:i -Ulock:w:0x2F:m

相关链接

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】