文档里面出现MTDI这个引脚,但是看位置是SPI的一个功能脚,比较疑惑
引脚的位置
类型是IO
MTDI
PWM0
看12引脚
看这个名称都有M和U的修饰,那么我就查到了。
JTAG接口主要由4根信号线组成:TCK、TDI、TDO、TMS。
TCK是JTAG模块外部输入时钟;
TDI是JTAG模块外部数据输入信号;
TDO是JTAG模块外部输出信号;
TMS是JTAG模块的模式选择信号;
应该就是解惑了,ESP32可以使用JTAG来调试,这12-14就是JTAG的引脚。
官方有个调试器:
ESP-Prog 是一款乐鑫推出的开发调试工具,具有自动下载固件、串口通信、JTAG 在线调试等功能。自动下载固件和串口通信功能适用于 ESP8266 和 ESP32 平台。JTAG 在线调试功能适用于 ESP32 平台。
ESP-Prog 使用简单方便,仅用一根 USB 线即可实现与电脑的连接,电脑端可识别出下载功能和 JTAG 功能对应的两个端口。
ESP-Prog 可使用排线与用户板连接,连接器可选 2.54 mm 和 1.27 mm 两种间距的封装,具有防呆设计。用户板上需按对应顺序放置 Program (6-Pin) 和 JTAG (10-Pin) 的连接器。
考虑到不同用户板的电源电压可能不同,ESP-Prog 的两个接口均可通过 Pin Header 选择 5V 或者 3.3V 供电,具备较强的电源兼容性。
实物
连接引脚
JTAG的定义
功能框图
你看这个是什么,是我们见到的自动下载的设计电路
还有一个延时电路
包括了总线缓存、反相器、MOS 管、一阶 RC 电路等器件。延时电路可以保证 ESP32 芯片在上电或复位过程中,先完成自身的上电启动或复位,再接通 JTAG 信号,以免受到 JTAG 影响。
具体调试的概述图
可以看到软件这边是,GDB,Make,相当于是应用层。PC层是OpenOCD和我们的监视程序(idf的Python包),也就是说USB和JTAG的调试器连接,JTAG连接ESP,接着一个USB连接ESP,用来输入程序。
接下来解惑,我为什么死抱住这个东西不放。在技术手册里面说了这个GPIO的功能选择寄存器。
外面是pin_func_select函数,我觉得是IO口有复用功能,这个是指定功能的,然后就是里面的一参数是,对这个引脚进行操作。
然后就是启用第几个功能,这个地方有Excel文件:
就像这样
这个就更清晰了
输出功能开启,这个真的是很人性化,按位写,一共16个,从0开始
输出关闭
这个是输出状态询问
这个是写寄存器,1时,位置输出低电平
同理高电平,记得先使能
输入状态寄存器,是默认是输入
这个地方其实是表里面第一个引脚,就好像例子一样
0:该 GPIO 的中断禁⽤
1:上升沿触发中断
2:下降沿触发中断
3:双沿触发中断
4:低电平
5:⾼高电平
持续的读指定位的值,读到去处理ISR,处理完以后把中断清楚。
16这个特殊,不可以使用中断功能
上面都是单个的寄存器设置,下面来看看具有实用性的配置
寄存器的地址,位数的作用
输出高电平
7位写1就是上拉
上拉
中断触发
中断状态量先定义,读REG的值(参数是地址),接着赋给状态,下面进行寄存器的写。
先读中断状态,清楚中断掩码,下面是IO的消息
支持 4 位 25 MHz SDIO v1.1 和 4 位 50 MHz SDIO v2.0
SPI 模式可由软件编程实现。时钟频率最大为 80 MHz
还有一个HSPI,其实也是SPI,以上都是硬件SPI
可以说很瞌睡了
现在Github不挂梯子根本就上不去了。
但是关于ESP8266的调试基本是没有,详细的在ESP32这里,应该是可以兼容的。
审核编辑:刘清
-
SPI接口
+关注
关注
0文章
258浏览量
34327 -
jtag接口
+关注
关注
0文章
34浏览量
13640 -
ESP8266
+关注
关注
50文章
962浏览量
44774
原文标题:ESP8266 MTDI引脚是什么?
文章出处:【微信号:TT1827652464,微信公众号:云深之无迹】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论