Also ich habe ein kleines Problem ich habe mir eine kleine Schaltung mit
einem atmega8 und einem Schieberegister aufgebaut (wie im AVR-Tutorial
beschrieben) und an alle Ausgänge jeweils eine LED gehängt
nun wollte ich das ganze nur um das System zu verstehen wie folgt
ansteuern:
1 | #include <avr/io.h>
|
2 |
|
3 | #define SER 0
|
4 | #define SCK 1
|
5 | #define SCL 2
|
6 | #define RCK 3
|
7 |
|
8 | int main(void)
|
9 | {
|
10 | DDRB = 0xff;
|
11 |
|
12 |
|
13 | PORTB |= (1 << SER);
|
14 | PORTB |= (1 << SCK);
|
15 | PORTB &= ~(1 << SCK);
|
16 |
|
17 | PORTB &= ~(1 << SER);
|
18 | PORTB |= (1 << SCK);
|
19 | PORTB &= ~(1 << SCK);
|
20 |
|
21 | PORTB |= (1 << SER);
|
22 | PORTB |= (1 << SCK);
|
23 | PORTB &= ~(1 << SCK);
|
24 |
|
25 | PORTB &= ~(1 << SER);
|
26 | PORTB |= (1 << SCK);
|
27 | PORTB &= ~(1 << SCK);
|
28 |
|
29 | PORTB |= (1 << SER);
|
30 | PORTB |= (1 << SCK);
|
31 | PORTB &= ~(1 << SCK);
|
32 |
|
33 | PORTB &= ~(1 << SER);
|
34 | PORTB |= (1 << SCK);
|
35 | PORTB &= ~(1 << SCK);
|
36 |
|
37 | PORTB |= (1 << SER);
|
38 | PORTB |= (1 << SCK);
|
39 | PORTB &= ~(1 << SCK);
|
40 |
|
41 | PORTB &= ~(1 << SER);
|
42 | PORTB |= (1 << SCK);
|
43 | PORTB &= ~(1 << SCK);
|
44 |
|
45 | PORTB |= (1 << RCK);
|
46 | PORTB &= ~(1 << RCK);
|
47 |
|
48 | while(1)
|
49 | {
|
50 | PORTB |= (1 << 5);
|
51 | }
|
52 | }
|
das
habe ich zu testzwecken eingebaut
die LED geht dort auch an also wird das Programm wohl durchlaufen...
jedoch tut sich bei den am Schieberegister angeschlossenen LEDs
garnichts... woran kann das liegen?
Danke im Voraus,
Tamme