attiny85 AREF anderen PIN?

OP Persönliche Seite #5551055
Lesenswert?

Hi

Ich (noob) experimentiere gerade etwas mit dem Attiny85 (billiger 
Chinaklon mit Mikro-usb Anschluss). Das Teil wird mit dem Micronucleus 
Bootloader betrieben und es wird ein SSD1306 OLED angesteuert 
(SSD1306_minimal, TinywireM...).

Das Display verwendet für I2C die PINS PB0 und PB2 für die 
Kommunikation.
Nun wollte ich aber gerne mal den ADC an PIN PB3 und/oder PIN PB4 lesen 
(0-5V) und auf das Display ausgeben und hätte dafür gerne eine 
Referenzspannung angelegt da ich mich nicht auf VCC als Referenz 
verlassen möchte. Dummerweise ist aber der AREF Pin (PB0) nun schon für 
SDA des Displays belegt.

Gibt es eine Möglichkeit einen anderen PIN als PB0 für AREF zu nutzen 
und dann bei "analogReference()" einzutragen? Ich mache mir nicht viel 
Hoffnung stattdessen den SDA PIN in der TinyWireM Lib zu ändern sodass 
ich dann AREF an PB0 verwenden könnte...
(Firma: matzetronics) #5551066
Lesenswert?

Paul G. schrieb:
> Gibt es eine Möglichkeit einen anderen PIN als PB0 für AREF zu nutzen
> und dann bei "analogReference()" einzutragen?

Nö. Du könntest höchstens einen anderen ADC Eingang mit einer Referenz 
verbinden und das zum Umrechnen zu benutzen. Wenn du AREF benötigst, um 
den gesamten Bereich des ADC zu nutzen, musst du PB0 freiräumen.
Peter Fleurys I²C Library ist übrigens in der Lage, jeden Port/Pin zu 
nutzen, so das du nicht unbedingt den TinyWire Kram brauchst.
OP Persönliche Seite #5551123
Lesenswert?

Matthias S. schrieb:
> Nö. Du könntest höchstens einen anderen ADC Eingang mit einer Referenz
> verbinden und das zum Umrechnen zu benutzen.
Okay, das scheint dann die Lösung für mich zu sein.


> Wenn du AREF benötigst, um den gesamten Bereich des ADC zu nutzen, musst du PB0 
freiräumen.
> Peter Fleurys I²C Library ist übrigens in der Lage, jeden Port/Pin zu
> nutzen, so das du nicht unbedingt den TinyWire Kram brauchst.

Dann müsste ich aber die SSD1306_minimal Library anpassen, das ist im 
Moment ausserhalb meiner Fähigkeiten :)

 Danke erstmal

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren