guten morgen alle zusammen ich habe vor kurzem begonnen auf PIC16 controller zu programmieren und bin dabei auf ein komisches phänomen gestossen. folgenden code habe ich in der endlosschleife stehen: RA2 = 0; TRISA2 = 0; TRISA2 = 1; meiner Meinung nach dürfte ich am Port eigentlich nichts sehen. Tatsächlich bekomme ich aber eine kurvenform die ähnlich wie ein sägezahn aussieht, wobei die amplitude ca 4V (bei 5V betriebsspannung) ist und die zeit in der der "sägezahn" von 0 auf 4V geht ist ca 4µs. das ganze passiert immer wenn ich den pin als eingang setzte (also TRISA2 = 1;) es wäre nett, wenn mir wer sagen könnte, ob ich da irgendetwas falsch mache, oder was der grund dafür ist. vielen dank im schonmal im vorraus mfg markus
Die Frage ist halt, welchen Pegel ein offener Eingang hat. Offenbar wird der langsam auf Highpegel gezogen. Kann ein interner Pullup-Widerstand sein, oder einfach Leckströme. Was macht das WPUA-Register? Dort ist per default ein 'Weak Pullup' aktiviert. Allerdings werden alle Pullup's im OPTION_REG per default abgeschaltet. Uwe
Hi Markus, dein Pin A2 hat wahrscheinlich kein Potential, sprich Du schaltest ihn als Eingang hochohmig aber hast ihn weder gegen VDD oder VSS geschaltet, dann floatet der Ausgangstreiber. Stichwort "floaten" Viele Grüße Nico
Laut Datenblatt (http://ww1.microchip.com/downloads/en/DeviceDoc/41419B.pdf) liegen auf dem Pin RA2 noch dieverse andere Funktionen, z.B. AN1, CPS1 usw. Bitte überprüf, ob all diese anderen Funktionen auch tatsächlich abgeschaltet sind. Bei Microchip sollte man als erstes insbesondere die analogen Funktionen (die per default meist an sind) ausschalten. Der Sägezahn deutet an der Stelle auf die vorhandene Funktion als kapazitive Tastatur hin. Gruß Marc
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.