GPIO / TRIS

Im Unterforum Microcontroller - Beschreibung: Hardware - Software - Ideen - Projekte

Elektronik Forum Nicht eingeloggt       Einloggen       Registrieren




[Registrieren]      --     [FAQ]      --     [ Einen Link auf Ihrer Homepage zum Forum]      --     [ Themen kostenlos per RSS in ihre Homepage einbauen]      --     [Einloggen]

Suchen


Serverzeit: 22 7 2026  11:44:46      TV   VCR Aufnahme   TFT   CRT-Monitor   Netzteile   LED-FAQ   Oszilloskop-Schirmbilder            


Elektronik- und Elektroforum Forum Index   >>   Microcontroller        Microcontroller : Hardware - Software - Ideen - Projekte

Gehe zu Seite ( 1 | 2 Nächste Seite )      


Autor
GPIO / TRIS

    







BID = 300305

perl

Ehrenmitglied



Beiträge: 11110,1
Wohnort: Rheinbach
 

  




Zitat :
Der Compiler (MPLAB) sagt mir aber das das Symbol TRIS nicht definiert ist.



Da hat er Recht.
Lass doch einfach bcf davor weg ! TRIS ist ein Befehl, kein Argument.

_________________
Haftungsausschluß:



Bei obigem Beitrag handelt es sich um meine private Meinung.



Rechtsansprüche dürfen aus deren Anwendung nicht abgeleitet werden.



Besonders VDE0100; VDE0550/0551; VDE0700; VDE0711; VDE0860 beachten !

BID = 300335

Peo

Gesprächig



Beiträge: 181
Wohnort: Baden-W.

 

  


Danke für die Info

Im Datenblatt steht, dass Tris f mit f=6 verwendet wird.
Aber mit Tris 6 und bsf GPIO,1 leuchtet immer noch keine LED.

Ich verstehe es nicht.

mfg

Peo

BID = 300390

Peo

Gesprächig



Beiträge: 181
Wohnort: Baden-W.


Danke für das lange file. Aber das ist schon wieder so lang, dass ich damit noch Probleme habe.

Gibt es denn keinen kurzen Code, in dem einfach mal der Befehl für das Umschalten auf Ausgang und für das "Einschalten" eines Ausganges steht?

Ich verzweifle noch. Mit dem PIC 16F690 geht das alles, aber bei den simplen PICs sind die Befehle irgendwie komisch.

mfg

peo

BID = 300409

perl

Ehrenmitglied



Beiträge: 11110,1
Wohnort: Rheinbach



Zitat :
Aber das ist schon wieder so lang, dass ich damit noch Probleme habe.




Das Programm ist doch nur so lang, weil es so heftig kommentiert ist.

Lade es einfach mal mittels copy&paste und wirf dann die Kommentare raus, die Fehlermeldungen verursachen.

Den Vorspann habe ich dir nur gezeigt, damit du mal siehst wie ein etwas besserer Programmierstil aussieht.

bsf GPIO,1 ; ist schlechter Stil, weil man ein solches Programm nicht warten kann.


Hingegen ist:

Tr6 equ 1 ; GP1 Pin6
#DEFINE Trace6 GPIO,Tr6

und alle späteren Aufrufe nur noch:
bsf Trace6
...
bcf Trace6


viel lesbarer und weniger anfällig gegen Schreibfehler.






_________________
Haftungsausschluß:



Bei obigem Beitrag handelt es sich um meine private Meinung.



Rechtsansprüche dürfen aus deren Anwendung nicht abgeleitet werden.



Besonders VDE0100; VDE0550/0551; VDE0700; VDE0711; VDE0860 beachten !

BID = 300447

Ltof

Inventar



Beiträge: 9386
Wohnort: Hommingberg


@Peo

Was ist mit den Beispielprogrammen, die bei Pickit2 dabei waren? Lässt sich daraus nichts erkennen?

Wieso bist Du jetzt mit drei verschiedenen PICs zugange?

Hast Du meinen Programmschnipsel ausprobiert?

Und was Perl eigentlich sagen will: Ein sauber strukturiertes Programm mit vernünftigen Zuweisungen von Variablen am Anfang, macht es übersichtlicher und Änderungen sind leichter einzupflegen.

Ich greife mal das Beispiel von perl auf und erkläre das:
Der Variablen Tr6 wird der Wert 1 zugewiesen.
Dem Text "Trace6" wird "GPIO, Tr6" zugewiesen.

Also macht
"bsf Trace6" in diesem Fall das selbe wie "bsf GPIO,1"

Sowas ist leichter zu pflegen, wenn man die Deklarationen ganz oben im Quelltext macht. Das wird später mal wichtig, wenn Du lange Programme schreibst.

Zunächst scheint mir aber ein anderes Problem vorzuliegen.

TRIS 6 (oder TRIS GPIO) funktioniert nur, wenn vorher im W-Register der Wert steht, mit dem die PINs auf Eingang oder Ausgang geschaltet werden sollen. Eine 0 für einen Ausgang und eine 1 für einen Eingang. Um GPIO,1 auf Ausgang zu schalten, muss vor dem Ausführen von TRIS das BIT 1 im W-Register gelöscht sein. Sonst kann es nicht funktionieren.

edit:
Ich hatte übrigens die selben Probleme wie Du. Da ich anfangs intensiv mit den PICs 12F629 und 12F675 herumgespielt hatte, war ich über die TRIS-Geschichte beim 10F206 etwas irritiert. Mir hilft es in solchen Fällen immer, ein fremdes, funktionierendes Programm aufzuspielen und mit meinem eigenen Strunz zu vergleichen.

Gruß,
Ltof

_________________
„Schreibe nichts der Böswilligkeit zu, was durch Dummheit hinreichend erklärbar ist.“
(Hanlon’s Razor)

BID = 300998

Peo

Gesprächig



Beiträge: 181
Wohnort: Baden-W.


Danke für die geduldigen Tipps.

Jetzt komme ich voran.

mfg

Peo

BID = 306624

Peo

Gesprächig



Beiträge: 181
Wohnort: Baden-W.


Hallo

Ich bekomme den GP2 nicht zum Laufen als Output.

Was muss ich tun?

mfg

Peo

BID = 306637

Ltof

Inventar



Beiträge: 9386
Wohnort: Hommingberg



Zitat : Peo hat am  2 Mär 2006 20:27 geschrieben :

Was muss ich tun?



Link
(Aufmerksam lesen!)

_________________
„Schreibe nichts der Böswilligkeit zu, was durch Dummheit hinreichend erklärbar ist.“
(Hanlon’s Razor)

BID = 306658

Peo

Gesprächig



Beiträge: 181
Wohnort: Baden-W.


Danke für den Tipp

Ich habe aufmerksam gelesen und ich bin mir fast sicher, dass es etwas mit

OPTION TOC3 (4) zu tun hat. Aber ich habe es trotzdem

a) nicht verstanden

und

b) funktioniert das nicht.

Deswegen habe ich bewusst hier nochmal gefragt. Vielleicht kann ja jemand die paar Zeilen Code explizit posten.

Das wäre wirklich hilfreich.

mfg

Peo

BID = 306665

Ltof

Inventar



Beiträge: 9386
Wohnort: Hommingberg



Zitat : Peo hat am  2 Mär 2006 21:28 geschrieben :

OPTION TOC3 (4) zu tun hat.




Was soll das sein?

Auf welche Seite in welchem Datenblatt beziehst Du Dich?

_________________
„Schreibe nichts der Böswilligkeit zu, was durch Dummheit hinreichend erklärbar ist.“
(Hanlon’s Razor)

BID = 306701

Peo

Gesprächig



Beiträge: 181
Wohnort: Baden-W.


Ich beziehe mich auf das lange Code-Beispiel von PERL

Dort findet sich dieser Eintrag.
Dass es dieser sein sollte, schien mir logisch, weil im Datenblatt für den PIC 12F508/509 auf Seite 31 in Kapitel 5.3 steht, dass der TOCKI Pin durch das OPTION Register und nicht durch TRIS geschaltet wird.

Gemäß S. 4 des Datenblatts ist PIN 5 = GP2 = TOCKI

Deswegen dachte ich, dass diese CODE-Zeile wohl der Schlüssel ist. War es dann aber wohl doch nicht.

Dies heißt für mich nun leider wieder: Gehen Sie zurück ins Gefängnis, aber nicht über LOS!

mfg

Peo

[ Diese Nachricht wurde geändert von: Peo am  2 Mär 2006 23:34 ]

BID = 306758

Ltof

Inventar



Beiträge: 9386
Wohnort: Hommingberg



Zitat : Peo hat am  2 Mär 2006 23:33 geschrieben :

Ich beziehe mich auf das lange Code-Beispiel von PERL




In perls Beispiel gibt es auch keinen Ausdruck namens "T0C3"


Zitat :

Gemäß S. 4 des Datenblatts ist PIN 5 = GP2 = TOCKI




Es ist der selbe Pin, PIN 5 eben. Funktional sind das zwei völlig verschiedenen Dinge. Entweder PIN 5 wird als Timer 0Clock Input benutzt oder eben als GP2. Du willst ihn als GP als Ausgang benutzen. Das hat dann mit OPTION nur bedingt zu tun. Der GP2 muss in TRIS entsprechend initialisiert werden! TOCS muss gelöscht sein! Sonst wird PIN5 als Eingang für Timer 0 beschaltet, da dieses Bit eine höhere Priorität hat als die Einstellung im TRIS-Register.

Gruß,
Ltof

_________________
„Schreibe nichts der Böswilligkeit zu, was durch Dummheit hinreichend erklärbar ist.“
(Hanlon’s Razor)


      Nächste Seite
Gehe zu Seite ( 1 | 2 Nächste Seite )
Vorheriges Thema Nächstes Thema 


Zum Ersatzteileshop


Bezeichnungen von Produkten, Abbildungen und Logos , die in diesem Forum oder im Shop verwendet werden, sind Eigentum des entsprechenden Herstellers oder Besitzers. Diese dienen lediglich zur Identifikation!
Impressum       Datenschutz       Copyright © Baldur Brock Fernsehtechnik und Versand Ersatzteile in Heilbronn Deutschland       

gerechnet auf die letzten 30 Tage haben wir 6 Beiträge im Durchschnitt pro Tag       heute wurden bisher 7 Beiträge verfasst
© x sparkkelsputz        Besucher : 192417726   Heute : 1761    Gestern : 4974    Online : 583        22.7.2026    11:44
4 Besucher in den letzten 60 Sekunden        alle 15.00 Sekunden ein neuer Besucher ---- logout ----viewtopic ---- logout ----
xcvb ycvb
0.050215959549