PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : PIC16F648A



rnhvw
13.11.2004, 13:01
Hallo,

Ich nutze ein PIC16F648A. Ist fast gleich wie PIC16F84 aber hat 4K flash.

Wenn Port RA3 ein hochgehende Spannung entdeckt van 2V wird dass als ein '1' im software detectiert. Dass hab ich mit hilfe ein anderen Port der verbunden ist mit ein Oszilloscop entdeckt.

Laut Datenblatt soll Port RA3 ein Schmitt-trigger-type-eingang sein wobei VIH (eingang hoch spannung) 0.8 * VDD = 0.8 * 5V = 4V sein sollte.
Jedoch ein TTL-type-eingang (z.B. PortB) soll ein VIH von 2V als '1' detectieren.

Es seht aus als ob Port RA3 ein TTL-type ist, oder irre ich mich?

Ich benutze Port RA3 in combination mit einem RC netzwerk om die RC-Zeit zu messen und mochte deshalb (und sowieso) genau verstehen wass geschied.

Gruss,

Henk

stegr
13.11.2004, 18:14
Also, ich hab mir grade mal ne 16F648 geschnappt und es selber auch mal versucht und der Schmitt-Trigger schaltet bei 2,60V und 1,60V.
Ein normaler TTL-Eingang bei 1,20V.

Ansonsten hab ich mal im Datenblatt nachgeschaut und dort steht nicht, dass bei genau 0,8*Vdd geschaltet wird, sondern dass erst ab 0,8*Vcc eine Erkennung von High garantiert wird.
Genauso sieht es mit Vil aus: 0,2*Vdd bedeutet, dass ein Low-Signal unter 0,2*Vdd liegen muss, damit es unter allen Umständen noch als Low erkannt wird.

Du kannst nicht von einem genauen Umschaltzeitpunkt ausgehen, sry...

Was ich dir empfehlen würde, wäre den Pin RA3 als AD-Wandler-Eingang zu verwenden und dann in der Software den Wert ständig abzufragen und zu vergleichen.

MfG
Stefan

rnhvw
15.11.2004, 11:32
Hallo Stefan,

>dort steht nicht, dass bei genau 0,8*Vdd geschaltet wird, sondern dass erst ab 0,8*Vcc eine Erkennung von High garantiert wird.

Ja, da hast Du recht! Da hab ich's falsch interpretiert.

Man soll die specs lesen wie "was mann anbieten soll" und nicht "wie die chip functioniert".

Deshalb ist es fur eine genaue RC-messwert nicht nutzbar und sollte mann die Voltage Reference Module (u.a. RA3) benutzen.

Danke.

Gruss

Henk

BlackBox
15.11.2004, 13:40
Hallo Henk,

Der 16F648 hat keinen AD-Wandler aber einen Comoparator. In verbindung mit dem Voltage-Reference-Module und dem Comparatorinterupt kannst Du die Zeiten eines RC-Gliedes recht genau messen.

Steffen