Witam,
połączyłem ze sobą Atmegę644PA(Master) oraz Atmegę128L(Slave). Obsługuje je sprzętowym SPI.
Master F_CPU = 8 MHz
Slave F_CPU = 8 MHz
Master ma wysyłać do Slave cyfry od 0 do 255. W efekcie dostaję:
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
8 // Tu się zaczynają kwiatki
137
9
138
10
139
11
140
12
141
13
142
14
143
15
144
16
145
17
146
18
Wychodzi mi że wartości są przesunięte o bit. A raczej na końcu dodany jest bit.
Jak prawidłowo zsynchronizować połączenie?
Dodam że jak połączę ze sobą dwie Atmegi644PA, z dowolnym ustawieniem prędkości CLK, to nie ma takich problemów. Wszystko działa prawidłowo.
Master:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Slave:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.