ATNEL tech-forum https://forum.atnel.pl/ |
|
MK_ATCAN_LIB pytanie https://forum.atnel.pl/topic22786.html |
Strona 1 z 1 |
Autor: | Jarecki [ 13 sty 2020, o 14:19 ] |
Tytuł: | MK_ATCAN_LIB pytanie |
Witam, patrzę sobie w kod biblioteki jak w temacie i zastanawia się nad jedną rzeczą. W pliku źródłowym mk_atcan.c w linii 214 następuje przypisanie zmiennej: język c Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod. Zmienna status jest elementem jedno-bajtowej unii, czy w związku z tym, potrzeba jeszcze kasować zmienne w liniach 215 i 216? język c Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod. Moim zdaniem linia 214 załatwia sprawę, jeżeli się mylę to proszę o naprowadzenie w czym rzecz, będę wdzięczny, pozdrawiam |
Autor: | mirekk36 [ 13 sty 2020, o 14:29 ] |
Tytuł: | Re: MK_ATCAN_LIB pytanie |
Jarecki napisał(a): Zmienna status jest elementem jedno-bajtowej unii, czyli odpowiada TYLKO za pierwszych 8 bitów, a później masz jeszcze kolejne całe bajty rx_count i tx_count, no i to one są kasowane oddzielnie. Nie zawsze bowiem musi być potrzeba kasowania liczników CANTEC i CANREC |
Autor: | Jarecki [ 13 sty 2020, o 14:41 ] |
Tytuł: | Re: MK_ATCAN_LIB pytanie |
mirekk36 napisał(a): Jarecki napisał(a): Zmienna status jest elementem jedno-bajtowej unii, czyli odpowiada TYLKO za pierwszych 8 bitów, a później masz jeszcze kolejne całe bajty rx_count i tx_count, no i to one są kasowane oddzielnie. Nie zawsze bowiem musi być potrzeba kasowania liczników CANTEC i CANREC Dzięki za wyjaśnienie pierwszy raz widzę taki zapis, zupełna nowość ale szczerze mówiąc nie bardzo to czuję |
Autor: | mirekk36 [ 13 sty 2020, o 14:46 ] |
Tytuł: | Re: MK_ATCAN_LIB pytanie |
Jarecki napisał(a): ale szczerze mówiąc nie bardzo to czuję No spójrz - masz w unii: 1. strukturę, która ile bajtów zajmuje ? chyba widzisz, że równo 3 bajty. a. osiem bitów na pola bitowe (jeden bajt) b. jeden bajt na rx_count c. jeden bajt na tx_count tak czy nie ? łącznie TRZY bajty ale w tej samej unii masz zmienną status - zmienna 8-bitowa. Czyli ta zmienna status zgodnie z zasadą działania UNII pokrywa tylko pierwsze 8 pól bitowych - dzięki czemu jednym ruchem można szybko wyzerować wszystkie pola bitowe język c Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod. zamiast pisać osiem oddzielnych linijek do kasowania każdego pola bitowego oddzielnie. Teraz jaśniej ? |
Autor: | Jarecki [ 13 sty 2020, o 14:51 ] |
Tytuł: | Re: MK_ATCAN_LIB pytanie |
Teraz jaśniej Tego mi brakowało: mirekk36 napisał(a): Czyli ta zmienna status zgodnie z zasadą działania UNII pokrywa tylko pierwsze 8 pól bitowych Czyli, żeby jednym ruchem skasować wszystkie pola bitowe i tx_count trzeba by użyć zmiennej status uint16_t zamiast uint8_t Dzięki za wyjaśnienie |
Autor: | mirekk36 [ 13 sty 2020, o 14:54 ] |
Tytuł: | Re: MK_ATCAN_LIB pytanie |
Jarecki napisał(a): uint16_t zamiast uint8_t to by ci starczyło tylko na skasowanie DWÓCH bajtów panie kochany ... no jak inaczej ? A przecież widzisz i pisałem że mamy TRZY bajty w strukturze to musiałbyś zrobić zmienną status typu uint32_t czterobajtową - wtedy by skasowała wszystkie trzy bajty z tej unii a jeden bajt leżałby odłogiem (ten najstarszy zmiennej status) Tyle że w wypadku tej biblioteki - jak wspominałem nie jest dobrym pomysłem kasowanie tych dwóch pozostałych bajtów, dlatego to zostało tak zorganizowane jak jest. No ale mam nadzieję, że dzięki temu już wiesz w czym rzecz i przyda ci się to później w pisaniu swoich kodów |
Autor: | Jarecki [ 14 sty 2020, o 07:28 ] |
Tytuł: | Re: MK_ATCAN_LIB pytanie |
mirekk36 napisał(a): to by ci starczyło tylko na skasowanie DWÓCH bajtów panie kochany ... no jak inaczej ? A przecież widzisz i pisałem że mamy TRZY bajty w strukturze dlatego napisałem Jarecki napisał(a): Czyli, żeby jednym ruchem skasować wszystkie pola bitowe i tx_count trzeba by użyć zmiennej status uint16_t zamiast uint8_t czyli dwa bajty a chcąc skasować jeszcze rx_count wtedy trzeba by użyć trzech bajtów ------------------------ [ Dodano po: kilkunastu sekundach ] mirekk36 napisał(a): No ale mam nadzieję, że dzięki temu już wiesz w czym rzecz i przyda ci się to później w pisaniu swoich kodów Na pewno się przyda, dzięki Mirku |
Autor: | tonygryps [ 14 sty 2020, o 12:16 ] |
Tytuł: | Re: MK_ATCAN_LIB pytanie |
A czy już zaczęły się wysyłki bibliotek z can? |
Autor: | mirekk36 [ 14 sty 2020, o 12:45 ] |
Tytuł: | Re: MK_ATCAN_LIB pytanie |
już wyszły do wszystkich z PP teoretycznie. Jeszcze nie wyszły do ludzi którzy zakupili to w sklepie ale na dniach też wyjdą |
Autor: | tonygryps [ 14 sty 2020, o 12:58 ] |
Tytuł: | Re: MK_ATCAN_LIB pytanie |
no to muszę się odezwać do Pani Anety w tej sprawie. już nie aktualne, przejrzałem skrzynkę pocztową i była w spamie .przepraszam za kłopot. |
Autor: | mirekk36 [ 14 sty 2020, o 12:59 ] |
Tytuł: | Re: MK_ATCAN_LIB pytanie |
tonygryps napisał(a): no to muszę się odezwać do Pani Anety w tej sprawie. Napisz do mnie na biuro@atnel.pl i podaj maila z jakiego logowałeś się na PP |
Strona 1 z 1 | Strefa czasowa: UTC + 1 |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |