Página 1 de 1

Migrando do ESP8266 para o ESP32

MensagemEnviado: 21 Jun 2018 17:04
por andre_luis
Pessoal,


Preciso da ajuda de quem já trabalhou com o ESP32 pra ver se estou perdendo algum detalhe.

O ultimo projeto que fiz com o ESP8266 foi com um NodeMCU plugado na placa principal, e pra gravar bastava meter um cabo USB e descarregar o programa. Mas agora estou precisando de mais pinos, e estou querendo fazer uma placa apenas com um modulo-zinho ESP32 standalone (sem gravador embutido). A proposito, o gravador que pretendo usar é baseado no mesmo chipset usado no modulo completo, o cp2102:

https://produto.mercadolivre.com.br/MLB ... -stm32-_JM

Ao pesquizar por esquemas de Dev Kit na Web, escolhi um e agrupei o que acho que seria a parte do gravador, e a parte da placa, e ficou como abaixo:

Gravador_com_placa.png


Ao que me parece, eu precisaria conectar entre o gravador e a placa, além da alimentação, teria de conectar os 6 sinais da serial (aparentemente nem todos do controle de fluxo sao usados).

E outro detalhe, é que pareceu que alguns pinos sao reservados, de modo que nao sobraria muito I/O disponivel (~19). Além desses que eu anotei, alguem sabe de alguns outros comprometidos com alguma outra função, que sejam reservados?

  • IO0 => Pull-Up ( posso usar como entrada de botao: Normal Aberta para GND )
  • IO2 => Pull-Down ( posso usar como entrada de botao: Normal Aberta para 3V3 )
  • IO4
  • IO5
  • IO12
  • IO13 => RTS ( Reservado ? )
  • IO14 => CTS ( Reservado ? )
  • IO15
  • IO16
  • IO17
  • IO18
  • IO19
  • IO20 => Conectado ao IO23 ( Reservado ? )
  • IO21
  • IO22
  • IO23 => Conectado ao IO20 ( Reservado ? )
  • IO25
  • IO26
  • IO27
  • IO32
  • IO33
  • IO34
  • IO35


Alguem teria alguma observação/correção/reclamação ?

Re: Migrando do ESP8266 para o ESP32

MensagemEnviado: 22 Jun 2018 20:39
por tcpipchip
Opa, atualmente eu estou trabalhando com o ESP32 (BLE 4.1) e minha referencia inicial foi a placa ESP32 da SPARKFUN.

Lá tem tudo o que vc necessita saber! Ok ?

A placa deles funciona muito bem!

PS: na placa eu me preocupei em deixar os pinos do JTAG para gravacao, os SWD.
PS: quando ao RTS e CTS é bom, se voce quiser que o teu gravador controle o RESET / BOOT

PS: os pinos TOUCH funcionam muito bem :)

Re: Migrando do ESP8266 para o ESP32

MensagemEnviado: 22 Jun 2018 22:11
por andre_luis
Ok, quanto ao JTAG, pretendo usar com o Arduino, que por nao ter suporte a esse recurso, seria desnecessário, mas a ideia é bacana, e vou tentar distribuir os pinos de modo a compatibilizar para algum uso futuro dessa PCI.

O CTS/RTS, vou tentar fazer o mesmo, usar com alguma entrada ou saida que nao interfiram na gravação.

Obrigado pelas dicas, vou dar uma olhada na referencia que voce passou

[EDITADO]

A proposito, pelo esquema da placa que voce falou, acabei de perceber que o GPIO5 também é reservado...chatice.

https://cdn.sparkfun.com/assets/learn_t ... ematic.pdf

Re: Migrando do ESP8266 para o ESP32

MensagemEnviado: 23 Jun 2018 08:50
por tcpipchip
Lembrando que "alguns" GPIOS tem pullups internos...

E alguns são apenas entradas, ok ?...é que chamastes no desenho de tudo GPIO

Re: Migrando do ESP8266 para o ESP32

MensagemEnviado: 23 Jun 2018 09:38
por tcpipchip
tem tambem pino de LOG do BOOTLOADER

Re: Migrando do ESP8266 para o ESP32

MensagemEnviado: 23 Jun 2018 11:22
por andre_luis
tcpipchip escreveu:Lembrando que "alguns" GPIOS tem pullups internos...


Poisé, inicialmente achei que fossem apenas o GPIO0 e GPIO2, mas depois de ver o esquema da placa que voce indicou percebo que o GPIO5 também deve estar nessa categoria.

tcpipchip escreveu:E alguns são apenas entradas, ok ?...é que chamastes no desenho de tudo GPIO


Entendi, mas esse esquema eu peguei na internet, de uma board generica, e essas restrições nao estão claras, ao menos nos esquemas que eu visualisei, mas valeu pela dica novamente, vou garimpar esses detalhes...

[EDITADO]

Segue resumo do que consegui apurar até agora ( em amarelo, nao esta disponivel para uso ):

  • IO0 => Pull-Up ( posso usar como entrada de botao: Normal Aberta para GND )
  • IO1 => TX - RESERVADO !!!
  • IO2 => Pull-Down ( posso usar como entrada de botao: Normal Aberta para 3V3
  • IO3 => RX - RESERVADO !!!
  • IO4
  • IO5 => Pull-Up ( posso usar como entrada de botao: Normal Aberta para GND )
  • IO6 => Flash interna - RESERVADO !!!
  • IO7 => Flash interna - RESERVADO !!!
  • IO8 => Flash interna - RESERVADO !!!
  • IO9 => Flash interna - RESERVADO !!!
  • IO10 => Flash interna - RESERVADO !!!
  • IO11 => Flash interna - RESERVADO !!!
  • IO12
  • IO13 => RTS ( Reservado ? )
  • IO14 => CTS ( Reservado ? )
  • IO15
  • IO16
  • IO17
  • IO18
  • IO19
  • IO20 => Conectado ao IO23 ( Reservado ? ) NAO EXISTE NO DATASHEET
  • IO21
  • IO22
  • IO23 => Conectado ao IO20 ( Reservado ? )
  • IO25
  • IO26
  • IO27
  • IO32 => Conectado internamente ao Cristal ( Reservado ? )
  • IO33 => Conectado internamente ao Cristal ( Reservado ? )
  • IO34 => Entrada apenas
  • IO35 => Entrada apenas
  • IO36 => Entrada apenas
  • IO37 => Inacessivel externamente ao modulo ( Reservado ? )
  • IO38 => Inacessivel externamente ao modulo ( Reservado ? )
  • IO39 => Entrada apenas


E mais;
Só Agora vi no datasheet da Expressif [pag. 8] que o IO20 nao existe...realmente complicado decifrar o que é confiável:
http://akizukidenshi.com/download/ds/es ... eet_en.pdf

...mas nao achei em lugar algum referencia á pino de somente saída, mas vou continuar catando.
Achei num desenho no Google os pinos do cristal indicando apenas saída...mas agora ja nao sei mais se sao reservados.

Re: Migrando do ESP8266 para o ESP32

MensagemEnviado: 24 Jun 2018 07:09
por tcpipchip