Hallo, ich benutze Bascom AVR Demo mit einem 8535. so nun hab ich mal ne Frage: Ich habe 3 Led`s an Portc.5 - c.7. erst habe ich die Led's mittels Constante also &B00011111 eingeschaltet. Programmausschnitt: Const Ledson = &B00011111 Config Portc = Output portc = ledson end spaeter hab ich es lieber mit folgenden zeilen gemacht.... Config Pinc.5 = Output Reset Portc.5 usw. dann kam ich auf idee es wie folgt zu machen: Config Pinc.5 As Output Pinc.5 = 1 usw. Welcher Weg ist der richtige? Wegen einem Firmenprojekts wollte ich gerne ein µC nehmen.... Ich sollte 4 ADC Spannungen messen + 4 Leiterbahnen testen auf Durchgang und auf Kurzschluss an den Connectoren. Ich hab es wie folgt geloest. Auschnitt aus dem Prg. : Const Test1 = &B10101010 'Testmuster1 Const Test2 = &B01010101 'Testmuster2 Const Maske = &B00001111 'Maske fuer ungewollte Eingaenge Config Portc = Input 'Eingaenge Leitungstester Config Portb = Output portc = 255 C = Test1 And Maske 'erstes Testmuster generieren Portb = c 'Testmuster auf Ausgang geben D = Pinc And Maske 'Eingaenge lesen und ungewollte Eingaenge ingnorieren If D = C Then Ok = 1 dann das gleiche mit dem zweiten Testmuster.... Ich habe die Maske erstellt da ich nur 4 I/O`s benutze. Es funktionierte auch alles wunderbar! soweit so gut.... nun wollte ich mit Portc.4 ein Stabi der ein CTL Eingang hat ansteuern ( braucht 5 V TTL Impuls zum starten). Da ich aber den Port auf Input gestellt hatte bzw. ueber die Testmaske zunichte gemacht hatte konnte ich den nicht nutzen.... So nun zu meiner Frage. Wuerde es nicht viel leichter gehen wenn ich es wie folgt mache: Config Pinb.0 As output Pinb.0 = 0 config pinb.1 as output pinb.1 = 1 config pinb.2 as output pinb.2 = 0 config pinb.3 as output pinb.3 = 1 config pinc.0 as input config pinc.1 as input config pinc.2 as input config pinc.3 as input Nun sollte ich den Input Port auf 255 legen, damit die internen Pullups geschaltet sind und das Bitmuster stabil bleibt. Portc = 255 So nun zu meinen vielen Fragen.... wie lese ich das bitmuster was von Pinb.0 - Pinb.3 kommt auf Pinc.0 -c.3 ein? wenn ich den Portc = 255 setze kann ich den Pinc.4 noch zur Erzeugung des 5V Impulses nutzen? Sry ich bin blutiger Anfaenger und ich hatte grosse Hilfe beim eigentlichen Programm was funktioniert und kapier auch noch nicht 100 % alles .... Um meine Fragestellung zuvereinfachen ich wollte nur 4 I/O`s verschwenden .... aber dank Testmuster Constante und Maske benutze ich die vollen 8 I/O's die ich gerne fuer was anderes benutzen wollte ohne staendig hin und her zuschalten.... Ich hoffe ihr habt kapiert was ich will und koennt mir nen bissel helfen.... Danke.... nochmal danke an lieben Mitmenschen der mich wenigstens schon soweit gebracht hat.
Wenn es nur um 3 LEDs geht und nicht der ganze Port auf einmal geändert werden muss, dann ist die Methode Config Pinc.5 = Output Portc.5 = 0 wohl am besten. Wobei du die Richtungseinstellung des Ports natürlich nicht jedes Mal neu machen musst.
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.