ATNEL tech-forum https://forum.atnel.pl/ |
|
HC-SR04 for Atmega 2560 https://forum.atnel.pl/topic23557.html |
Strona 1 z 1 |
Autor: | BoykaP [ 21 sty 2021, o 19:08 ] |
Tytuł: | HC-SR04 for Atmega 2560 |
Witam serdecznie. Jestem zielony w dziedzienie AVR lecz od jakiegoś czasu staram się coś tworzyć. Potrzebuję pomocy w modernizacji kodu pana Mirka. Ogólne założenia: - Atmega 2560 8 MHz - HC-SR04 - LCD 2x16 Posiadam bibliotekę dla HC-SR04 myślę że problem leży w źle ustawionych Tiemrach. Moje wszelkie próby zakończyły się klęską. Przeszukiwałem forum forum próbowałem lecz mam problem z ustawianiem timerów. Proszę o pomoc, miejsca w których myślę że jest problem. |
Autor: | wonsz [ 21 sty 2021, o 21:05 ] |
Tytuł: | Re: HC-SR04 for Atmega 2560 |
To jeszcze może nam powiedz jaki efekt chcesz uzyskać |
Autor: | mario2015 [ 21 sty 2021, o 22:14 ] |
Tytuł: | Re: HC-SR04 for Atmega 2560 |
Nie jestem pewien ale 3 razy "przekopałem" datascheet dla ATmegi2560 i nie znalazłem tam rejestru TIMSK. O co mi chodzi? Konfigurujesz Timer1. Zbocze i preskaler ustawiłeś dobrze natomiast zezwolenie na przerwania wg. noty powinno być język c Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod. U ciebie w linii 5 jest inaczej. Nie wiem albo to jest źle wg mnie albo ja mam złą dokumentację tej ATmegi. W mojej dokumentacji nie ma rejestru TIMSK, ponieważ rejestry te są numerowane np: TIMSK2 itp. Oprócz tego w tym rejestrze nie znalazłem bitu o nazwie TICIE1. Jeżeli moja dokumentacja dla tej ATmegi jest niekompletna i się mylę, to nie krzyczcie na mnie, że się nie znam i tę odpowiedź potraktujcie tak jakby jej nigdy nie było. No chyba, że coś przegapiłem w tej dokumentacji i to moja wina, no to sorry. Człowiek stary to i ślepy no ale cóż. Dokumentacja, z której korzystałem jest w załączniku. |
Autor: | BoykaP [ 23 sty 2021, o 08:40 ] |
Tytuł: | Re: HC-SR04 for Atmega 2560 |
Aktualnie kod wygląda tak język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Program nie wykonuje tego co znajduje się w if w pętli while. Domyślam się że nadal posiada problem z timerem 4. Widzi ktoś może jakiś błąd przez który program nie wykonuje się tak jak bym chciał ? |
Autor: | mario2015 [ 23 sty 2021, o 15:50 ] |
Tytuł: | Re: HC-SR04 for Atmega 2560 |
Spójrz na linie od 53 do 55 twojego kodu. Konfigurujesz rejestr TCCR1B czyli zbocze i prescaler od TIMER1 a później chcesz odblokować przerwania od Timera czwartego czyli : |
Autor: | BoykaP [ 25 sty 2021, o 11:42 ] |
Tytuł: | Re: HC-SR04 for Atmega 2560 |
Zmodyfikowałem kod. Wygląda aktualnie tak. język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Wykonuje się już kod w pęli while lecz bez prawidłowego pomiaru. Wydaje mi się że timery są już ustawione prawidłowo. Sprawdziłem datasheet kilka razy. pomiar to 000020/000021 us. |
Autor: | BoykaP [ 26 sty 2021, o 12:48 ] |
Tytuł: | Re: HC-SR04 for Atmega 2560 |
Poprawiłem błąd w " ISR(TIMER4_CAPT_vect) " z ICIE4 na ICES4 ale problem jest nadal. |
Autor: | BoykaP [ 28 sty 2021, o 11:22 ] |
Tytuł: | Re: HC-SR04 for Atmega 2560 |
Temat zamknięty. Problem leżał w połączeniu zapomniałem że płytka przewodzi tylko do połowy linię zasilającą. Dziękuje za pomoc pomogło mi to lepiej zrozumieć timery. Gdyby ktoś chciał gotowy kod. |
Strona 1 z 1 | Strefa czasowa: UTC + 1 |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |