Das ist der Code vom Mega8? Spielt da immer noch der PCF mit? Der Mega8 kann doch die Segmente selbst ansteuern.
Ächz:
#define pcf 0b01000110 // Anzeige
#define pcf2 0b01000010 // Segmente
Druckbare Version
Das ist der Code vom Mega8? Spielt da immer noch der PCF mit? Der Mega8 kann doch die Segmente selbst ansteuern.
Ächz:
#define pcf 0b01000110 // Anzeige
#define pcf2 0b01000010 // Segmente
Ja schon, aber das ist
1. viel arbeit wieder alles umzulöten
2. bei mir gerade nicht möglich, weil bei meiner lötstation eben die lötkolbenheizung kaputt gegangen ist (wird nicht heiß), Ersatz-Lötkolben ist bestellt.
geht es so nicht?
der mega8 steuert die pcf´s
okay, sobald ich wieder löten kann, lass ich den mega8 die Segmente steuern. Welche Pins soll ich benutzen, oder ist das egal?
Hallo
Dadurch wird der Bus dauerhaft belegt. Deshalb vermutlich auch deine Probleme beim gleichzeitigen Ansteuern des RP6 mit dem m32. Dein Mega8 ist nämlich auch Master (für den PCF) und deshalb kollidieren die Daten (vermutlich).Zitat:
der mega8 steuert die pcf´s
Belegt sind für IR-Kommunikation und I2C: PB3 (OC2), PD0 (Rxd), PD1 (TxD), PC4 (SDA), PC5 (SCL) und PC6 (Reset).
Bleiben übrig:
14 - PB0 - ICP1
15 - PB1 - OC1A
16 - PB2 - OC1B
(IR) 17 _ PB3 - OC2
18 - PB4 - MISO
19 - PB5 - SCK
09 - PB6 - XTAL1
10 - PB7 - XTAL2
23 - PC0 - ADC0
24 - PC1 - ADC1
25 - PC2 - ADC2
26 - PC3 - ADC3
(I2C) 27 - PC4 - SDA
(I2C) 28 - PC5 - SCL
(RES) 01 - PC6 - RESET
(IR) 02 - PD0 - RxD
(IR) 03 - PD1 - TXD
04 - PD2 - INT0
05 - PD3 - INT1
06 - PD4 - XCK
11 - PD5 - T1
12 - PD6 - AIN0
13 - PD7 - AIN0
07 - VCC
08 - GND
20 - AVCC
21 - AREF
22 - GND (ADC)
Gruß
mic
Hallo,
Kann ich den mega8 dann noch programmieren?Zitat:
Deshalb wirst du leider auch TxD, RxD und OC2 verwenden müssen.
ähm....?Zitat:
wichtig ist aber, dass sie als Zeilenbits verwendet werden
Was meinst du mit Zeilen und Spalten? Ich habe 12pins, 4pins um die 4 anzeigen einzuschalten und 8pins für die Segmente + punkt.Zitat:
Belegungsvorschlag: PB0-7 und PD0-2 als Zeilen, PC0-3 und PD3-7 als Spalten.
mfG
Philip
Hallo
Irgendwie hab' ich den Kurs verloren. Das falsch vorgeschlagene Pinout wäre hier passend gewesen:
https://www.roboternetz.de/community...ient-ansteuern
Entschuldigung. Für deine 7-Segmente kannst du die Pins selbstverständlich frei belegen. (Vielleicht die ADCs freilassen für spätere Verwendung als zusätzliche I2C-ADCs und die OC1A/B für Hardware-PWM z.b. LED dimmen oder Servos.)
TxD, RxD und OC2 werden nur zum Flashen verwendet. Wenn der USART ausgeschaltet ist und OC2 nicht vom Timer gesteuert wird, könnte man diese Pins auch verwenden. Nach dem Reset übernimmt aber der Bootloader die Kontrolle, deshalb muss man die Pins so belegen, dass sie beim Flashen a: nicht stören und b: nichts zerstören. Das funktioniert dann ähnlich wie beim ISP.
Gruß
mic
Juhuu, Ich kann wieder löten!
Hm... ich benutze ja pnp-transistoren, kann ich die weiterbenutzen? Kann der mega8 negative spannung auf ein port setzen (-5V) ?
Ein µC kann nur 0V oder VCC (z.B. bei 5V Versorgung am Ausgang 5V) schalten. Du kannst keine negative Spannung schalten. Mit einigen Tricks könntest du damit die negative Spannung schalten. Wenn man das GND Potential (vom µC) auf -5V legt und VCC an 0V. Dadurch ist es gegen GND vom µC die Spannung immer positiv. Will man auch noch +5V Schalten muss man mit einem Transistor oder Fet schalten (das ist aber gegen -5V gemessen).
Eine weitere Möglichkeit wäre mit Optokoppler zu arbeiten. Mit dem µC steuert man die Led des Optokopplers an. Am Ausgang des Optokopplers hat man ein Potentialunabhängigen Schalter. Dadurch kann man auch eine negative Spannung schalten.
MfG Hannes
...oder ich versuche morgen mal npn-transistoren
warum funktioniert das nicht mir npn-transistoren??
base - an µC
collector - an +5V
emitter - an segmentanzeige
mit pnp funktioniert das wunderbar!