2047浏览
查看: 2047|回复: 1

【Maixduino】eps32 read adc failed 解决办法

[复制链接]

【Maixduino】eps32 read adc failed 解决办法

在这里插入图片描述

前言

最近做项目需要用到maixduino中的模拟引脚,但是下载了官方例程显示报错:
在这里插入图片描述
查找阅了相关资料可能是esp32 固件与k210固件不兼容问题。重新刷新一下固件就可以解决了。

准备阶段

下载kflash_gui
下载flash_download_tools
下载特定的固件

步骤

一、请使用kflash工具烧录下载后解开的mainxpy.bin:
在这里插入图片描述
二、接着再使用flash_download_tools将下载解开的NINA_W102-1.3.1.bin烧录到MaixDuino上一个ESP32:
在这里插入图片描述
注意:这里的com口要和之前刷入maixpy固件的com不同
完成后,就可以使用以下程式测试ADC(MaixDuino的K210芯片和ESP32之间使用SPI传输资料,相关接脚可参考电路图)
在这里插入图片描述

import network
import utime
from Maix import GPIO
from fpioa_manager import *

#iomap at MaixDuino
fm.register(25,fm.fpioa.GPIOHS10)#cs
fm.register(8,fm.fpioa.GPIOHS11)#rst
fm.register(9,fm.fpioa.GPIOHS12)#rdy
fm.register(28,fm.fpioa.GPIOHS13)#mosi
fm.register(26,fm.fpioa.GPIOHS14)#miso
fm.register(27,fm.fpioa.GPIOHS15)#sclk

nic = network.ESP32_SPI(cs=fm.fpioa.GPIOHS10,rst=fm.fpioa.GPIOHS11,rdy=fm.fpioa.GPIOHS12,
mosi=fm.fpioa.GPIOHS13,miso=fm.fpioa.GPIOHS14,sclk=fm.fpioa.GPIOHS15)

# get ADC0 ADC1 ADC2
adc = nic.adc( (0,1,2) )
print(adc)

while True:
    try:
        # get ADC0~5
        adc = nic.adc()
    except Exception as e:
        print(e)
        continue
    for v in adc:
        print("%04d" %(v), end=" ")
    print()
    utime.sleep_ms(50)

测试结果:
在这里插入图片描述

总结

这样问题就解决了,更多教程案例欢迎关注个人博客:www.hockel.club

peterlhj  见习技师

发表于 2020-8-26 13:04:48

我烧录ESP32时  一直是等待上电同步的界面,请问如何操作?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail