Forum: Mikrocontroller und Digitale Elektronik Fragen zum ESP8266 12


von Bernd B. (gorkde)


Lesenswert?

Hallo,

ich habe mit dem Chip noch nicht gearbeitet und möchte ihn mit der 
Arduino IDE programmieren.

Dazu habe folgende Fragen, da ich nirgends ein richtiges Datenblatt mit 
Registern etc. finden kann:

1) Hat er einen Analog Komparator oder kann man nur softwaremäßig 
abfragen wie hoch der Wert ist und das verarbeiten?

2) Ich habe gelesen die Pins auf denen das Flash liegt kann man effektiv 
garnicht nutzen. Auch sonst habe ich alle möglichen widersprüchlichen 
Angaben dazu gefunden welche Pins nun wirklich benutzbar sind, weil 
einige ja für andere Sachen  benutzt werden (ich nutze im Programm 
später  nur Seriell und Eeprom).

3) Wie sieht es mit PWM aus?  Ich habe einerseits gelesen PWM geht auf 
jedem Pin,  andererseits sind in dem recht allgemeinen  Datenblatt, was 
ich gefunden habe 4 Pins angegeben und da steht sinngemäß "kann per 
Software auf jedem Pin realisiert werden". Ja was denn nun und wo?

Vielen Dank.

von Michael U. (amiga)


Lesenswert?

Hallo,

Bernd B. schrieb:
> ich habe mit dem Chip noch nicht gearbeitet und möchte ihn mit der
> Arduino IDE programmieren.
>
> Dazu habe folgende Fragen, da ich nirgends ein richtiges Datenblatt mit
> Registern etc. finden kann:

Das findest Du durchaus bei Espressif, vermutlich hier:
http://bbs.espressif.com/viewtopic.php?f=67&t=225
aber eigentlich willst Du das nicht unbedingt... ;)
Die Pin-Map ist aber durchaus interessant.
>
> 1) Hat er einen Analog Komparator oder kann man nur softwaremäßig
> abfragen wie hoch der Wert ist und das verarbeiten?
Er hat keinen, einen 10-Bit ADC gibt es, Bereich 0...1V.

> 2) Ich habe gelesen die Pins auf denen das Flash liegt kann man effektiv
> garnicht nutzen. Auch sonst habe ich alle möglichen widersprüchlichen
> Angaben dazu gefunden welche Pins nun wirklich benutzbar sind, weil
> einige ja für andere Sachen  benutzt werden (ich nutze im Programm
> später  nur Seriell und Eeprom).
GPIO0 wird zum Programmieren gebraucht, kann sonst aber frei verwendet 
werden, muß beim Booten im Normalmode aber auf High liegen. GPIO15 muß 
auf Low liegen, sonst landet er im falschen Bootmode. 10k PullDown 
erledigen das bei mir, sonst frei nutzbar.
GPIO16 hat eine Sonderfunktion für den SleepMode, kann sonst aber auch 
als I/O genutzt werden.
Die Zuordnungen zur Arduino-IDE sind u.a. hier zu finden:
http://esp8266.github.io/Arduino/versions/2.2.0/doc/reference.html

Etliche Pins werden beim Bootvorgang angesprochen, können also mit den 
Pegeln wacklen usw. bis die Sketchsoftware oben ist und die Regie 
übernimmt.

> 3) Wie sieht es mit PWM aus?  Ich habe einerseits gelesen PWM geht auf
> jedem Pin,  andererseits sind in dem recht allgemeinen  Datenblatt, was
> ich gefunden habe 4 Pins angegeben und da steht sinngemäß "kann per
> Software auf jedem Pin realisiert werden". Ja was denn nun und wo?

Auf allen Pins in Software, der ESP ist schnell genug.
Ich habe PWM noch nicht gebraucht, kann also weiter nichts dazu sagen.

Einfach mit dem ESP8266 etwas rumspielen, Suche im Netz nach Zusatzinfos 
wenn etwas konkret nicht erwartungsgemäß läuft, ist ohnehin öfter nötig.

Der Chip ist ein 3,3V-Chip, die I/O sind nicht 5V-tolerant, die 
Stromversorgung muß Impulse von 300mA verkraften (ein 100µ Elko an den 
3,3V des ESP ist sinnvoll), Durchschnittlich will er 80-100mA.

Gruß aus Berlin
Michael

von Bernd B. (gorkde)


Lesenswert?

Vielen Dank!

von Bernd B. (gorkde)


Lesenswert?

Die Links waren  super!

Was ist mit den Pins die am internen Fash hängen, die sind nicht nutzbar 
oder? So steht es zumindest auch in einem deiner Links.

Achso nochwas, irgendwie habe ich auch teilweise gelesen die Pins müssen 
mit z.B. "D1" statt "1" angegeben werden, war das mal so und ist 
überholt?

Weil dazu finde ich auch diverse unterschiedliche Angaben.

von holger (Gast)


Lesenswert?

>Was ist mit den Pins die am internen Fash hängen, die sind nicht nutzbar
>oder? So steht es zumindest auch in einem deiner Links.

Wie oft willst du das dann noch bestätigt haben?

von Dennis Sch. (Gast)


Lesenswert?

Es ist schon richtig, die ESP-12 Module haben einige Pins herausgeführt 
die nur bedingt nutzbar sind, da sie am SPI Flash hängen, welcher auf 
dem Modul verbaut ist.

http://www.addicore.com/v/vspfiles/downloadables/Product%20Downloadables/ESP8266/schematic_esp-12-q.png

Das sind also die hinteren,(SCLk,MOSI,GPIO10,GPIO9,MISO und CS0)


Der Rest ist, wie Michael schon sagte, problemlos...

von Michael U. (amiga)


Lesenswert?

Hallo,

Bernd B. schrieb:
> Was ist mit den Pins die am internen Fash hängen, die sind nicht nutzbar
> oder? So steht es zumindest auch in einem deiner Links.
Ignorieren, sind (ohne extremen Aufwand) nitzlos.
MCP23S17 am SPI ist eine netter Portexpander wenn Leitungen fehlen.

> Achso nochwas, irgendwie habe ich auch teilweise gelesen die Pins müssen
> mit z.B. "D1" statt "1" angegeben werden, war das mal so und ist
> überholt?
Sind inzwischen wohl alle möglichen defins drin. Die normale Pinnummer 
(also 1...16) ist am sinnvollsten, das D1 usw. sind die Nummerierungen 
des NodeMCU-Boards, gehen auch.

Gruß aus Berlin
Michael

von Bernd B. (gorkde)


Lesenswert?

Ok, vielen Dank.
Mein Problem ist, selbst mit Schieberegister am Ausgang reichen die Pins 
kaum, da ich azch den Eingang schon zig mal multiplexe.

Aber das hat mir schonmal viel  weitergeholfen!

von Michael U. (amiga)


Lesenswert?

Hallo,

Bernd B. schrieb:
> Mein Problem ist, selbst mit Schieberegister am Ausgang reichen die Pins
> kaum, da ich azch den Eingang schon zig mal multiplexe.

naja, die ESPs sind so billig, ich verteile einfach genug in der Gegend 
rum...

Gruß aus Berlin
Michael

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.