O ile dobrze zrozumiałem idee to cyklicznie negujesz wartość poprzednio wpisną do portu. Nie znam AVR ale może to być taki przypadek jak w 51 , Ustawianie portu polega na wpisaniu wartości do rejestru, ale odczyt następuje z pinów procka. Podciągając lub nie pin rezystorem do +Vcc a sterując zerem, to nawet ustawienie pinu na zero przy odczycie zwróci...
kontrast? Jak wyświetlacz podłączy się do zasilania (GND, Vcc i KONTRAST) to wyświtla się na czarno połowa segmentów
W zasadzie nie znam Bascom-a, ale podejrzanie wygląda mi to, że argument Segment tej funkcji nie jest zadeklarowany jako tablica, a jednak odwołujesz się do niego jako tablicy.
r"]Pytanie moje takie czy zrobić jedno zasilanie i podawać je na paski czy każdemu paskowy robić zasilanie bez-transformatorowe. Skoro wyświetlasz statycznie to musisz zdać sobie sprawę z prądu jaki będzie pobierał wyświetlacz. Jeśli jeden pasek zabiera 20mA to policz sobie ile prądu będzie potrzebował cały wyświetlacz gdy będzie wyświetlał godzinę...
Oczywiście, że pomieszałeś, bo pod PD3 jednocześnie masz podłączone sterowanie anodą wyświetlacza i przycisk - jak wciśniesz przycisk, to odpowiednia cyfra wyświetlacza będzie zawsze aktywna... Użyj Timer1 w trybie CTC do odmierzania 0.01s - przy F_CPU = 1MHz chcesz mieć przerwanie z f=100Hz czyli odliczasz do 10000-1. To będzie za mała częstotliwość...
Zawsze możesz wysterować do testu jedną cyfrę bez używania timera . Ustawiając odpowiednie porty w stan wysoki. Jeśli cyfra świeci dobrze a dopiero podczas multipleksowania zaczyna świecić znacznie słabiej oznacza że nie bierzesz pod uwagę średniego prądu segmentów jeśli przełączasz 4 cyfry to każda z nich świeci przez 1/4 czasu więc prąd segmentów...
Najpewniej w tabeli masz złe wartości. Przykładowo 0 ma tu kod 3=00000011B czyli na pewno portb.0 = 1 i portb.1 = 1 jeśli portb.1 jest podpięty pod segment A to jest błędnie.
Witam Wyświetlacz musisz zrobić w przerwaniu. Częstotliwość odświeżania każdego powinna wynosić minimum 50Hz. Lepiej unikać dokładnej częstotliwości 50Hz. Może to być np. 53.5Hz. Jeśli ma np. 4 takie kostki to częstotliwość powinna wynieść 4 * 53.5Hz czyli 214Hz lub jak kto woli przerwanie powinno być wywoływane co 4,67 milisekundy. Od tego bym zaczął....
Masz dokładnie to, co zaprogramowałeś, czyli "duchy" na wyświetlaczu. W przerwaniu timera trzeba najpierw zgasić cyfrę (czyli wyłączyć wszystkie cyfry), potem ustawić segmenty dla następnej, a potem zaświecić tę następną cyfrę. Problem powraca na tym forum przynajmniej raz na miesiąc. Ile cyfr ma wyświetlacz i jaka jest częstotliwość przerwań timera?
a nie wystarczy coś takiego ? http://obrazki.elektroda.net/60_12809414... tylko inne napięcie bo inna ilość diod LED na segment .
OK, dzięki. Buduję teraz pająka segment i uP. A jak rozwiązać multipleksację(to mają być 4 cyfry)
ok, tylko najpierw uporam się z przyciskami i nastawami :P Dodano po 28 $regfile = "m8def.dat" $crystal = 8000000 Config Portd = Output 'podłaczony wyświetlacz 'Config Pinb.0 = Output ' anoda 1 źle! nazwa pin służy do odczytu wartości 'Config Pinb.1 = Output 'anoda 2 źle! aby ustawić należy się posłużyć nazwą Portb.x 'Config Pinb.2 = Input...
Witam Uruchamiam układ Atmega8 + SAA1064 - cztery wyświetlacze LED w trybie dynamicznym Próbuje według kodu poniżej jasno tylko wszystkie cztery kropki Wyświetlacz jest koloru zielonego - dwie LEDy na segment. Po podłączeniu przez rezystor 330R segmenty ładnie świecą - sprawdzałem, bo myślałem, że może 5V które jest w zasilaniu nie starcza. Schemat...
Witam na forum jest tysiące zapytań o sterowanie wyświetlacza LED,ale nie znalazłem ani jednego wątka dotyczącego wyświetlacza LCD , takiego jak mamy w każdym obecnie produkowanym mierniku. [url=http://www.elektroda.pl/rtvforum/vi... + bascom + lcd
Tu jest: KS0108B - 64CH SEGMENT DRIVER FOR DOT MATRIX LCD - Samsung semiconductor Samsung - KS0108B (LCD Driver) - Data Sheet KS0108A LCD controller datasheet 64CH SEGMENT DRIVER FOR DOT MATRIX LCD S6B0108
Źle podchodzisz do problemu - zmienna i (czyli numer wyświetlanej cyfry) powinna być zmienną globalną, którą w przerwaniu od timera zwiększasz, a następnie wykonujesz blok switch (i) { ... }. Oczywiście delay w przerwaniu to "bluźnierstwo" :) Preskaler ustaw sobie na 64, wtedy przerwanie od timera dostniesz ok. 400x na sekundę, czyli odświeżanie całego...
Może spłycę :) wypowiedzi przedmówców, ale w skrócie chodzi o to. 1. Wyświetlanie wszystkich 4-ech segmentów sterowanie jest tym samym portem, w tym przypadku P1 2. Tranzystory powodują po prostu dostarczenie napięcia do odpowiedniego segmentu. 3. Wysyłając jakiś sygnał na port P1, wysyłamy ten sam sygnał do wszystkich segmentów, a sterując odpowiedni...
na wyświetlaczu miga mi cyfra " 7 " , czyli wnioskuje że zmienna B przyjmuje wartość 7 , ale dlaczego ? oraz zero reakcji klawiatury. Witam Nie 7 tylko 15 :) 15 nie może być wyświetlone 7 segmentach, to 1111 3 ostatnie jedynki to właśnie 7. Daj if-a <15 zobaczymy pozdrawiam
Witam. Jestem w trakcie tworzenia programu do sterownika pieca miałowego. Sterownik oparty jest na układzie Atmega8, język BASCOM. Problemem jest wyświetlenie statusu wyjść urządzeń peryferyjnych i statusu MENU. Potrzebuję 8 diod sygnalizacyjnych do informowania aktualnego poziomu menu. Niestety liczba pinów układu jest nie wystarczająca i pomyślałem...
W celu eliminacji drgań styków należy użyć przerwania licznika, by odczytywać stan przycisku tylko raz na około 10 ms . Nie używamy funkcji Debounce i delay_ms ! Czy przycisk został naciśnięty sprawdzamy w zmiennej globalnej dostępnej w programie głównym.
Do LCD parametry przekazuje sie tak jak napisales np. LCD "Test" Mozna jeszcze rozdzielic srednikami np. LCD "Tekst" ; jakas_zmienna ; "cos tam" moze nie dales wczesniej CLS albo nie dodales na poczatku programu $sim
Generalnie to twój problem wynika w dużej mierze z tego, że wywołujesz funkcję z wewnątrz przerwania. To powoduje szczególnie w Bascomie - niestety KOSMICZNE obciążenie w postaci po pierwsze ogromnego i niepotrzebnego zużycia stosu przez co musisz właśnie zacząć się bawić z tymi wszystkimi HWSTACKAMI itp .... zobaczysz jaka bonanza z tym będzie przy...
Pokaż schemat to raz. Dwa: co to jest? Set Pinb.5 Set Pinb.6 Set Pinb.7 Tak po za tym chyba brakuje ci wartości początkowej timera0... Nie obraź się ale przy tym oscylatorze i preskalerze 64 otrzymasz przerwanie co najwyżej co 2ms... Na koniec zapamiętaj że program zawsze umieszcza się w znacznikach "code".
..a kodu nie ma, bo właśnie zaczynam jego pisanie... No to cegiełka ode mnie :P Dim Liczba As Byte Dim Sdj As Byte Config Portb = &HFF Config Portc = &H0F Liczba = 234 '... Sdj = Liczba Mod 100 Portb = Makebcd(sdj) Sdj = Liczba / 100 Portc = Portc And &HF0 Portc = Portc Or Sdj '... Zakładam , że na DIS3 wyświetlane będą setki ;) Piotrek
Witam. Mam pewien problem. Zacząłem uczyć się Bascoma (tak, wiem, głupi wybór, ale chodziło mi o prostotę). Na razie na swoim koncie mam zegar na DS1307 i LCD 2*16, teraz coś mnie napadło na wykorzystanie timerów i kupionych kilka lat temu wyświetlaczy 7-segmentowych wspólna katoda. Na razie napisałem tyle: [syntax=basic4gl] $crystal = 12000000 Declare...
Nie wiem czy sam pisałeś program czy może wziąłeś gotowca ale z funkcją getkbd() jest taka sprawa, że: "Funkcja GETKBD() zwraca numer naciśniętego klawisza, w klawiaturze matrycowej, podłączonej do portu mikrokontrolera. Gdy nie naciśnięto żadnego z klawiszy funkcja zwraca liczbę 16." i "Ponieważ funkcja zwraca numer umowny klawisza w matrycy, można...
>Czy można wyświetlacz taki obsłużyć z programu BASCOM ?? Tak. Bodajrze jeden port na wspólne anody/katody + 4 dodatkowe linie do sterowania każdym segmentem.
Podłączasz katody wyświetlacza (dla WA) do portów procesora przez rezystory. Wspólną anodę do plusa zasilania. Ten bit portu który wyzerujesz - zapali się segment na wyświetlaczu.
To może się okazać bardziej skomplikowane, niż się wydaje. Wszystko zależy od tego, jaki jest algorytm wyświetlania w tym częstościomierzu. W każdym razie, w najprostszym przypadku można próbować coś w tym rodzaju: 1. utworzyć tablicę na 7 cyfr wyświetlacza. 2. ustawić timer na generowanie przerwań z prędkością > 100 razy na sekundę. Lepiej nawet rzędu...
Daj 100 omów na segment i 2.2k na bazy.
Ja tego kodu nie przepisywałem, nie miałem takiej potrzeby. Inne listingi z Ne przepisywałem, zawsze miałem problemy z przepisywaniem, ale zawsze po dokładnym sprawdzeniu okazywało się że to ja popełniłem błąd. Radzę Tobie sprawdzić kod po raz kolejny aż zacznie działać. Ci widać na wyświetlaczu ? Jakim Bascomem AVR kompilujesz, 1.11.7.4 ? To ważne...
Multipleksujesz to jak zwykłe 7 segmentowe wyświetlacze LED. Mam nadzieję że wiesz na czym to polega. W ruch idzie timer który podczas przerwania zapala jedną kolumnę i wpisuje do portu odpowiednią wartość. Kiedy nie występuje przerwanie to kolumny zostają wygaszone. I tak w kółko z taką częstotliwością żeby oko ludzkie nie było w stanie tego zauważyć....
Taki schemat może być? Tylko jak w bascomie napisać program do tego schematu?
A rzeczywiście wkradło mi się kilka babolów na początku ale podejrzewam że nie ma to żadnego znaczenia. A to sterowanie portb.6 to tak naprawdę sterowanie zatrzaskiem 74HCT573 po to aby tylko portem a sterować wszystkimi segmentami.
Czyli masz już w systemie przerwania zgłaszane ze stałą częstotliwością, zapewne na poziomie przynajmniej kilkuset Hz. Oznaczamy tę częstotliwość jako f. Mamy zmienną a - długą i całkowitą. Inicjujemy ją na 0. W każdym przerwaniu timera: - Dodajesz do tej zmiennej liczbę kroków na 10 s (czyli od 1 do 99) - Jeśli wartość tej zmiennej przekroczy 10*f,...
aaaa no sorry, obydwie części kodu były opisane oddzielnie a teraz już rozumiem o co ci chodziło: (nie zauważyłem słówka POTEM - moja wina) Portc=PortC or 0B00001111 case 0: Portc=Portc and 0B11110100 'to kasuje bit 0,1,3 a ustawia 2 case 1: Portc=Portc and 0B11110101 case 2: Portc=Portc and 0B11110111 case 3: Portc=Portc and 0B11110010...
Nie wiem jak jest w BASCOMIE to traktowane, wiec to bardziej pytanie niz odpowiedz, jesli dzielisz C i A to otrzymujesz ulamek - czy nie trzeba tego zaokraglic do calosci by uzyskac wlasciwy wynik na wyswietlaczu?? I chyba cos masz namieszane z dzialaniami, bo po co wyliczasz B skoro wcale go nie wykorzystujesz??
do sprawdzania stanu portu służy rejestr PIN
Witam wszystkich czytających a przede wszystkim dzielących się doświadczeniem. Mój problem dotyczy wyśietlania cyfr na wyświetlaczy 7-o segmentowym, ale bez sterujących anodami tranzystorów (oszczędność miejsca)anody bezpośrednio podpięte do pinów mikrokontrolera. Z tranzystorami cel osiągnąłem i cyferki wyświetlają się jak ta lala, natomiast bez tranzystorów...
No to kupiłem drugi mikrokontroler i ISP działa. Mam pełne porty A B D ale za to nie mam PC2-PC5. Znalazłem, że to porty od JTAG i chciałem ustawić JTAGEN na 1 w AVR8 Burn-O-Mat v2 ale niestety jest on na czerwono i nie mogę go przełączyć. Czy jest jakaś możliwość za pomocą programatora ISP dokładnie usbasp wyłączyć JTAG? Może zamiast programatora...
Spróbuj dać większe opóźnienie. Przestawiłeś fuse bity? Jak masz podłączone te diody? A może chcesz zapalić jakiś segment na wyświetlaczu led?
U mnie zarówno w symulacji, jak i w realnym układzie program działa. Jedyne róźnice to najnowszy BASCOM-AVR, ATTiny2313 taktowany 4MHz, inny czas Waitms by zauważyć co i jak się dzieje. Program + HEX + BIN + SIM + cała reszta w załączniku. A teraz premiera. Trzy dolnie segmenty wyświetlacza to trzy kanały PWM: OC1A, OC1B, OC0A. Led RGB podłączona rówolegle...
Te dwa ostatnie wyświetlacze podłączyć na stałe. To znaczy anoda na stałe do + a odpowiednie segmenty przez oporniki do masy. Dwa tranzystory mniej i dwie linie procesora mniej.
Może problem tkwi w tym, że ten kod prawie nic nie robi... Nie podałeś schematu połączeń w swoim projekcie. Port C adresujesz bezpośrednio wartościami 8-bitowymi, Port B w sposób dyskretny pin po pinie... Zmieniasz PB =0, potem na 1, potem znów na 0 i koniec programu... PortC to wyjście rozkazów i danych a portb.0 to TAKT. Wysyłam rozkaz na portc i...
Policzyłem dla AVCC, to jednak nieważne. Zobacz jak korzystać z symulatora w takich sytuacjach. Zmieniłem trochę Twój kod (miał też błąd w obsłudze przerwania bo zaraz pod Select case miałeś ustawianie portów bez żadnego Case. Przeniosłem więc tę linię powyżej Select Case) Wracając do symulatora to każdy ruch suwaka w symulatorze powoduje teraz printowanie...
Witam. Mam podobny problem,nie inicjuje się lcd w bascom,podpięte mam pod jednakowy port tzn.B i nic. Szukam tego tematu ale wszędzie wskazówki co zrobić gdy kontrast nie podpięty itd. ale mam wszystko podpięte i nie działa. Też mam go podpiętego do attiny2313 i kwarc 8Mhz,procedurka z bascoma jak u Ciebie i też jeden rządek tylko świeci,wygląda tak...
Rozumiem. Zdziwiło mnie inne podłączenie segmentów. Teraz OK :D
Witam. Czy wie ktoś jak za pomocą układu 74hc164 sterować wyświetlaczem 7-segmentów poprzez dowolny procesor AVR, czy jest to w ogóle możliwe? Prosiłbym o fragment kodu w bascomie. Pozdrawiam.
Najlepiej mikrokontroler, Attiny2313, o ile kod nie ma być długi. Druga sprawa język programowania.. Ty Bascom jest chyba najłatwiejszy. Bez problemu zrobisz kod, po przejściu kursu. Nie widzę sposobu aby nie użyć 8 pinów, tylko mniej, ale 2313 ma aż 15. Co prawda jeśli chcesz użyć kilku segmentów, to albo mikrontroler z większą ilością BPIO,albo do...
Jak używasz jakiejś bardzo starej wersji spolszczonej to możliwe, ale Demo2075 już nawet to potrafi. Możesz użyć Twojej poprzedniej konfiguracji z Load Timer, ale dodaj ustawianie tej flagi 5ms w przerwaniu.
Myślałem, że chcesz po prostu podłączyć segmenty do wyjścia cyfr, a cyfry zamiast segmentów. Wtedy "8" ze wspólną anodą zapalałbyś ustawiając osiem cyfr i jeden segment, zamiast jednej cyfry i ośmiu segmentów, jak przy wspólnej katodzie. Brakuje wejść w tym układzie na katody do sterowanie segmentami. Pewnie brakłoby też prądu na cyfry zasilane z wyjść...
Witam. Sprawdź czy w układzie nie masz odwrotnie podpiętych segmentów. (spróbuj zamienić pin 14 z 16 )
Aha czyli ten kod jest do innych procków Ja mam Attiny 2313 Mam jeszcze jedno pytanko jak w tym kodzie zrobić aby wyświetlacz pokazywał konkretna liczbę próbowałem i mi nie wychodzi np. liczbę 12 segment \ pin a \ 1 b \ 5 c \ 4 d \ 3 e \ 0 f \ 2 g \ 6 $regfile = "attiny2313.dat" 'najpierw określamy typ proca $crystal = 1000000 Declare Sub...
NA "setki" "dziesiatki" i "jednosci" NIE WIEM JAK ZROBIC, zeby przy malych predkosciach (ponizej 10km/h) wartosc na wyswietlaczach byla zmieniana co 1 sekunde (4xtimer1) Dim Speed As Byte ' Prędkość Dim Tmp As Byte Dim I As Byte Dim Index As Byte Dim Mmv as Byte *** Rozbicie na 3 cyfry *** Dim Cyfry(3) As Byte Speed = 147 ' W Polsce to zakazane...
niestety ten nie ma, ma wyprowadzone wszystkie siatki i poszczegolne segmenty. Jesli ktos napisalby ten program dla 10 wyswietlaczy LED (czas i data naraz) to juz sobie poradze. Pozdrawiam
W załączniku jest sposób połączenia klawiatury matycowej którą zapeane posiadasz. Zadanie polega na tym aby sekwencyjnie czyli po kolei podawać stan niski począwszy od L1 a skończywszy na L3, i tak w kółko, na raz tylko jedna linia powinna być w stanie niskim.W1-W3 trzeba przy tym kontrolować cały czas,jeśli teraz wykryty zostanie stan niski np. na...
jacekk232 dziękuje konkretnie i na temat ,ten problem rozwiązany bascom nie pokazuje błędów natomiast jak podepnę atmege do układu to nic się nie dzieje na wyświetlaczach mam napięcie 1.25V rezystory na segmenty mam 8x 470Ω może to być dlatego że wyświetlacze nie świecą? rezystory ograniczają prąd a napięcie to jest tylko minimalny spadek przy...
Nie jestem zbyt zaawansowany w elektronice, a raczej bardzo początkujący, ale robiłem niedawno układ do sterowania wyświetlaczem LED z użyciem dekodera kod BCD (wtedy wystarczy podawać na 4 liniach, a nie na 7). W każdym razie poprowadziłem ścieżki od scalaka do wyświetlacza i układ po chwili strasznie sie grzał. Nie jestem w tym orłem, ale z doświadczenia...
Dziękuje panowie ale to nie koniec... Sprawa wygląda tak że multiplexuje wyświetlacze 7-segmentowe LED. Problem tkwi w tym że zasilane one są napięciem 12V. Stanem niskim zapalam odpowiedni segment zaś stanem wysokim go wygaszam. Cała istota sprawy jest taka że występuje różnica potencjałów i uc nie jest w stanie wygasić segmentów(bo 1 logiczna to...
Niestety coś za coś. Skoro zapalasz i wygaszasz kolejno 7 segmentów to oznacza że każdy z nich pali się 1/7 czasu zapalenia całej cyfry. W związku z tym dany segment średnio (dla oka ludzkiego) pali 7 razy słabiej niż przy pracy ciągłej. Zwiększanie prądu segmentu nic nie da a może zaszkodzić (prąd chwilowy) ledom lub prockowi (jeśli nie buforowałeś...
Tego się obawiałem, w przyszłości w programie podczas np: odbierania kodu rc5 z pilota 1 segment miał wyświetlać jakiś znaczek, ale widzę że jeżeli zmniejszę rezystory to popalę segmenty. A czy wraz z moim czasem wyświetlania (co ok. 700 us) da się odbierać kod rc5 nadal wyświetlając coś multipleksowo na wyświetlaczu? dodam że pisze w bascomie (tak...
Chce zapalic segmenty wyswietlacza na plytce. Nie wazne w jaki sposob chce sie upewnic, ze dziala po zaprogramowaniu w c. W bascomie portB odpowiadal za segmenty wyswietlacza, wiec chyba w c tez. Jezeli macie jakikolwiek program, ktory uruchomilby segmenty wyswietlacza, to bardzo ptosilbym o podeslanie.
Witam Jedno z możliwych rozwiązań np.: uP AT90S2313, do portu PB podpinasz przez rezystory 560om wyświetlacz 7segmentowy. I teraz np. w Bascomie możesz już napisać program który będzie sterował pojedynczymi portami PB(x) czyli segmentami, co w efekcie da Literę na wyświetlaczu. Pozdrawiam S95
nie rozumiem konstrukcji: Do ... If I = 10 Then I = 0 .... Loop End If Do ... Loop End Do If Odczyt = 257 Then Temp = 85 If Odczyt = 297 Then Temp = 80 ... Loop End If End If ... To się da skompilować? Bo działać poprawnie raczej nie będzie Temperaturę obliczyłbym ze wzoru: temp=111-0,1*odczyt i nie bawił się w żadne kejsy i ify w tym miejscu. Kejsy...
1) Wykonaj poprawki w programie które napisałem. 2) Na próbę wyjmij tranzystor BC557 i kawałkiem kabla podłącz VCC do wyświetlacza, ustali się w czym problem. 3) Możesz definiować swoje znaki w CASE, tylko wiedz że takie definicje zajmują trochę czasu i to się nie nadaje do szybkiej zmiany. 4) Jeśli masz problemy z wyświetlaczem LED to podejrzewam też...
Może to ci pomoże : [url=http://www.elektroda.pl/rtvforum/to... w timerze, problem albo to : [url=http://www.elektroda.pl/rtvforum/to... w bascom czujnika DS1820 na DS18B20 albo ...... Jakieś 780 innych postów pod tym linkiem : [url=http://poszukaj.elektroda.pl/search...
Kolega Spięcie chyba chciałby aby wysłać na wyświetlacz LED informację binarną a on miałby niby sam przetłumaczyć na dziesiętną. Niestety kolego życie nie jest takie proste, wyświetlacz LCD ma wbudowany scalaczek- dekoder a LED go nie ma i albo trzeba sobie "przetłumaczyć" programowo albo (jak nie umiemy) kupić dekoder np. CD7447 itp. Wszystko co napisałeś...
Witam Zrobilem sobie projekt zegarka na wyswietlaczach 7led. Uproszczony schemat zamieszczam w zalaczniku. Programuje troche w BASCOMIE, ale do tej pory robilem glownie z zastosowaniem wyswietlaczy LCD. Walcze juz kilka dni z probami multiplexowania tych czterech wyswietlaczy i nic nie moge wymyslic. Czy moze mi ktos poradzic jak mam sie do tego zabrac....
Możesz to zrobić na wzór wyświetlacza 7-segmentowego. Piszesz procedury rysowania "segmentów" za pomocą linii np segment_a, segment_b itd. Następnie w zależności od wartości cyfry uruchamiasz odpowiednie procedury. Dla przykładu cyfra 2 to segmenty a,b,d,e,g więc skaczesz do 5ciu procedur rysujących. Oczywiście procedury napisz z głową, żeby było łatwo...
Witam Proponuje poczytać o wyświetlaniu na wyświetlaczach LED 7 segm. Znacznie prościej wykorzystać w tym projekcie wyświetlacz LCD 1x16 znaków Cena na all. 9-12 zł. Tego mógłbym sie nawet podjąć :) Ten program jest w moim odczuciu przekombinowany Napisz na prv podeślę Ci programik w Bascom dobrego działającego termostatu - na lcd 2x16 z ustawieniami...
Sugerował bym jednak powrót do ATTiny - program można napisać w BASCOMie (basicu) a programator to w najprostszym przypadku wtyk DB-25 z kabelkami, poza procesorem, stabilizatorem 5V, kilkoma rezystorami (8) i wyświetlaczem niczego nie potrzeba.
Możesz podłączyć jakąkolwiek matryce LCD która posiada 4 x 25 segmentów (4 wspólne 25 segmentów) lub mniej. Zapalanie segmentów realizujesz przez odpowiedni wpis do mapy pamięci wyświetlacza w driverze LCD.
Witam . Mam wyswietlacz z budzika. Na wejściu ma 23 piny. Zawiera 3 wyświetlacze 7 segmentów led (pierwszy jest 6 segmentowy). Chciałbym zrobić maszynkę która odlicza od 10 do zera i włącza przekaźnik. Na razie nie mam wyświetlacza lcd więc muszę wykorzystać ten. Problem polega na tym że nie mam odpowiedniej ilości wyjść w mikrokontrolerze (ATmega8)...
To jest sterownik wyświetlacza LED. Stosowanie go zwalnia Cię z troszczenia się na poziomie programu o to, które segmenty wyświetlacza powinny świecić aby pojawiła się odpoowienia cyfra. Podajesz tylko 4-o bitowy kod liczby(prawdopodobnie jesto wartość tej liczby binarnie) na jego wejście a on już sam ustali, które segmenty powinny się zaświecić. Ale...
dzieje się coś dziwnego. Jak podłączy się do zasilania nic się nie pokazuje ale jak dotknie się do pinów kwarcu to na wyświetlaczu zaczyna się coś pojawiać migać cyfry itp. a jak się puści to pozostają zapalone segmenty d i nic po za tym.
Wydaje mi się, że nieprawidłowo liczysz adresy. Zauważ, że rekordy 02-05 zawierają różnie zapisany adres, który powinieneś odczytywać, a nie zakładać, że przestrzeń adresowana jest liniowo. To ma znaczenie w kodzie, gdzie przesuwasz segmenty, albo tworzysz własne segmenty w pamięci (w BASCOMie tego chyba nie ma, więc możesz się z tym problemem nie spotkać)....
Ale widać jakąś różnice zapalił się inny segment lub coś innego, Pokaż schemat
Jakby ktoś miał wsad do AT89C2051 to byłoby pięknie jak udostępni albo wskaże gdzie szukać. Dla początkującego będzie łatwiej bo BASCOM to magia. Wyrozumiałym bardzo dziękuję i zapewniam o pamięci w czasie. Pozdrawiam wszystkich elektroników amatorskich i zawodowych.
To jest SPI czyli najprostsza komunikacja szeregowa, synchroniczna, podajesz zadany stan na wejście SDI i impulsem zegarowym na CLK wpisujesz, powtarzasz osiem razy, na koniec impuls LE żeby przepisać na wyjścia. AVR ma wybudowany hardware który to zrobi za ciebie, Bascom ma jakieś funkcje do obsługi, więc powinno to być proste w użyciu, ale nie używam...
No tak niby wiem jak sterować takim wyświetlaczem ale nie do końca. A mianowicie, jeśli mam podłączony wyświetlacz 7-mio segmentowy np do portu B to za pomocą komendy lookup wysyłam na ten port gotową liczbę z tabeli a jeśli chodzi o wyświetlacz 14-sto segmentowy to jak? 7 segmentów podłączam jak wcześniej a następne 7 do innego portu i co dalej? Jak...
Witam, Przeszukałem forum, goglowałem i niestety nie mogę znaleźć rozwiązania pewnego problemu. Poskładałem mały projekcik oparty na atmega8 i 6 segmentach LED. Do anod użyłem 6xbc327 sterowanych z portu d przez rezystory 10k. Katody steruje z portu c przez rezystorki 220 ohm. Programy testowałem różne - pisałem je w bascom - ostatni służący do testów,...
W programie nie można zmienić jasności wyświetlaczy gdyż projekt nie był do tego przystosowany. Jakie kolega ma wartości rezystorów w segmentach wyświetlaczy? Kod źródłowy poleciał na PW. pozdrawiam
A co ma szybciej śmigać w zegarku? jesli chodzi o szybkośc odświerzania i migotanie to podnoszenie częstotliwości nic Ci nie da, bo czas zapalenia segmentu nie ulegnie zmianie. nie znam sie na Bascomie, ale na pewno da sie odpowiednimi zmiennymi regulować czas wypełnienia (świecenia segmentu)
Ja to rozwiązałem tak jak na załączonym schemacie. To jest sterowanie 96 segmentów. Sterowanie anodami zrobiłem na oddzielnym ULN-ie i tranzystorach p-n-p
Witam. Atemaga8. Napisałem w bascom prosty program do wyświetlania danych na LED siedmio-segmentowym. Segmentami sterują między innymi porty PD0 (Rx) i PD1 (Tx). Wszystko działało do czasu wgrania bootloadera. Boot działa i ładuje oprogramowanie ale przestały działać wymienione wcześniej porty a co za tym idzie nie świecą dwa segmenty pod nie podłączone....
potrzebuję wyświetlić na na wyświetlaczu LED kolejno cyfry podane przez pilota RC5 mam program w Bascomie który wyświetla mi zadane przeze mnie zmienne : $regfile = "m32def.dat" 'Częstotliwość kwarcu domyślnie 16MHz $crystal = 16000000 $hwstack = 32 $swstack = 10 $framesize = 40 'Podłaczenie wyświetlacza 7 segmentowego ' Digit1 PORTB.0 ' Digit2...
Jeśli kolega czuje się na siłach, by troszkę zedytować kod w Bascomie (i nieco schemat), to polecam: http://mdiy.pl/miernik-czestotliwosci-na...
No, więc skoro to SPI to przez BASCOM powinno pójść łatwo. config spi = hard, clockrate=64, master=yes, polarity=high 'ustawiam spi spiout &B00000001, 1 'wybieram liczbę znaków i segmentów spiout &B01000000, 1 'ustawiam wyświetlacz w tryb odbierania danych spiout &B10001111, 1 'włączam wyświetlacz i ustawiam do końca nie wiem co(na default)...
1. Ten kod z Case użyj zamiast Lookup() 2. Jakie masz rezystory w bazach PNP i segmentach ? 3. Sprawdź na nowszej wersji BASCOM'a 4. Format &B0000_0000 był dostępny od którejś wersji BASCOM'a. Dla pewności w DDRx i Portx użyj składni &B00000000 (bez "_") Dam Ci skompilowany kod, wgraj go do procka i sprawdź działanie:
Ma 40x1 segmentów. Jak chcesz przewijać tekst góra - dół skoro wyświetlacz może wyświetlić 40 znaków tylko w jednym wierszu?
Ja może nic nie wniosę w wasz problem, ale nie polecam stosować zasilania (po zaprogramowaniu) z programatora który jest podłączony do komputera. Ostatnio też sie zastanawiałem dlaczego świecą się mi segmenty DP i B (wyświetlacz LED) skoro je programowo wyłączyłem. Okazało się że programator dawał na te końcówki stan niski(w moim wypadku był potrzebny...
Nie mam zielonego pojęcia dlaczego tak się dzieje. Ja ten program sprawdziłem z wyświetlaczem LED 5 x 7seg bez użycia tranzystorów i UL2803, poszczególne segmenty steruję tylko przez rezystory 1kom. Kod programu troche zmieniłem. Pozdrawiam. Stefan
Ważniejsze co jest napisane na układzie scalonym, jeżeli da się znaleźć dokumentacje i jest ona kompletna jest możliwe napisane biblioteki do obsługi. Gołe szkło LCD jest dość trudno sterować, jeżeli jest bardzo rozbudowane od strony liczby wyświetlanych znaków (segmentów)
Za "drugiego" BC, czyli T9 mogę wstawić jakiś mocniejszy tranzystor? Przy wyświetlaniu cyfry 8 długo by on nie pożył. Jeden segment zżera nawet 100mA, więc cały wyświetlacz (cyfra 8) jakieś 0,8A.
Bardzo dziękuję za krytykę. Zamiast operatora AND mam zbudować zagnieżdżone pętle. Wykorzystuję timer2, bo w M32 mam możliwość taktowania go zewnętrznym kwarcem (w moim przypadku 32768), ale docelowo będzie to pracowało w M8, więc program będę musiał delikatnie skorygować. Co do przerwania cosekundowego: -nie znalazłem metody na uzyskanie takowego,...
Niedawno miałem podobny problem i kolega ZUMEK mi pomógł przerobił swój program na moje potrzeby może tobie sie przyda do wyciągniecia wniosków u mnie działa bezproblemowo: $regfile = 89c2051.dat $crystal = 11059200 Const Displays = 4 ' liczba wyswietlaczy LED Const Cyclespushall = 45 'ilosc cykli od przepelnienia T0 , do jego "przeladowania" Const...
Jest 7 segmentów i kropka, czyli jak zapalisz wszystko to segmenty muszą się podzielić tym prądem. Takie sterowanie nie jest zbyt poprawnym rozwiązaniem. W każdej chwili z tego co rozumiem świeci 1 segment więc nie ważne co wyświetlamy zawsze będzie tak samo jasno. Świetna sprawa, muszę to sprawdzić :)
Witam. Mam malutki problem z wyświetlaczem LED 3 cyfry 7 segmentów (bez kropki). Podczas obsługi wyświetlacz poprawnie wyświetla cyfry z danych. Krok wyświetlania jest co 100. Po osiągnięciu 1000 dokonuję zmiany trybu wyświetlania tak, że tysiące są widoczne na pierwszym LED zaś setki na trzecim. Problemem jest to, iż chciałbym by pomiędzy tysiącami...
Mam problema mianowicie kiedy wydaje polecenie w Bascom AVR 11.1.7.1 polecenie LCD "test" to zamiast textu na wyświetlaczu pojawiają mi się zapalone całe segmenty w tym przypadku 4 a gdy wydam LCD a i a=123 lub a = "test" to jest ok . Mówie tu o symulacji programowej bo inaczej nie paczyłem 8O
Witam, Mam pytanie jak najlepiej zrobić w Bascom coś takiego: Rysuję linię wg zmiennej x od 0 do np 100. Pset X , 1 , 255 Następnie zmienna x zmniejsza się np do 45. to zgasną segmenty od 46 do 100 a będą zapalone od 0 do 45. Dodam że wyświetlacz graficzny t6963c.
bascom wyświetlacz segment ds18b20 bascom segment wymiana segment
różnice attiny atmega gniazdo przyczepki podłączenie doktor oleju
sterowanie domem najprostrzy mikrokontroler
Peugeot 508 SW - brak reakcji na zmianę temperatury nawiewu Zamienniki dla TB2906HQ: TDA7850, TDA7388, TDA7492