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



Teraz jest 30 sty 2026, o 00:40


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 7 ] 
Autor Wiadomość
PostNapisane: 18 gru 2016, o 12:36 
Offline
Użytkownik

Dołączył(a): 28 mar 2015
Posty: 79
Pomógł: 0

Witam
Czy istnieje możliwość ominięcia _delay_ms w bibliotece HD44780 ? Jeśli używa się pisania czegoś na wyświetlaczu kilka razy w pętli głównej to realizuje ona się dość wolno. Z tego co widziałem to trzeba czekać przy czyszczeniu wyświetlacza te 4.9ms ale mimo że nie słyszałem o czekaniu przy wypisywaniu danych to wszędzie są delaye.
Ktoś coś podpowie?
Pozdrawiam



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 gru 2016, o 13:23 
Offline
Użytkownik

Dołączył(a): 24 sty 2012
Posty: 1469
Pomógł: 56

Oczywiście, że można ominąć _delay...
Zastosuj timer programowy

_________________
Jestem początkujący i moje porady mogą być błędne



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 gru 2016, o 13:33 
Offline
Moderator
Avatar użytkownika

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

heterodyn napisał(a):
widziałem to trzeba czekać przy czyszczeniu wyświetlacza te 4.9ms

to pewnie patrzyłeś na jakieś kocie biblioteki ... albo .... albo nie używasz pinu RW wyświetlacza podłączonego do uC i wtedy panie - to możesz wiesz ;) stawać na głowie a i tak MUSISZ czekać przy najdłuższej operacji CLS

Pomijam już fakt, że widzę że masz Bluebooka, a w nim masz ładnie opisaną i dobrą bibliotekę do LCD, która nie używa ANI JEDNEGO DELAJA_MSa .... przy wykorzystaniu pinu RW do procka, więc nie powinieneś mieć z tym problemów ... to jeśli jednak upierasz się żeby mieć koci pin RW podłączony do GND do proszę doczytaj w książce jak to działa i dlaczego wtedy musi być ten _delay_ms() ... bo jest to opisane - jest spory rozdział o LCD w Bluebooku

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

MirkoT napisał(a):
Oczywiście, że można ominąć _delay...
Zastosuj timer programowy

Pewnie kolega myślał o kodzie w main() wtedy wiadomo że timery programowe ... ale przecież autorowi chodzi o kod biblioteki a tam dokładanie timera programowego do celów CLS byłoby niestety kompletnie bez sensu ...

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

aha na koniec autorowi powiem, że program do obsługi LCD można napisać tak, żeby nie zastosować ANI JEDNEGO polecenia lcd_cls() w kodzie ;) ... ba! nawet warto tak pisać kod do LCD

_________________
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: 18 gru 2016, o 13:37 
Offline
Użytkownik

Dołączył(a): 28 mar 2015
Posty: 79
Pomógł: 0

No tak, racja. Przypadek o którym mówię używa też ADC i z powodu wolnej pętli jest ograniczona ilość wyników do uśrednienia dlatego myślałem nad wyrzuceniem pomiaru i uśredniania do przerwania wykonującego się co 1ms.
Mirku, fakt że kocie. RW do masy. Czytałem BB ale nie wgłębiałem się aż tak w LCD. Mnie osobiście ciężko czyta się kod z ogromną ilością makr. Cóż każdy ma swój fetysz.
Troszkę dziwi mnie że w tych czasach w cyfrówce trzeba czekać taką wieczność jaką jest 10ms czy nawet 4.9ms...



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 gru 2016, o 13:54 
Offline
Moderator
Avatar użytkownika

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

heterodyn napisał(a):
Czytałem BB ale nie wgłębiałem się aż tak w LCD. Mnie osobiście ciężko czyta się kod z ogromną ilością makr.


hmm wiesz gdybym ja w książce tzn w ramach pisania książki tego rozdziału napisał TYLKO SAM KOD z dużą ilością makr to ok - mógłbym zrozumieć te zdania ... ale pisanie, że nie wgłębiałeś się czyli nawet nie zaglądałeś do tekstu i piszesz takie rzeczy to już dziwna sprawa... ale cóż ;) nikt cię nie zmusza ani nie nakazuje czytania .... każdy robi jak chce ....

wychodzi natomiast to co ZAWSZE piszę, jeśli ktoś używa kodów z książki bez jej przeczytania - owszem można jak widać, ale wtedy zwykle kompletnie nie rozumie jak coś działa i nie wie nawet tak podstawowej rzeczy jak się UŻYWA takiej biblioteki - jak się ją konfiguruje - no to już zaczyna być nie obraź się nonsensem

A szczególnie to:
heterodyn napisał(a):
Cóż każdy ma swój fetysz.


Jakby chęć poznania czegoś nowego była fetyszem ;) ....

więc nie ma co się dziwić, że w dalszej części wypowiadasz już w ogóle i też proszę się nie obraź TAK BEZSENSOWNE ZDANIE

heterodyn napisał(a):
Troszkę dziwi mnie że w tych czasach w cyfrówce trzeba czekać taką wieczność jaką jest 10ms czy nawet 4.9ms...

Bo ono pokazuje już twoją kompletną ignorancję w zakresie poznania chociaż PODSTAW narzędzia którego używasz. To jest mniej więcej tak jakbyś wziął pan młotek i przybijając gwoździe przywalił sobie w palec i miał pretensje do świata i autora młotka - że w tych czasach krzywdę ci młotek zrobił :lol: ... no taka jest prawda

Żeby nie być gołosłownym i pokazać ci dobitnie o czym piszę i dlaczego wyżej mówię o twojej ignorancji tematu LCD oczywiście, żebyś mnie źle nie zrozumiał zaraz - że ja tobie jakieś przytyki robię. Więc nie chciało ci się zajrzeć jak nie do książki to chociażby do netu - kurczę - żeby dowiedzieć się JAK DRASTYCZNIE STARYM - tak tak panie kochany - DRASTYCZNIE STARYM jest standard hd44780 ;) prawie niczym młotek :lol: .... i to twórcy tego standardu postanowili o takim czasie oczekiwania gdy nie korzystasz z pinu RW podłączonego do procka - ty zaś piszesz (przepraszam bzdurki) jakby to wynikało z jakiegoś podejścia języka C ? czy jak ;) no zupełny nonsens

tym bardziej gdy MASZ jednak możliwość podłączenia pinu RW do procka i pozbycie się JEDNYM CHLAŚNIĘCIEM tych delayów

co więcej masz w książce powtórzę to jak mantrę - opisane dlaczego tak a nie inaczej - a ty mi tu o fetyszach ;)

Na koniec powiem jedno ... bo właśnie traktujesz książkę tak jak niektórzy czytelnicy - choć na szczęście to rzadkie przypadki .... którzy sobie myślą - że ja nakłaniam kogoś w niej na siłę do napisania własnej biblioteki do LCD a po co to robić ? jak oni często myślą i wyważać głową drzwi żeby od nowa się męczyć i tzw koło wymyślać ...

nie nie panie kochany - ja w Bluebooku ale i w Greenbooku jak opisuję tworzenie rozmaitych bibliotek to przyświeca mi ważny CEL jako autorowi wręcz NAJWAŻNIEJSZY - którym jest pokazanie niejako przy okazji poznawania różnych peryferiów i podejścia do nich w języku C od strony mikrokontrolera - więc chcę tu przemycić i opowiedzieć i pokazać na ciekawych moim zdaniem, ale nie tylko moim zdaniem ale setek czytelników, pewne techniki programowania w języku C ... i ty to świadomie pomijasz .... a później piszesz (przepraszam po raz kolejny takie bzdurki o fetyszach, makrach i że w tych czasach w cyfrówce trzeba czekać 4,9ms)

_________________
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: 18 gru 2016, o 14:13 
Offline
Użytkownik

Dołączył(a): 28 mar 2015
Posty: 79
Pomógł: 0

mirekk36 napisał(a):
hmm wiesz gdybym ja w książce tzn w ramach pisania książki tego rozdziału napisał TYLKO SAM KOD z dużą ilością makr to ok - mógłbym zrozumieć te zdania ... ale pisanie, że nie wgłębiałeś się czyli nawet nie zaglądałeś do tekstu i piszesz takie rzeczy to już dziwna sprawa... ale cóż ;) nikt cię nie zmusza ani nie nakazuje czytania .... każdy robi jak chce ....

Wiem ,że część osób wcale nie czyta. Z makrami chodziło mi o to że jeśli powołasz jedno makro i użyjesz je w innym a to w jeszcze innym to robi się takie "drzewko" makr. Dla Ciebie napewno jest to przyjemne dla mnie nie koniecznie bo każdy dał by inną nazwę tu inną tam w zależności od skojarzeń. Nigdzie nie sugeruję abyś coś źle robił ale taki kod ciężko się analizuje, co nie oznacza że się nie da :)
mirekk36 napisał(a):
Żeby nie być gołosłownym i pokazać ci dobitnie o czym piszę i dlaczego wyżej mówię o twojej ignorancji tematu LCD oczywiście, żebyś mnie źle nie zrozumiał zaraz - że ja tobie jakieś przytyki robię. Więc nie chciało ci się zajrzeć jak nie do książki to chociażby do netu - kurczę - żeby dowiedzieć się JAK DRASTYCZNIE STARYM - tak tak panie kochany - DRASTYCZNIE STARYM jest standard hd44780 ;) prawie niczym młotek :lol: .... i to twórcy tego standardu postanowili o takim czasie oczekiwania gdy nie korzystasz z pinu RW podłączonego do procka - ty zaś piszesz (przepraszam bzdurki) jakby to wynikało z jakiegoś podejścia języka C ? czy jak ;) no zupełny nonsens

Fakt, nie zaglądałem. Nie miałem na myśli żeby język C miał tu coś do tego.
mirekk36 napisał(a):
nie nie panie kochany - ja w Bluebooku ale i w Greenbooku jak opisuję tworzenie rozmaitych bibliotek to przyświeca mi ważny CEL jako autorowi wręcz NAJWAŻNIEJSZY - którym jest pokazanie niejako przy okazji poznawania różnych peryferiów i podejścia do nich w języku C od strony mikrokontrolera - więc chcę tu przemycić i opowiedzieć i pokazać na ciekawych moim zdaniem, ale nie tylko moim zdaniem ale setek czytelników, pewne techniki programowania w języku C

fakt. nawet zdaniem niektórych twoje "przydługie" filmiki czasem zachaczają o inne zagadnienia "przypadkowo" i jest ciekawie :D



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 gru 2016, o 14:37 
Offline
Moderator
Avatar użytkownika

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

heterodyn napisał(a):
Dla Ciebie napewno jest to przyjemne dla mnie nie koniecznie bo każdy dał by inną nazwę tu inną tam w zależności od skojarzeń.

Uwierz mi to dla mnie nie jest wcale przyjemne - za to pokazałem DOBRZE przykład na operator preprocesora ## służący do sklejania nazw - przedstawiając go na praktycznym przykładzie ... I wcale w dalszych książkach go nawet nie stosuję ... za to warto wiedzieć nie tylko, że jest i jak działa ale zobaczyć w jak czasem ciekawych sytuacjach może się przydać - i wcale nie chodzi o drzewka makr .... A poza tym co stoi na przeszkodzie - jeśli już się czyta ten rozdział - przerobić sobie żeby było bez tych makr upraszczających niby dostęp do portów "po swojemu" ... ?

heterodyn napisał(a):
Fakt, nie zaglądałem. Nie miałem na myśli żeby język C miał tu coś do tego.

Dlatego mówię ci, że warto zajrzeć - zanim się wypowie na forum takie dziwne rzeczy ;) ... bo samo przeczytanie - nawet pobieżne tekstu z tego rozdziału - i bez żadnej analizy drzewek makr jak to mówisz - zrozumieć o co chodzi w tej bibliotece i jak ona działa ... i NAJWAŻNIEJSZE - zrozumieć wtedy dlaczego WARTO podłączać pin RW do procka ;) ... bo wbrew pozorom , pin podłączony do GND może czasem powodować dodatkowe i niespodziewane wodotryski na LCD na które później narzekają początkujący .

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

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