spess53 schrieb:
> Hi
>
>> PORTB = PORTB & 0xfe;
>> .....
>> PORTB = (1<<PB2);
>
> Was soll das bezwecken?
Ich schätze mal, der Hinweis war etwas zu subtil.
0xFE ist NICHT der Pin PB2. (SS der SPI)
SChreibs halt so
PORTB &= ~( 1 << PB2 );
dann passiert dir so ein Scheiss nicht. Immer diese unangebrachten
brachial Binär und Hex Schreibweisen. Man handelt sich damit mehr Fehler
ein als einem lieb ist.
Und wenn du es so machst
1 | #define MASTER_SS PB2
|
2 |
|
3 | ...
|
4 | PORTB &= ~( 1 << MASTER_SS );
|
5 | ...
|
6 | PORTB |= (1 << MASTER_SS );
|
7 | ...
|
dann kann es dir nicht mal mehr passieren, dass du im 0-Setzen und
1-Setzen der SS-Leitung verschiedene Pins erwischt. Plus: man kann dann
sogar im Code sehen und ablesen, dass es um die SS Leitung geht.