PIC und C Amfängerfrage

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: 30 11 2024  06:15:01      TV   VCR Aufnahme   TFT   CRT-Monitor   Netzteile   LED-FAQ   Osziloskop-Schirmbilder            


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

Gehe zu Seite ( Vorherige Seite 1 | 2 | 3 )      


Autor
PIC und C Amfängerfrage
Suche nach: pic (2056)

    







BID = 486281

DonComi

Inventar



Beiträge: 8605
Wohnort: Amerika
 

  



Zitat :

Und die Bitschiebereien bei
der Abfrage sind nicht nötig


Das sind ja Ausdrücke, die vom Präprozessor noch ordentlich umgesetzt werden in endgültige werte.

Aus nem

#define Taste, 4
1<<Taste

wird später schlicht und einfach der Wert 0x10 gebildet. Aber wer will schon mit so nichtssagenden Werten wie 0x10 oder meinetwegen 16 arbeiten? Zumal wird dann die Portierung wesentlich einfacher.

Allerdings hast du vollkommen Recht, wenn man Bitfelder nutzt, dann ist das etwas anderes. Allerdings kann ein Bitfeld auch größer als 1 Bit breit sein, da würde es teilweise schonwieder Sinn machen.

Und auf goto sollte man gänzlich verzichten, wo wir schon beim sauberen Programmieren sind. Dieses Relikt ist wirklich überflüssig.

So, zum Thema:
Klappts denn?

_________________

BID = 486302

Nukeman

Schriftsteller



Beiträge: 754
Wohnort: bei Kleve

 

  

Hi

ich gebe Dir(DonComi) Recht, dass der Code oftmals lesbarer wird, wenn
man mit Bitschiebe-Operationen arbeitet und die Arbeit den Präprozessor
machen lässt.

Will hier auch keinen Zeigefinger heben. Jeder soll so programmieren
wie es ihm am besten gefällt

Beim vorliegenden Fall hat der Compiler die if-Anweisung wegoptimiert.
Sie hatte auch keinen Bezug zum Portbit T.
;if (!(i & 0<<'T'))

ist gleich mit
;if (!(i & 0 )

ist gleich mit
;if (!0)

ist gleich mit
if(1) -> den elseteil hat der Compiler also auch gleich weggelassen.
Das meint er mit "Condition is always true".

Gruß
Stefan

BID = 486315

DonComi

Inventar



Beiträge: 8605
Wohnort: Amerika

Moin,


Nein, nein, ich wollte ebenfalls keinen Zeigefinger heben, ich habe dich schon verstanden, du bezogst dich ja auf den konkreten Fall


Ich war zuerst leicht verwirrt über das 'T', das ja nichts anderes ist als der entsprechende ASCII-Kode für das T, das Bit wurde also iins Nirvana geschoben .



_________________

BID = 487359

Herrminator

Gelegenheitsposter



Beiträge: 87

Gutes Neues Jahr wünsche ich euch allen.

Jetzt bin ich wieder fit.

Habe das Programm von Nukeman mal getestet.
Und habe an RA 5 einen Schließer angeschlossen.
Nun habe ich ja bei Taster gedrückt 4,78 V und bei nicht gedrückt 0V (über Pulldown Widerstand) Meine LED leuchtet, also bin ich im else Teil.
Auf Drücken des Tasters bleibt er im else Teil...

Gruß Tobias

BID = 488387

Herrminator

Gelegenheitsposter



Beiträge: 87

Mir fällt grad ein, ich benutze einen 16F690 und hab meinen Taster am Pin RC7 momentan angeschlossen. Kann es sein das ich noch was umstellen muss das der Pin mein Pegel erkennt ?

Gruß Tobias



BID = 488426

Racingsascha

Schreibmaschine



Beiträge: 2247
Wohnort: Gundelsheim
ICQ Status  

Du musst das serielle Interface (vermutlich I2C bzw SPI) und den Komparator/ADC (je nach dem was in dem PIC drin ist) ausschalten. Die Serielle ist es vermutlich schon, die Analogen Bestandteile sind beim POR aber gerne schon aktiviert. Schau aber sicherheitshalber nochmal im Datenblatt nach.

_________________
Fnord ist die Quelle aller Nullbits in deinem Computer.
Fnord ist die Angst, die Erleichterung, und ist die Angst.
Fnord schläft nie.


Vorherige Seite      
Gehe zu Seite ( Vorherige Seite 1 | 2 | 3 )
Zurück zur Seite 1 im Unterforum          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 20 Beiträge im Durchschnitt pro Tag       heute wurden bisher 2 Beiträge verfasst
© x sparkkelsputz        Besucher : 182426708   Heute : 667    Gestern : 5094    Online : 214        30.11.2024    6:15
1 Besucher in den letzten 60 Sekunden        alle 60.00 Sekunden ein neuer Besucher ---- logout ----viewtopic ---- logout ----
xcvb ycvb
0.0705800056458