导航

    老米的博客

    • 注册
    • 登录
    • 搜索
    • 返回主页
    • 板块
    • 文件区
    • 用户
    1. 主页
    2. miuser00
    3. 帖子
    M
    • 资料
    • 关注
    • 粉丝
    • 主题
    • 帖子
    • 最佳
    • 群组

    miuser00 发布的帖子

    • 右键在当前位置打开命令行

      使用一个脚本,既可以为Win10右键增加在当前目录以管理员方式打开命令行功能。
      runas.reg

      发布在 日常笔记
      M
      miuser00
    • Esp32-c3 LuatOS编译教程

      Esp32-C3 是乐鑫公司于2021年3月正式量产的一颗物联网主控芯片。搭载 RISC-V 32 位单核处理器,时钟频率高达 160 MHz。具有 22 个可编程 GPIO 管脚、内置 400 KB SRAM,可以内置或外挂Flash存储。该芯片集成了2.4GHz Wifi,Bluetooth 5 硬件协议栈,并支持USB、I2C、SPI、RTC、I2S、UART、CAN(乐鑫改了个名字叫TWAI)、红外发射(RMT)多种外设接口。 支持各种常用加密算法(SHA、RSA、AES、HMAC)、还内置了硬件RTC、WatchDog。目前市场售价含4M Flash在8元左右,不含Flash的在5元左右,这个价位真可谓是霸气十足,如果没有特别牛的金主半路杀出,这颗芯片妥妥的会在下一轮物联网芯片竞赛中得第一名。

      值得一提的是这,这款芯片还是基于Risc-V的指令集,并内置了JTAG控制器! 下面是硬件资源的一个基本汇总

      • GPIO X 22
      • SPI X 3
      • UART X 2
      • I2C X 1
      • I2S X 1
      • PWM X 6
      • ADC X 6 (12bit)

      9397ff19-be6f-4b8a-82f5-dfea4915ec9e-图片.png

      作为这么牛的一款物联网芯片再配合LuatOS的极爽开发体验,真是舒服到家,下面我就简要的介绍下使用LuatOS驱动Esp32的使用方法。注意,本文非原创,而是基于晨旭大神的视频教程,原始视频教程地址:
      https://www.bilibili.com/video/BV1D3411p7MK?p=4

      下面我们正式开始:

      Esp32-c3的LuatOS固件是由著名的00后大佬梦程MI担任主程,基于Wendal大佬的LuatOS-MCU主库完成的。如果您想学习LuatOS-MCU编程,请访问wiki.luatos.com,提供有LuatOS详细的使用教程。梦程大佬也为大家准备好了基础固件下载,可以加群667220396获取。由于篇幅限制,我们本文着重介绍LuatOS底层固件编译的方法,对于LuatOS的应用就不再介绍了,请读者从上述网站自行学习。

      1)准备工作

      LuatOS-esp32-c3 基于乐鑫的官方idf开发环境编写,因此您需要首先安装最新版的乐鑫idf安装包,推荐使用离线安装包。目前梦程大佬使用的是ESP-IDF V4.4这个版本。下载地址为:

      https://dl.espressif.com/dl/esp-idf (需要翻墙)

      安装好后,在开始菜单里会出现ESP-IDF 4.4 PowerShell的运行环境,这是一个经过配置过的文本交互终端,我们编译代码的过程就在这里完成。

      2) 从gitee获取LuatOS for Esp32-c3源码

      地址为:https://gitee.com/dreamcmi/LuatOS-ESP32 (需要首先安装git)

      3) 编译

      3.1 设置目标芯片

      运行开始菜单里的ESP-IDF 4.4 PowerShell,进入命令行状态,进入源码目录比如我的源码用git下载到了
      C:\gitee\LuatOS-ESP32,这个目录。输入

      CD C:\gitee\LuatOS-ESP32 回车
      idf.py set-target esp32c3 回车

      3.2 开始编译 输入

      编译过程比较漫长,晨旭大佬的机器特别快的例外,我编译一次得花五六分钟

      idf.py build 回车

      看到出现 Project build complete. To flash, run this command: 加一堆文字,就说明编译成功了

      3.3 打包固件

      这个固件生成的是bin格式,还需要打包成soc文件才能支持lua脚本,这部分是用python脚本实现的,在tools目录下esp32v3.py就是把bin转换成soc文件的工具,soc文件也就是最终要烧写的固件文件

      cd .\tools 回车,切换到tools目录

      python .\esp32v3.py -t esp32c3 -p 回车,开始打包

      打包成功应该显示两行文字

      [WARNING]: user build

      首次运行打包脚本需要先安装python依赖,方法如下

      pip install -r .\requirements.txt 回车

      然后在 当前目录就可以找到编译后的soc文件了,一般前缀是LuatOS-SoC_ESP32C3,后面加一串数字,比如:

      LuatOS-SoC_ESP32C3_85ee641_20220426173707.soc

      重复编译一遍梦程大佬的固件是没有意义的,这样做的价值在于我们可以按自己的意愿对固件进行配置,方法:

      用资源管理器进入 components\luat\include目录,比如

      C:\gitee\LuatOS-ESP32\components\luat\include

      找到文件 luat_conf_bsp.h,并双击打开

      搜索 #define USE_U8G2_OPPOSANSM12_CHINESE

      去掉这行语句前面的双斜杠 "//",保存并重新编译,您的c3固件就可以支持中文了。文末附上我自己编译的esp32-c3 固件,已经支持了中文字库和ws2812b灯光字库,供您方便使用。

      文末突然想起来,乐鑫还自己搞了一个2.4G的私有通讯协议叫espnow,可以支持点对点,和星星结构的通讯,能同时连接6个节点实现快速通讯,这个听起来也很好玩。

      感谢您的阅读。

      LuatOS-SoC_ESP32C3_midemo_0427.soc

      发布在 ESP32-C3
      M
      miuser00
    • 柴松的卦签

      今年努力
      2022/2/7

      发布在 日常笔记
      M
      miuser00
    • 简易非接触式体温计

      采用I2C接口的免校准接触传感器GY-906配合Air101做的一个体温计DEMO

      使用合宙Air101开发板/0.96寸屏幕套装,外围元件有1个喇叭,1个GY-906-DCC 传感器,1个470uf 16V电容,所有原件都在淘宝购得,连线方式如下:
      测温枪.png

      成品效果如下:
      微信图片_20220108121920.jpg

      微信图片_20220108122300.jpg

      微信图片_20220108122304.jpg

      Lua代码:air101_lvgl+gy906+beeper.rar

      发布在 Air101
      M
      miuser00
    • 沁恒BLE4.2 CH573F 菜鸟入门(一)

      沁恒BLE4.2 CH573F 菜鸟入门

      应用场景

      众所周知,本穷是Luat粉,一直在搞合宙的Cat1 Air724 模组。 这模组性能非常强大,可以结合稀饭放姜大神的iRTU固件免MCU开发80%的物联网场景,非常的清新脱俗。 但是我的问题是如何解决另外的20%场景。

      需求分析

      LuatOS作为一个全场景高效低消耗的物联网操作系统主要的优势在于开发简洁,采用Lua脚本构建用户逻辑,优秀的底层Lod固件封装了大多数的底层技术细节,极大地简化了物联网。 但这也同时带来一个问题,lua是一个脚本语言,无法对硬件管脚进行us级别的实时控制操作,所以在实时性要求高的场景,就有必要再加一个轻量级的单片机。 这种场景我目前涉及到的场景有各种运动控制如舵机驱动,步进电机驱动等,各种灯光驱动,如WS2812B串灯,DNX512等。

      器件选型

      我们需要的其实是一个轻量的多功能协处理器,因此性价比是一个首要的问题。我比较了几家流行的MCU厂商的主打方案:

      联盛德(WM标) W800的性能最突出,功能也最强,但价格稍贵。 杰理(JL标)的AC6925A价格最低,还有Audio功能也很突出,相对而言沁恒(CH标)的CH573F相对中规中矩,没有突出的优缺点,但他的主要优势是开发资料比较好找,且自带USB接口基本符合我的要求,正巧在社区遇到了平头创意大佬正在用这个蓝牙做一款开源灯。所以决定先上车这款芯片了,其余的以后再慢慢学。

      开发板制备

      CH573的开发板网上就能比较容易的买到,但是价格有点高,所以决定自己打板做。

      沁恒的官网开发了这款芯片的开发板。下载地址是

      http://www.wch.cn/downloads/CH573PCB_ZIP.html

      图纸比较全,原理图和PCB都有

      网上下载了原理图,直接就去嘉立创打板了。 这个板子比较小,PCB打样是完全免费的。 但是考虑到上面的小件焊接起来也会压迫我的神经,我还是决定使用了他家的SMT打样,总共花了120块钱,买齐了元件和PCB,嘉立创只能贴电阻电容什么的,剩余手焊,计划做5片,自己用两片,血赚3片板子。

      开发环境

      沁恒有自己的IDE MounRiver,到官网 www.Mounriver.com 下载一个就行了。

      发布在 CH573
      M
      miuser00
    • Chicka Chicka Boom Mixly 开发板设计建议

      设计理念

      给非电子信息类理工科工程技术人员用于物联网产品原型开发,亦可以用于青少年编程及电子STEM教育之用

      硬件平台

      MEGA328P(AP)+ESP8285(AT Modem) (方案1)
      或
      ESP8285 one chip (方案2)

      功能需求

      IO端口

      板载一路5V舵机连接器
      mega328P的IO口全部映射到金手指 (方案1)
      ESP8285的IO口全部映射到金手指 (方案2)
      

      编程方式:

      透传模式-使用专有固件
      	基于UDP的自有通讯协议与云服务器通讯
      自编程模式
      	支持Mixly图形化编程
      	支持Arduino模块化编程
      	支持C语言编程
      

      通讯方式

      Wifi 2.4G Client模式
      

      电源管理

      LCD和RTC 需要DC-DC升压驱动(MT3608)
      

      扩展引脚

      	电源
      	GND
      	+3V (通过DC-DC电源获得)
      	ESP8255 IO引脚与扩展接口直接连接,与板载传感器通过0欧电阻连接
      

      板载资源

      状态指示
      	8X8 LED 阵列(HT16K33)
      	一个可以变换音调的蜂鸣器
      控制开关
      	两个触发式按钮开关
      	一个复位按键开关
      传感器
      	一个光感传感器(CXDSMD023)
      	一个磁力传感器 (HAL13S)
      	一个振动传感器(2548滚珠)
      	一个RTC(DC1302或DC1307)
      发布在 日常笔记
      M
      miuser00
    • 合宙产品命名规范

      59a6a5a2-8ed3-4694-9072-5b3a66078b03-图片.png

      发布在 上海合宙
      M
      miuser00
    • 添加B站视频到Wordpress文章的方法

      添加B站视频到Wordpress文章的方法

      复制上述链接,然后粘贴进去

      建议增加 height="400" width="600",不然默认窗口会比较小

      <iframe height="400" width="600" src="//player.bilibili.com/player.html?aid=287213608&bvid=BV1Sf4y1D7w6&cid=239136883&page=1" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true"> </iframe>

      发布在 日常笔记
      M
      miuser00
    • Kicad学习笔记1-原理图符号绘制

      随笔

      尝试对Kicad进行了初步的学习。 深深感受到这是一款有态度的纯开源PCB绘制软件,值得深入学习。

      今天简要的学习了原理图符号的绘制方式,以下是基本的记录。

      当有快捷键不熟悉的时候按Ctrl+F1可以随时呼出帮助查找快捷键。

      先建立自己的私有元件库

      1 用P快捷键放置引脚
      2 框选对象可以进行移动
      3 Insert可以重复上面的操作
      4 双击可以改变元件背景
      5 R旋转引脚
      6 E(双击)编辑引脚
      7 多个引脚可以编辑符号属性添加单元数
      

      符号库之间可以互相粘贴拷贝

      可以从以下网站下载元件库

      1官网 kicad-pcb.org

      2 Digikey www.digikey.cn

      3 Ultralibrarian www.ultralibrarian.com

      4 SnapEDA www.snapeda.com

      特别要说一下,有必要认真读一遍KiCad Windows 版本编译说明_v0.1,可以极大地增强您对kicad的信心,了解到是什么人正在开发维护着这个软件,至少目前我对他印象是良好的,因为文档讲的都是普通话。
      KiCad5快速入门教程.pdf

      KiCad_开发者文档.pdf

      发布在 日常笔记
      M
      miuser00