Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 1 kwi 2026, o 03:59


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 
Autor Wiadomość
PostNapisane: 14 lis 2014, o 10:44 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 20 sie 2013
Posty: 795
Lokalizacja: Poznań
Pomógł: 59

Mam problem z maskowaniem bitowym. Otóż kod działa tak, że sygnał clk SPI generuje przerwanie i na PB1 pojawia się impuls, gdy na data jest "1".
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Obrazek

Jednak, gdy chcę przepisać data do zmiennej i po wyzerowaniu maski podać impuls na PB1 - nie wychodzi - przebieg identyczny jak wyżej.
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



Co robię źle?



Ostatnio edytowano 14 lis 2014, o 12:33 przez icer_cmg, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2014, o 13:22 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 20 sie 2013
Posty: 795
Lokalizacja: Poznań
Pomógł: 59

Więc poczyniłem małe zmiany i nadal głupi jestem.

Kod 1:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Przebieg:
Obrazek


Kod 2:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Przebieg:
Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2014, o 13:46 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 20 sie 2013
Posty: 795
Lokalizacja: Poznań
Pomógł: 59

Nawet taki kod:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Nie działa pomimo 4 sekund zbierania przerwania - masakra. Chodzi mi o to, by maska przesuwała się z tyknięciami przerwnia, a gdy "1" wyjdzie poza maskę to tyknie impuls na PB1.

------------------------ [ Dodano po: 19 minutach ]

Więc problem okazał się ciekawy: otóż było tak, że zainicjowałem timer, wrzuciłem sei(); i dopiero potem inicjowałem przerwanie - masakra w jego działaniu.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2014, o 14:55 
Offline
Użytkownik

Dołączył(a): 01 paź 2013
Posty: 305
Lokalizacja: Olsztyn
Zbananowany użytkownik

Pomógł: 20

Witam
Pozwolę się zapytać po co kasujesz tę flage, zgodnie z tym co kolega wyżej napisał ona sama się kasuje pozakończeniu procedury przerwania( tak jest napisane w datasheecie) ?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 15 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO