
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
||
|
Hallo, Danke für die schnelle Antwort. Muss vorausschicken, dass ich einen Mini betreibe. __ __ _| \_/ |_ GND | | [16]_| |_[9] | | [15]_| |_[10] | | [6]_| |_[1] __ DIP1 __ GND | | GND __ DIP3 __ [5]_| |_[2] __ DIP2 __ GND | | [14]_| |_[11] | | [13]_| |_[12] | | [4]_| |_[3] |_______| > Port[3] direkt beim Einschalten auf LOW Pegel ? - Das klingt nach Hostmodus ... > > Hier unser Senf zu Frage 1: > > Weil, nach jedem Einschalten (VDD=EIN) schaut das OS der Micro kurz (ca. 300 ms ?) welchen Pegel der Port[3] hat. Das bedeutet bei DIP-Schalterstellungen "xx1" geht sie gleich in den Programmiermodus. > > > Wenn Port[3] 'in der Luft hängt' sieht das OS dank internem Pullup-Widerstand High-Pegel und startet das Userprogramm. Wie gesagt, die Entscheidung fällt kurz nach Einschalten der Versorungsspannung. > > Danach ist egal wenn der Port[3] auf Low gezogen wird (Ausser natürlich man schreibt was wie IFPort[3] = LOW THEN END :) > > Eine Hardcorelösung falls kein anderer Port mehr frei ist als der Port[3]: > > http://ccintern.dharlos.de/forum/lesen.php?eintrag=11709 > > > Zu Frage 2 und 3: Gehen weiter ans Forum > > Vielleicht doch eine Idee: Am Port[1] sendet ja auch die Serielle Schnittstelle. Vermutung ist: Deren Ruhepegel nach Einschalten wird über einen Ausgangstreiberstufe im Chip High. > > (Weiss da jemand im Forum Genaueres? Wäre mal Interessant wie das genau funktioniert) > > Jedenfalls wenn es so zutrifft wäre bei DIP-Schalterstellungen "1xx" ein fetter Kurzschluss die Folge. Und der Kontroller überlastet. Eventuell mal die Stromaufnahme beobachten. > > > > > > ' Die Pinbelegung der > ' Open-Micro (QT4) > ' _____ _____ > ' | \__/ | > ' [ VDD GND ] > ' | | > 'Port[6]/AD[6]/BEEP [ PTA5 PTA0 ] Port[1]/AD[1]/BEEP/serielle Schnittstelle > ' | | > 'Port[5]/AD[5]/BEEP [ PTA4 PTA1 ] Port[2]/AD[2]/BEEP > ' | | > 'Port[4]/BEEP [ PTA3 PTA2 ] Port[3] ist nur Inputpin<--- an diesem Pin liegen auch IRQ und FREQ > ' |______________| > ' > > > > > > > Hallo, > > > > ich habe eine Schaltung aufgebaut, die mittels Dipschalter in verschiedene Unterprogramme springen soll. > > > > Der DIP-Schalter ist 3-Polig > > > > Anschluss Schalter: Kontakt schlatet GND an Port > > > > Portbelegung: > > DIP1 PORT[1] > > DIP2 PORT[2] > > DIP3 PORT[3] > > > > Folgende Schaltzustände wären möglich: > > 1. 000 > > 2. 100 > > 3. 010 > > 4. 001 > > 5. 110 > > 6. 011 > > 7. 101 > > 8. 111 > > > > > > Nun zum Problem: > > > > 1. Stellung (000) - Anlegen Spannung = Programm (Unterprogramm) läuft ohne Probleme > > 2. Stellung (100) - Anlegen Spannung = Programm (Unterprogramm) läuft ohne Probleme > > 3. Stellung (010) - Anlegen Spannung = Programm (Unterprogramm) läuft ohne Probleme > > 4. Stellung (001) - Anlegen Spannung = Micro geht nicht > > > > Auch die Stellungen 110... zeigen gleiches Ergebnis wie Punkt 4. > > > > > > 3 Fragen: > > 1. Warum kann ich am Port 5 bzw. 6 nicht bei Anlegen der Spannung gleiches Erfahren wie bei Port 1 und 2? > > > > 2. Gleichzeitige Portbelegung Poert 1 + 2 GND geht das? > > > > 3. Wer kentt ABhilfe bzw. Lösungsstellung? > > > > > > Herzliche Grüße > > Martin |
| Antwort schreiben |