Hallo, brauche dringend Hilfe. Muss ein Programm schreiben mit MPLAB, meine Aufgabe ist; mit zwei Taster (up und down) Auf und Abwärts-Zählen erstmal mit acht LED´s, ich benutze den PIC16F887. Tasten sollen bei kurzem Tastendruck ein Schritt und bei längerem Tastendruck schnell hoch Zählen. Bin noch Neuling darin und weiß nicht wie ich anfangen soll. Danke schon mal für jede Hilfe.
:
Verschoben durch Admin
sprut.de ist mir bekannt und hat mir leider nicht weiter geholfen. Die 35 Befehle für MPLAB weiß ich.
- Erstelle die Configuration des Pic (Config1, COnfig2,...) in der Main: - Initialisere deine SFRs - ANSELX, TRISX, LATX (oder PORTX), OPTION_REG, INTCON - Wenn du mit Timer arbeiten willst: TMR0 in der Main_Loop: Für den Anfang reicht es wenn dein Programm irgendwas tut: wenn du die "Up" Taste drückst, soll LED1 leuchten, sonst nicht wenn du die "Down" Taste drückst, soll LED2 leuchten, sonst nicht Bsp:
1 | #define UP_TASTER 0b00000001 // BIT0 von PORTX
|
2 | |
3 | #define DWN_TASTER 0b00000010 // BIT1 von PORTX
|
4 | |
5 | #define LED1 0b01000000 // BIT6 von LEDPORTX
|
6 | |
7 | #define LED2 0b10000000 // BIT7 von LEDPORTX
|
8 | |
9 | if((PORTX & UP_TASTER) == TRUE) |
10 | {
|
11 | LEDPORTX = LEDPORTX | LED1; // set LED |
12 | }
|
13 | else
|
14 | {
|
15 | LEDPORTX = LEDPORTX & (~LED1); // Clr LED |
16 | }
|
17 | |
18 | //Das gleiche bei DWN_Taster
|
19 | // wenn es funktioniert kannst dann erweitern mit Tasterentprellung und Zähler
|
Oder machst du es in Assembler?
Ja, ich mach es in Assembler. Das enprellen der Tasten muss ich auch noch lösen. Danke schon mal für eure Info´s
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.