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



Teraz jest 20 kwi 2024, o 11:19


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 13 ] 
Autor Wiadomość
PostNapisane: 19 lut 2018, o 13:22 
Offline
Użytkownik

Dołączył(a): 19 paź 2014
Posty: 357
Lokalizacja: stolyca pyrlandii :)
Pomógł: 18

Cześć.
Próbuje się bawić w przerobienie bibliotek Misio(-wych) do czystego C dla expandera MCP23017.
O ile temat zorganizowania wyjść na Porcie A i B, nie należał do najtrudniejszych, o tyle już z wejściami mam problem...

I tu moje pytanie, macie może koleżanki i koledzy jakieś materiały na temat porównania kodu Arduino i czystego C ??
Chodzi mi o to aby było pokazane na przykładach jak przenieść kod z jednego do drugiego (czyli z Arduino do C).



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 lut 2018, o 13:57 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27224
Lokalizacja: Szczecin
Pomógł: 1041

Ale to przeckez prosty expander i2c ... po co przerabiac cos z andruino ... az zachodze w glowe ... przeciez masz Bluebooka ;) ... nie powiesz mi ze nie bawiles sie jeszcze i2c/twi ... toz komunikacje robi sie hmmm identycznie? ;)

Masz dwie fajne funkcje w BB ... twi_read_buf i twi_write_buf .... to wszystko co ci potrzeba ;)

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 lut 2018, o 14:34 
Offline
Użytkownik

Dołączył(a): 19 paź 2014
Posty: 357
Lokalizacja: stolyca pyrlandii :)
Pomógł: 18

No właśnie do I2C podchodziłem dotychczas jak pies do jeża...
Jedyne moje spotkania z I2C były Mirku za pośrednictwem Twoich poradników i przyznaje się szczerze że ani na krok nosa nie wychyliłem.
Samemu dotychczas nic nie grzebałem i stąd ta pomroczność...



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 lut 2018, o 15:06 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27224
Lokalizacja: Szczecin
Pomógł: 1041

karolen napisał(a):
i stąd ta pomroczność...

:lol: .... no no - ale mocna pomroczność bo żeby aż TAK okrężną drogą ? Przez andruino ? ;)

Raz dwa - dawaj pan do Bluebooka - a jak będziesz miał problem to wtedy daj znać - chociaż myślę, że lekcja z BB o TWI spowoduje że ruszysz od razu i aż się przestraszysz jakie to było proste

i pamiętaj tą metodą gadać będziesz praktycznie z każdym scalakiem i2c ;)

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 lut 2018, o 16:41 
Offline
Użytkownik

Dołączył(a): 19 paź 2014
Posty: 357
Lokalizacja: stolyca pyrlandii :)
Pomógł: 18

mirekk36 napisał(a):
żeby aż TAK okrężną drogą ? Przez andruino ? ;)


Uprasza sie o nie spożywanie żadnych posiłków ani napojów, podczas czytania.
Wszystko się wzięło, z tego że mi zawsze najlepiej i najłatwiej było się uczyć działając praktycznie.
Dlatego nie mógłbym być lekarzem a tym bardziej chirurgiem - bo pacjenta, to bym od razu brał pod skalpel a dopiero po zabiegu bym robił wywiad środowiskowy :P

Jakąś tam biblioteke do tego ekspandera do arduino znalazłem, lepszą czy gorszą, ale działającą.
Idąc trochę zmodyfikowaną metodologią z poznańskich warsztatów Yellowbook, odpalałem na arduino różne przykłady mając podpięty analizator stanów logicznych i spisywałem sobie jak latają komendy.

Mając spisane kilka komend chciałem to przenieść do C, no ale wyszło jak wyszło.

Teraz po raz, któryś czytam rozdział o TWI - mam nadzięję że tą razą będzie owocnie...



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 lut 2018, o 20:39 
Offline
Użytkownik

Dołączył(a): 19 paź 2014
Posty: 357
Lokalizacja: stolyca pyrlandii :)
Pomógł: 18

Tak siedzę i myślę i wymyślić nie mogę, co autor scalaka miał na myśli tworząc tabele 1-2 (Adresy rejestrów).
Jest tam jakiś parametr "IOCON.BANK" który przyjmuje wartość 0 lub 1.
Odnoszę wrażenie, że jest to wykorzystywane przy interfejsie SPI, ale pewności nie mam.

Następnie są tabele 1-3 do 1-6 i znowu pojawia się tajemniczy (dla mnie) parametr IOCON.BANK, i jak dla mnie robi się meksyk z adresacją rejetrów.
Czego się trzymać aby nie "wycedzić jak dzik w sosnę".

Na chwilę obecną temat adresacji jest dla mnie problemem. Mając to zrobione powinno iść już łatwiej.

Chyba udało mi się ustawić PortA jako wejścia z podciąganiem do VCC.
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Po "zrobieniu" tego kawałka kodu wnoszę, że muszę się trzymać tabel z IOCON.BANK = 0

Dobrze myślę ??



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 lut 2018, o 21:07 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 04 cze 2014
Posty: 855
Lokalizacja: pod Warszawą
Pomógł: 58

cześć Karol
Adres ustawiasz za pomocą pinów A0,A1,A2
Tu masz tabelę
Obrazek
pozdrawiam

_________________
Pomóżcie mi stanąć na nogi



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 lut 2018, o 21:25 
Offline
Użytkownik

Dołączył(a): 19 paź 2014
Posty: 357
Lokalizacja: stolyca pyrlandii :)
Pomógł: 18

Tak, adresy ustawia się poprzez ustawienie pinów A0-A2. Ale nie mogę się połapać o co biega z tym "IOCON.BANK" gdzie się to ustawia i co daje ta zmiana.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 lut 2018, o 21:50 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27224
Lokalizacja: Szczecin
Pomógł: 1041

karolen napisał(a):
Tak siedzę i myślę i wymyślić nie mogę, co autor scalaka miał na myśli tworząc tabele 1-2 (Adresy rejestrów).
Jest tam jakiś parametr "IOCON.BANK" który przyjmuje wartość 0 lub 1.

To jest niestety TYPOWE i MEGA KOCIE podejście Majkroczipa hahaha tak samo jak w swoich prockach czy innych układach - oni zawsze widzą wszystko przez te banki ... mnie np kiedyś odrzuciło od programowania PICów w asemblerze przez te banki ;)

karolen napisał(a):
Odnoszę wrażenie, że jest to wykorzystywane przy interfejsie SPI, ale pewności nie mam.

Nie ma to NIC a NIC wspólnego z SPI ;) ... mówię ci, że to ich głupie podejście ... ale na szczęście i O DZIWO w tym scalaku przewidzieli dwa rodzaje adresowania - ciągłe i to rozdzielone na banki - więc można jak mówię scalaka używać w trybie ciągłej adresacji no ale ...

ale trzeba jeszcze zrozumieć ich sposób pisania not PDF ... bo jak wiadomo każdy inżynier majkroczipowy - widzi świat poprzez BANKI :lol: ... więc też jak się czyta notę PDF do tego scalaka - a czyta ją zwykły człowiek - przyzwyczajony do porządnych not - to przyznaję można dostać kociokwiku w głowie , pomieszania rozumów itp ... no ale jakoś da radę ...

karolen napisał(a):
Chyba udało mi się ustawić PortA jako wejścia z podciąganiem do VCC.

Panie kochany - dlaczego nie używasz że funkcji

TWI_write_buf() i TWI_read_buf() tylko robisz to na MEGA PIECHOTĘ rypiąc w kodzie te starty, stopy ... toż to masakra - za chwilę się zarypiesz na śmierć jak będziesz miał wykonać więcej operacji z takim scalakiem - pomyśl to co teraz napisałeś to tak jakbyś pisał program LINIOWO kompletnie liniowo

czemu nie napiszesz tego tak:

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


widzisz to? .... jedna linijka i możesz ustawić sobie wszystkie parametry scalaka za jednym zamachem

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 lut 2018, o 22:53 
Offline
Użytkownik

Dołączył(a): 19 paź 2014
Posty: 357
Lokalizacja: stolyca pyrlandii :)
Pomógł: 18

Takie tylko szybkie pytanie.
IC15_ADDR to adres scalaka na magistrali I2C ?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 lut 2018, o 23:44 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27224
Lokalizacja: Szczecin
Pomógł: 1041

karolen napisał(a):
Takie tylko szybkie pytanie.
IC15_ADDR to adres scalaka na magistrali I2C ?


edytowałem post - MCP23017_ADDR to adres z tym IC15 to pomyłka przy kopiowaniu

------------------------ [ Dodano po: 1 minucie ]

oczywiście to jest jakaś tam przykładowa konfiguracja scalaka na jakieś tam potrzeby - i nie znaczy że ty masz tak zrobić - raczej chodzi mi o to abyś w końcu zobaczył co to znaczy

TWI_write_buf() ;) .... bo mnie żółty szlaczek trafia jak widzę gdy ludzie po Bluebooku piszą od nowa liniowo te wszystkie twi starty, stopy i linijka po linijce cyk cyk cyk ;)

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 20 lut 2018, o 00:45 
Offline
Użytkownik

Dołączył(a): 19 paź 2014
Posty: 357
Lokalizacja: stolyca pyrlandii :)
Pomógł: 18

Te moje "start, stopy" to było tylko chwilowe raczkowanie przy I2C. Od teraz na pewno będe używał TWI_()_buf () bo faktycznie są one dużo wygodniejsze :)
A co do inżynierów Mikroczipa -może to po prostu kasta banksterów i dlatego wszedzie gdzie się da to wciskają "banki".



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 20 lut 2018, o 00:51 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27224
Lokalizacja: Szczecin
Pomógł: 1041

karolen napisał(a):
A co do inżynierów Mikroczipa -może to po prostu kasta banksterów i dlatego wszedzie gdzie się da to wciskają "banki".

Oczywiście ja to troszkę tak (jak to zwykle ja) pół żartem pół serio pisałem ... Majkroczip dzięki temu że wprowadził podział na banki w swoich prockach mógł drastycznie zmniejszyć ilość instrukcji asm i są pewne pozytywne strony ... ale ok to temat na całkiem inną dyskusję ... nie mniej jednak do mnie to zawsze jednak jakoś ciężko docierało ;) a widzę że nie tylko do mnie

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



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: 13 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

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


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