witam ! '2 wyświetlacze LED 7segmentów 'fusebity ustawione fabrycznie $regfile = "attiny2313.dat" $crystal = 1000000 Config Portb = Output 'katody segmentów LED Config Portd = Output Anoda1 Alias Portd.0 Anoda2 Alias Portd.1 Dim Nr_wysw As Byte Dim Cyfra2 As Byte Dim Cyfra1 As Byte Dim Temp_liczba_1 As Word Dim Temp_liczba_2 As Word Config...
Temp_liczba musi być typu Word a nie Byte.
Jeśli zmienna wyświetl jest typu Word, czyli ma być to liczba całkowita. Od razu ci podpowiem, że nie potrzebujesz używac liczb zmiennoprzecinkowych, które "kosztuja" bardzo dużo. Zrób operacje na liczbie *10, a przy wyświetlaniu przesuń tylko przecinek w lewo o jedną pozycję.
Witam. Robię czujnik temp. do auta i wykorzystuje do tego seryjny termistor NTC przykręcony do obudowy silnika, wynik ma być wyświetlany na wyświetlaczu LED. Układ jest już zmontowany tylko zostało napisać program. Odczyt i przekształcenie na wart. temp. nie jest problemem ale za to wyświetlenie tego na multipleksowanym wyświetlaczu led przez układ...
Więc tak potrzebuje wyświetlić liczbę w formacie x.x. I nie wiem jak to zrobić próbowałem tak iż daną liczbę mnożyłem razy dziesięć zaokrąglałem do liczby całkowitej funkcją round a następnie robiłem dzieliłem na dziesięć ale na wyświetlaczu lcd i tak pojawiało mi się kupę liczb po przecinku w formacie x.x00000001 lub podobne x.x999999991. Jak to zrobić...
Co masz na myśli: 'jak chcę wyświetlić normalne liczby' ? Zamieszczony kod działa poprawnie, ale ... Wysyłasz na port C dane co jakieś 1/8000000 sekundy. Masz taką potrzebę, czy to przypadek ? Może zrób to tak : $regfile = "m16def.dat" 'atmega 16 $crystal = 8000000 'taktowanie 8 MHZ (kwarc zewne;trzny) Config Portb = Output ' Port...
Kolega potrzebuje po prostu wartości liczby w kodzie BCD jak pisał poprzednik i BCD, HEX i liczby dziesiętne pokrywają się w zakresie 0-9. W takim razie wystarczy wysłać 4 najmłodsze bity na wejście 7447 albo całą liczbę bo i tak podrt wyjściowy jest podłączony tylko to 4 końcówek 7447. Co do wartości powyżej 10 to zaproponowałbym aby użyć wejścia BI/RBO...
Proponuję wprowadzić opóźnienie w pętli.
tak o wyświetlanie :)
bascomowa funkcja Rnd() potem zapisujesz wylosowane liczby w tablicy i przy kolejnym losowaniu sprawdzasz czy się nie powtarza jeśli się powtarza to losujesz jeszcze raz i znowu sprawdzasz, jeśli się nie powtarza to dopisujesz do tablicy wylosowanych i wyświetlasz na lcd
Te wszystkie sztuczki pozwolą ci zaoszczędzić parę bajtów , ale największe oszczędności przyniesie ci rezygnacja z liczb zmienno przecinkowych. Tu oszczędności będą na poziomie kilkudziesięciu procent , więc jest o co walczyć. Tymabardziej że napewno to się da zrobić i nie jest to takie trudne. Przecież zamiast operować na liczbie np 13,45 możesz sztucznie...
Witam chciałbym zrobić układ zliczający impulsy.Miałby on liczyć do 16 bitów i mieć wyprowadzenia na zewnątrz z procka.Nie wiem tylko jak zrobić aby dwa zewnętrzne porty procesora Atmega16(np A i C) zachowywały sie jak jeden port 16 bitowy.Co trzeba byłoby zmienić w tym programie(program ten zlicza impulsy ale tylko obsługuje 8 bitów).Typ zmiennej wiem...
Dalej nic nie dało. Nie wyświetla mi dziesiątych liczb. Wyświetlacz sprawny na 100%
Siemka! Musisz wziąść pod uwagę fakt, iż zmienna single przechowuje wartości zmiennoprzecinkowe ze skończoną dokładnością i to może być zauważalne przy niektórych operacjach na tego typu zmiennych. Poszukaj w helpie od Bascoma i poczytaj o kodowaniu liczb zmiennoprzecinkowych i wszystko Ci się wyjaśni:) Pozdrawiam!! Widzę że dałeś kod.:) Mi się wydaje...
Czy ktoś mi może powiedzieć co w tym kodzie jest nie tak, że readeeprom nie działa? Program nei robi nic konkretnego. Powinien po prostu wyświetlić jedną liczbę na wszystkich wyświetlaczach ale z niewiadomych przyczyn tego nie robi. Kod: '****************************OPIS DZIAŁANIA PROGRAMU**************************** '***************************************...
Super. Wielkie dzięki. Nie spodziewałem się tak szybkiej pomocy. Będę chciał dziś wieczorem przetestować programik i dam znać. Oczywiście nie mam nic przeciwko optymalizacji i dostosuje się do niej :) Podoba mi się twoje koncepcja. Jeżeli mogę dopytać. Większość postów które czytałem związane były z multipleksowaniem, czyli wyświetlanie liczb przez...
Witam. Masz w złym miejscu Do i Loop oraz Lcd. Zobacz ze program powtórnie już nie wyświetla nic (zmiany liczb). No i skoro deklarujesz Sub`y to ich użyj czyli Sub Menu1 ........ End Sub, no i dawaj te deklaracje zawsze na początku programu, np. zaraz po zmiennych. Pozdrawiam
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...
Czasem coś tam piszę na AVRy ale głównie w BASCOMie ew. w C++... Wyznaję zasadę, że jeśli zachodzi potrzeba użycia języka niższego poziomu to należy użyć... mocniejszego procesora ;)
Witam, chciałem zrobić sobie zegarek na układzie RTC PCF8583 i uC Atmega8, po 1,5 tyg przeszukiwanie elektrody i testów różnych programów postanowiłem się poradzić. Na LCD pokazują się liczby trzycyfrowe. Ostatni program który testowałem: [syntax=basic4gl]$regfile = "m8def.dat" $crystal = 12000000 $baud = 19200 $hwstack = 32 $swstack = 10 $framesize...
W bascomnie ciężko zrobić LED + Ds18b20 wszytko psuje Waitms 750. Zwiększ do 8 a jak możesz do 16MHz kwarc. A od kiedy to musimy czekać 750ms nie robiąc nic innego? Od czego mamy timery? Przepraszam najmocniej Kolegę, ale jeśli Kolega tego zrobić nie potrafi to: 1. Nie oznacza że się tego zrobić nie da - ja nie potrafię zbudować komputera klasy PC...
Zacznij od wrzucania emu wyświetlaczowi danych z terminala - sprawdź, czy to działa. Jeśli działa - zastanów się nad różnicami. Kidy Input kończy działanie? Nie znam Bascom, ale zgaduję, że po Enter, czyli CR. Czy nadajesz kod CR powysyłanej liczbie?
Zrób warunek, jeśli liczba >= 0 dostawiaj spację.
Powinno działać tak jak chcesz: Est Alias Pind.4 Dim Zmienna As Byte , Licznik As Byte Cursor Off Config Portd.5 = Input Config Portd.6 = Input Config Portd.7 = Input Config Portb.0 = Input Config Portd.4 = Input Portd.5 = 1 Portd.6 = 1 Portd.7 = 1 Portb.0 = 1 Portd.4 = 1 Cls Do Bitwait Est , Set Zmienna.0 = Pinb.0 Zmienna.1 = Pind.7 Zmienna.2 = Pind.6...
Widzę że trafiłem na ludzi chcących pomagać początkującym – jeszcze raz wielkie dzięki. Jak zrobić żeby podczas wprowadzania liczby, aktywne pole było jakoś zaznaczone ( gdzieś widziałem dolne podkreślenie. Ale nie wiem jak to zrobić ). Kolejny problem – zmodyfikowałem funkcję Dostar: która ma odliczać wprowadzoną liczbę do 0 i mam problem...
wszystko pięknie tylko że ta opcja dodaje 0 przed samą cyfrą i znak + (wcześniej pokazałem przykłady jakie chcę uzyskać) Próbowałem też bez zera na początku i bez plusa (zastąpione spacjami) tylko wtedy tak jak mówię przy zmianie znaku liczba pływa
No i tak właśnie zrobiłem z konieczności trzema ifami bo mam dwie takie zmienne... szkoda że nie ma jakiegoś polecenia, które by umożliwiało wyświetlanie zer nieznaczących
A jak zrealizować wyświetlanie znaków jeden po drugim w takim kodzie: Do Print chr(bufor(a)) incr A Loop Podaje bez deklaracji zmiennych. Dodano po 10 OK dodać średnik w pętli. Dzięki za podpowiedź, nieraz rzeczy oczywiste są ciężkie do zauważenia.
1. dokumentacja: http://www.atmel.com/dyn/resources/prod_... strona 11. Nie czytałeś tego dokumentu? Od tego MUSISZ zacząć jak bierzesz nową i nieznaną kość do ręki. Nie musisz czytać wszystkiego od A do Z, ale wypada choćby przekartkować, żeby odnaleźć te informacje... 2. kod mógłbym napisać, ale jakoś nie mam na to czasu ani motywacji....
Faktycznie to nie będzie tak działać :) Próbuje to rozwiązać, na razie bezskutecznie, więc wszelkie rady jak wysłupać jedności liczby w kodzie binarnym mile widziane :D
A po co formatujesz Byte? Ustawiasz wyświetlanie, przy pomocy komendy locate x,y. cool2=cool1 sic
W procedurze wyświetlania zapisany jest warunek wygaszanie zer nie znaczących, a po przekroczeniu 255 cyfra setek wyświetla 0 i ono nie gaśnie. Czyli zmienna liczy się nadal, co wskazuje rzeczywiście na problem z wyświetlaniem a nie liczeniem. Po wpisaniu "na twardo" Liczba_nok = 987 Liczba_ok = 654 wyświetlacz pokazuje 287 i 154
Wielkie dzięki bedę testował Wyświetlanie zrealizuje w przerwaniu od timera tak bedzie najlepiej pozdrawiam
To znaczy że jak chce wrzucić wartość 325 do adresu 433 to mam napisać: Liczba = 433 Czas = 325 Writeeeprom Czas , Liczba Tak ? Właśnie tak :wink: Piotrek Sz.
If zmienna<100 then Lcd " "; zmnienna 'Bez nieznaczącego zera Else Lcd zmnienna end if Lub If zmienna<100 then Lcd "0"; zmnienna 'Z nieznaczącym zerem Else Lcd zmnienna end if Trochę to jednak dziwne bo Lcd w Bascomie wyrównuje wyświetlanie do lewej. Będzie zatem w programie coś co powoduje inne zachowanie. Daj fragment programu...
Ok, już się uporałem: Dim Address As Byte , Command As Byte Dim Str_address As String * 3 Dim Str_command As String * 3 Do Disable Int0 Enable Interrupts Getrc5(address , Command) Command = Command And &B01111111 Call Lcdinit Str_address = Str(address) Str_address = Format(str_address , "" ) Str_command = Str(command)...
Witam, Tak jak w temacie zlecę wykonanie prostego programu na mikroprocesorze atmega32. Program ma za pośrednictwem 3 przycisków sterować wyświetlaniem diód lub wyświetlać coś na ekranie (np. sekwencje liczb). Kontakt: gg 4479324 e-mail: lodowabb(at)gmail.com
Najwięcej czasu procka zajmuje komenda LCD W tym przykładzie w pętli jest wyświetlanie danych w każdym przejściu pętli for - next ale jest to zrobione tylko do celów symulacji. Normalnie "wynik" wysyłany jest jako zmienna ustawiająca counter1 timera. W docelowym programie te zmienne wynikowe nie są wyświetlane, służą do czego innego. W zamieszczonym...
Witam Potrzebuję zaokrąglić liczbę zmiennoprzecinkową do liczby całkowitej (do późniejszego wyświetlenia na wietlaczu LED (rozbijanie liczby na pojedyncze cyfry działa poprawnie). Do tego celu wykorzystałem funkcję Round. Zgodnie z instrukcją Bascoma należy zrobić to tak: [syntax=vbnet] dim A as Long, B as Long A=Round(B) [/syntax] Rozumiem, że gdyby...
W ogóle skoro nie potrafisz odczytać tego co napisałem wyżej to znaczy że do końca nie rozumiesz co to tablica. Wyjaśnię najbardziej łopatologicznie. Wyobraź sobie, że tablica to pociąg z wagonami od 1 do 8. Każdy wagonik może przewozić daną liczbę. A cały pociąg ma swoją nazwę np. pociąg "Kopernik" Więc. Ds1(1)=9 Oznacza, że mamy tablicę o nazwie "Ds1",...
Do pinów 0-3 portu B mam podłączony pierwszy wyświetlacz, do 4-7 drugi,a do portu C, pinów 0-3 mam podłączony trzeci. Wyświetlacz oczywiście nie jest sterowany bezpośrednio z pinów, tylko za pośrednictwem sterownika 7447 na który muszę wysłać w kodzie BCD liczbę do wyświetlenia. Wersja z wyświetlaniem tego sekwencyjnie, zgodnie z tym co podałeś odpada,układ...
Bascom wiecznie żywy! Widziałem ogłoszenie "profesjonalnej" firmy, wymaganiem była znajomość BASCOM :-) Wracając do tematu, zera na "piechotę", można wygasić na wiele sposobów. Dla małych liczb, a z takimi mamy tu do czynienia można dać warunki if [syntax=vbnet] if( liczba < 10 ) .... else if( liczba < 100 ) .... else if( liczba < 1000 ) .......
Zdefiniuj zmienną Temp jako Word. Jak ci ma wyświetlić 600 jesli zmiena Byte może przyjąc max wartość 255. Właśnie powyżej tej wartości będą ci sie wyświetlać dziwne rzeczy. No to może wytłumaczę jak to zrobić na zmiennej typu Byte według wyżej wspomnianej ideii. $crystal = 4000000 $regfile "attiny2313.dat" Dim Pomiar As Single Dim Temp As...
Witam. Maiałem kiedyś do rozgryzienia pewien problem.Mierzyłem 10 czasów (badając 5 wejść procesora, 5 niskich stanw, 5 wysokich), które trzeba wyświetlać na LCD 20*2. Każdy z czasów ma się wyświetlać w 3 cyfrowej liczbie z pozycjonowaniem tych liczb do prawej. Maksymanie dane napływały co 150 mS tych 10 czasów. Wyświetlenie jednego znaku na LCD w Bascomie...
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...
OK, witam ponownie po braku odpowiedzi, wywnioskowałem iż nikt nie posiada żadnego prostszego i sprawdzonego sposobu na formatowanie liczb w postaci zmiennych typu WORD i BYTE. Zgodnie z tym założeniem, napisałem sobie programik, z zegarkiem i kilkoma menu. Z założenia powinno wyglądać to tak: timer przepełnia się dokładnie co 1s, wtedy zmienna SEK...
Witam, posiadam projekt skrzyżowania na w/w mikrokontrolerze. Potrzebuje dodać do niego wyświetlacz LED do wyświetlania prędkości z jaką trzeba opuścić skrzyżowanie.Będzie się ona zmieniała na podstawie wzoru v=s/t. Co do wyświetlacza to mają być tanie i najprostsze z możliwością wyświetlenia liczb od 0 do 99). Potrzebuje także dodatkowego skrzyżowania...
Zrobilem sobie termometr na mikrokontrolerze (BASCOM AVR) z wyswietlaczami LED. W celu wyswietlenia temperatury chce wykorzystac konwersje na kod BCD. Czujnik temperatury to oczywiscie DS1820, wiec np. temperaturze 24,3 st. odpowiada liczba 243. Problem w tym, że bascomowe polecenie MAKEBCD dziala z liczbami z zakresu 0...99. W jaki sposob mozna zaradzic...
No niestety to również nie działa: Z = Fusing(a , "#.##") Z = Format(z , "0000") Dalej jest wyświetlana liczba 1.26
Jeśli liczba sztuk będzie wzrastać to OK, ale przy przejściu ze 100 na 99 wyświetli 199. Może rezultat = FORMAT( zmienna , "maska" ) pomoże!
... Jak ktoś lubi Basic'a, to może sobie przerobić. Procedura przekształca zwykłego int'a w kod BCD, oczywiście zakres liczb jest od 0 do 9999. W Basicu z Bascoma , jest do tego gotowa funkcja x=Makebcd(x) , choć operuje tylko na Byte(unsigned char). Piotrek
Hm... najprostsze bez testowania transmisji to np: Najpierw ustawiasz mniejszą szybkość transmisji (wymaga sprawdzenia), ponieważ przykład będzie dla obsługi liczb w przerwaniu, co zajmie jakiś czas. Wysyłasz liczbe dwubajtową, w nadajniku zamieniasz ją na zwykłą dziesiętną i wysyłasz np w takiej sekwencji: A00123Z czyli znak 'A' (liczba 65) startuje...
Print Bin(a) poza tym zwykły print zawsze wyświetla liczby w postaci dziesiętnej (domyślnie) więc trzeba używać Bin(x) lub Hex(x)
W sumie można, lecz autor chciał mieć format byte, domyślam się że potrzebne to mu było do wyświetlania liczby na wyświetlaczach siedmiosegmentowych. Jeżeli tak, to Ciekawy jestem czy autor korzysta z lini Data i instrukcji lookup(), czy może z select case?
1) Zmieniłem na komórkę &B1001 i zapis jak i odczyt odbywa się poprawnie. Zarówno do tej komórki jak i następnej. (Zmienna typu word). 3) Tylko po co dodatkowo tworzyć dwie zmienne? Dodam, że do wyświetlacza podział zmiennej word na bajtowe nie jest używany. 4) Syf albo optymalizacja. Dając zmienne pomocnicze program działa tak samo. Problem nadal tkwi,...
aha czyli inny adres po prostu liczba zapisywana jest pod zlym adresem i przy tym kompilatorze ktory mam sam recznie musialbym adresowac? Przeczytalem ze niektore wyswietlacze 16x2 sa podzielone na dwie czesci 8x2 i przy konfiguracji wyswietlacza trzeba podac 16*2a. Moze tu tez jest ten sam problem? Mam raczej nienajnowsza wersje kompilatora takze moga...
Kolego coś takiego wymyśliłem :[syntax=vbnet] $regfile = "m16adef.dat" $crystal = 80000000 $hwstack = 40 $swstack = 16 $framesize = 32 Config Porta = Input 'port A jako wejścia Config Portb = Output 'port B jako wyjścia ' Config Portd = Input 'Port D Jako Wejścia Config Portc = Output 'port C jako wyjścia Config Sda = Portc.1 'konfiguracja pinu magistrali...
Dokładnie tak jak mówi sepako do wyciągania ostatniej cyfry najlepiej użyć dzielenia modulo, czyli "%" w C. Dostajemy w ten sposób resztę z dzielenia. Czyli 123%10 = 3; a więc cyfra jedności ;) Wyświetlanie dużych cyfr najlepiej zrobić w pętli. Za każdym razem dzielisz modulo przez 10 a następnie dzielisz normalnie przez 10. Pętle wykonujesz w zależności...
Jestem początkujący w temacie AVR'ów, niedawno zakupiłem zestaw uruchomieniowy (od GoTronika) No i rozpocząłem naukę, język C szybko mnie do siebie zniechęcił (Nie oszukujmy się jest trudny dla osoby początkującej) więc tymczasowo postanowiłem zająć się bascomem (A potem do C planuję wrócić). No ale dosyć tego wstępu :> Posiadam procesor ATMEGA 32 i...
Napisałem taki prosty program do rysowania na LCD graficznym przy użyciu panelu dotykowego, podłączonego do ADC: Wszystkie operacje matematyczne mogą być przeprowadzane na liczbach typu Single. Można także dokonywać konwersji (niejawnej) z typu Single na Integer lub Word, i odwrotnie: Dim I As Integer, S As Single S = 100.1 'przypisujemy liczbę zmiennoprzecinkową...
Witam, Podłączyłem sobie Wyświetlacz LED 7-segmentowy do mojego procka. I program wyświetla z 0,5sek opóźnieniem kolejne cyfry. Chcę zrobić tak, żeby szybkość zmiany diody była płynna (żebym w dowolnym momencie jeśli zewerzę pind.0 do masy prędkość wyświetlania liczb się zmieniła) W jaki sposób to zrobić? ? W jakim sensie ma być "płynna" ? Moż chodzi...
http://obrazki.elektroda.pl/7794468400_1... Witam. Chciałbym zaprezentować układ który zrobiłem, kilka dni temu. Inspiracją do zrobienia tego układu, był napisany przeze mnie kilka lat temu program w PHP, który losował liczbę, a my odgadywaliśmy tą liczbę. Jako, że od kilku miesięcy interesuję się uC, to postanowiłem zrobić coś podobnego....
W twoim programie wg BASCOM-AVR są błędy: Error : 42 Line : 31 Numeric parameter expected Error : 42 Line : 32 Numeric parameter expected Error : 124 Line : 32 LOOP expected Popraw program. Przepraszam za wcześniejsze błędy. Poniżej prezentuję poprawiony kod: [syntax=text] $regfile = "m8def.dat" $crystal = 16000000 $hwstack = 32 $swstack...
witam. Jeśli chcesz użyć mniejszego czasu opóźnienia to podawaj go w postaci waitus,czas czas po waitus oznacza mikrosekundy(1-65535). Pozdrawiam Dodano po 3 Cyfra(1) = liczba / 1000 'tysiące Cyfra(2) = liczba Mod 1000 Cyfra(2) = Cyfra(2) / 100 'setki Cyfra(3) = liczba Mod 100 Cyfra(3) = Cyfra(3) / 10 'dziesiątki Cyfra(4) = liczba Mod 10 'jedności spróbuj...
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...
Sprawdź czy przypadkiem nie ma błędu wynikającego z innego rozłożenia wyprowadzeń dla segmentów w wyświetlaczach . Chodzi o jedności i setki , bo liczba segmentów które świecą się zgadza , tyle że świeci inny segment . Zapal kolejno po jednym segmencie zmieniając tablice (label ) świeci ci tylko to co ma wartość zero zrób z 3 po kolei 0b11111110 , 0b11111101...
Mam liczbę np. 5813 i che ja zapisać w tablicy w postaci szesnastkowe int wynik Ale 5813 ma sie nijak (w sensie standardów liczbowych) do 0x6D, 0x7F, 0x06, 0x4F. 5813 dec = 16B5 hex. Nie ma w C wyimaginowanych konwersji na kody 7-seg. Musisz zrobić to na dra razy. 1. Skonwertować liczbę 5813 na łańcuch znaków. Zrobisz to przy użyciu sprintf. 2. Pobierać...
:arrow: hunterhouse Znalazłem troche błędów (a nawet błąd w BASCOMie '51 :D ), mam teraz trochę czasu, więc się tym zajmę. Dobrze było by, gdybyś narysował schemat, to zrobię ci sterowanie LEDami ze skalą logarytmiczną. Wrzucę też, kilka rzeczy, które będziesz musiał sprawdzić, bo nie wiem jak działają w BASCOMie AVR (albo ściągnę BASCOMA :D , jeszcze...
Dobra zgodnie z zapowiedzią mały porządek w poście. Jak widać na załączonym obrazku procedura wreszcie mi działa tak jak trzeba. Problemy wynikały z mojej sklerozy :yes: , procedury tego typu pisałem jakieś 2 lata temu i się zapomniało to i owo o BASCOM. http://obrazki.elektroda.net/46_12498402... A oto kod samej procedury: 'zmienne const null...
A możesz skontaktować się ze mną na gg?? Wytłumaczyłbym Ci trochę, bo tak trudno trafić, co już wiesz a czego jeszcze nie!! Wszystko w zasadzie można wyczytać z pdf-a, opisującego PCF8583, do pobrania ze strony Philipsa. Ogólnie mogę powiedzieć tak: 1. Rok: Właściwe rejestry zegarowe PCF8583 nie przechowują całej liczby oznaczającej rok, a jedynie cyfrę...
To znaczy że ty masz rzeczywiście inny niż ja ale się tym nieprzejmuj. Ściągnij sobie manuala do hd44780 i tam jest taka tabelka z komendami. Jestw niej tam taka sekcja przy ustalaniu trybu(4 bitowy) i jeszcze takie dane Jak N - liczba wierszy i F rodzaj wyświetlania(5x8 lub 5x10). F zostawiasz na 0 a N dajesz 1(dla dwuliniowego). Nie martw się jak...
Witam! Mam problem z wyświetlaniem liczb na 5 wyświetlaczach LED. Docelowo ma to być wyświetlacz sterowany poprzez RS232 i wyświetlający liczby z zakresu -999 do +29999. Na razie jednak zatrzymałem się na etapie samego wyświetlania. Problem polega na tym, że co jakiś czas pojawiają się "śmieci" na wygaszonych segmentach , czasami także zapalona cyfra...
Witam, Zaciekawił mnie projekt "loopera" dla gitarzysty. Ciekawym rozwiązaniem jest zastosowanie specyficznego wyświetlania jednej cyfry na czterech prostokątach wyświetlacza LCD - eliminuje to potrzebę aplikowania dodatkowego "czytelnego" wyświetlacza zbudowanego z siedmiosegmentowych wyświetlaczy LED w urządzeniu. Czy ktoś może mi powiedzieć jak można...
Jak można w Bascom x51 zmieniać (przesuwać) długość liczby wyświetlanej na LCD. Przykładowy program przedstawia problem. Jak przechodzę z liczby 100 na 99 to pozostaje nie potrzebne zero na wyświetlaczu , a jak przechodzi z 10 na 9 to pozostają dwa zera. Kolejny problem którego chcę się pozbyć to kreska za wyświetlaną liczbą „_”. Dim I As...
Witam Piszę do was bo nie mogę rozpracować histerezy w poniższym kodzie programu. Program działa prawidłowo ale jest mały problem. Histereza zawsze działa, a raczej jej brak (załączanie i wyłączanie) działa równo przy 30 stopniach. Potrzebuję aby histereza była ustawiona na 5 stopni. Proszę pomóżcie mi wyeliminować ten problem. Program musi mieć funkcję...
Dzień dobry. Jestem zielony jeżeli chodzi o podczerwień. Atmega 8 - taktowanie 8MHz, nadajnik (zwykła dioda ir wymontowana z pilota) podłączony wprost do zasilania (5V) poprzez rezystor 680ohm. odbiornik(scalony odbiornik podczerwieni wymontowany z telewizora) podłączony wprost po portd.0 . Odbiornik z nadajnikiem są oddalone od siebie o jakieś 2cm....
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...
Witam Mam drobny problem a od godziny szukam już odpowiedzi i nic. Jak poprawnie wyświetlać na LCD wartość zmieniającą się w zakresie np 0 do 99 Chodzi o to, że wyświetlam godzinę gdzie wartości są liczbami 1 cyfrowymi to mam taką postać 15:4:6 zamiast 15:04:06
Witam! Jak w temacie, mam urządzenie, któro daje mi w efekcie końcowym wyświetla mi liczby na LCD przy użyciu komendy LCD Sequence, i nie było by problemu gdbyby nie to, że cyferki są za małe a muszą być widoczne, czyli chciałbym przy użyciu wyświetlacza LCD 4x16 przerzucić te 4 liczby co mi się wyświetlają na ekran 4x16 w opcji fulltext czyli tak:...
To nie zależy od rodzaju układu RTC. Po prostu wyświetlasz to jako zwykłą liczbę, więc odcina zera na początku.
No coż dla M32 te funkcje ponoć działają w symulatorze ale chyba tylko dla niego i bardziej popularnych. Nie zawsze mam czas i ochote podłączac oscyloskop by sprawdzić kto sie myli: ja symulator czy pdf Nie wiem jak Wam ale mi nowa wersja AWRStudio nie za specjalnie leży, ładniej wygląda ale straciła na funkcjonalnosci. np nie jest nigdzie wyświetlana...
Witam. Udało mi się zdefiniować wszystkie liczby. Każda liczba to nowy podprogram, definiujący jakie znaki mają się pojawić w danej liczbie. Jak stworzyć program, który wyświetli np datę, temperaturę - ogólnie ciąg cyfr. Pierwsza cyfra na ekranie pokazuje sie w całości, następne niestety znikają poza ekranem albo robią się krzaczki kiedy wywołam po...
Witam Mam problem z właściwym liczeniem i wyświetlaniem wyniku (LED 7-segm.). Liczy procent czasu włączenia urządzenia (licz_minuty_triaka) w stosunku do czasu działania (licz_minuta_stat). Standardowo, jeśli nie dochodzi inny warunek to urządzenie chodzi 3 min. co 2 godziny, zatem wynik powinien oscylować wokół 2,5%. Wynik ostateczny z bascoma - liczba...
Najprościej zrobić to tak: wyliczasz napięcie z proporcji, ale nie do 20 tylko do 2000. Następnie dzielisz to przez 100 a wynik zapisujesz do liczby całkowitej - masz to co przed przecinkiem. Potem mnożysz to przez 100 i odejmujesz od pierwotnego napięcia - masz to co po przecinku. Wyświetlasz tak jak napisałeś. LCD przed_przecinkiem;",";po_przecinku;
Może stąd że nie czyścisz wyświetlacza przed wyświetleniem nowej wartości. To było przyczyną, sądziłem że funkcja itoa konwertując liczbę jedno czy dwucyfrową na tablicę znaków char (kilkuelementową) puste pola wypełni białymi znakami. Nie dzieje się tak, to co wydawało się być skonwertowaną liczbą w rzeczywistości zawierało śmieci z poprzedniej liczby...
Zastanawia mnie ten problem z 7805, o którym piszesz. Przecież on ma wydajność prądową 1A. Wyświetlacze LED to w najgorszym możliwym wypadku 7*3*20mA = 420mA, ale nie pobierały tyle, bo są multipleksowane. Reszta układu to pomijalna ilość mA. Jedyne, co może pobierać większą ilość prądu w Twoim projekcie, to wyświetlacz LCD, a konkretnie jego podświetlenie....
Czy jest funkcja szukania samych cyfr z buforu rs232? To są odpowiedzi z modułu SIM800. Bazuję na czymś takim: If Pinc.3 = 0 Then Waitms 750 Print "AT+CCLK?" ; Chr(13) ; 'zapytanie o datę i czas Waitms 50 Date_str = Mid(odb_txt , 20 , 8) Time_str = Mid(odb_txt , 29 , 8) End If Ale coś się dzieje i nawet wyświetla litery z odpowiedzi modułu. Da się jakoś...
Podaj schemat bo może coś nie tak z podłączeniem. Jeszcze kilka spraw. Podciągnij programowo INT0 Robisz dziesięć pomiarów, a wyświetlasz tylko jeden. Możesz z tym coś zrobić np. zwiększyć czas "łapania" lub cześciej wyświetlać. Zrezygnuj z array, bo mi w symulatorze coś nie chciało to działać. Zamiast tego użyj drugiej zmiennej typu byte. Proponowałbym...
Jeśli zdecydujesz się na Bascoma to jest książka "Programowanie mikrokontrolerów AVR w języku BASCOM" Marcina Wiazani. Znajdziesz tam wszystko co początkującemu przydać się może. Jest schemat prostego programatora, schematy podłączenia podstawowych elementów do uC. Książka omawia w miarę nowoczesny mikrokontroler ATMEGA8 - najrozsądniejszy (również...
Popełniłem taki oto kod jak poniżej. W założeniu ma to być zegarek stawiany pilotem, oraz z dwoma DS18B20. Założyłem sobie, że nie użyję żadnego Wait, ani Gosub. Mam jednak jeden problem z odświeżaniem czasu na LCD. Niby dwukropki migają co sekundę, ale sekundy nie są wyświetlane poprawnie. Przez pewien czas jest niby dobrze, ale czasem jakby pomija...
Zaraz dokonam kilku kosmetycznych zmian i ponownie dodam enable timer2. Dam znać o efektach Dodano po 13 Do dyspozycji mamy nastepujący kod, który generalnie już działa (z małymi wadami) Dodano po 4 Czy obecnośc obliczeń w obsłudze przerwania może dawac taki efekt? Dodano po 14 Kolejna wersja kodu z obliczeniami w pętli głównej. Nie zmieniło to działania...
Hmm, to znaczy że bym musiał uruchomić drugi timer (8 bitowy). Z tego co pamiętam, to przy maksymalnym dzielniku wychodzi 1 albo 2 sekundy. I w momencie przepełnienia sprawdzać prędkość? Co do pokazywania zer to ogarnąłem wykrywając przepełnienie timera 3 i w tym momencie wyświetlanie zer. cóż wiem , że program pewnie wg Ciebie (z resztą wg mnie też)...
Próbowałeś zrobić algorytm, który zamiast odczytywać tablice z pamięci będzie je generował? Nie do końca wiem jak to zrobić, choć mam pewien pomysł. Nie mogę realokować raz już zdeklarowanej zmiennej tablicowej i np przydzielić jej więcej lub mniej pamięci albo zmienić liczbę komórek. Gdybym natomiast wykorzystał bascomowe polecenia PUT i INP w celu...
wszystkie zmienne (te do wyświetlacza[setki,dziesiatki,jednosci] i ta wyświetlana liczba) powinny być tego samego typu np word lub integer Dim Setki As word Dim Dziesiatki As word Dim Jednosci As word Dim Wart As Word
Ja traktuję liczbę stałoprzecinkową jako liczbę całkowitą gdzie sam ustalam w którym miejscu ma być przecinek ale tylko gdy przychodzi do wyświetlania. Działam na C dlatego taki przykład dam:[syntax=c]int zmienna; zmienna = 945 + 57; //np. 9,45 + 0,57 lub 94,5 + 5,7 zmienna = 2458023; //np. 24,58023 lub 2,458023 // zależny jak liczbę tą potraktujesz...
Witam Chciałem zapytać, czy możliwa jest zmiana nazwy pliku w którym zapisują się wyniki - np co dziennie inna nazwa pliku ( np. powiązana z datą ) ? Używam PCF8583 i w sumie mógłbym brać informacje z zmiennych dnia i miesiąca lub dokonywać zmiany o 23:59:59. Używam standardowego kodu do zapisu: Sub Write_to_sd() Local Errorcode As Byte ''()...
Cześc Ludzie podpowiedzcie jaka jest komenda w bascomie, aby wynik był wyświetlany trzy miejsca po przecinku Np. 1,235 3,483 Dzięki.
Dzięki za podpowiedzi teraz wiem że double jest liczbą zmiennoprzecinkową i występuje jako liczba dodatnia jak i ujemna. Teraz zostaje tylko przeliczanie na liczbę ........... a to mi się wydaje jak na razie nie tak proste. To znaczy że nie wiem jak się za tą double zabrać. A może na początek bym się musiał nauczyć jak zamienić liczbę Integer (2bajty)...
... Jutro zrobię ten układzik na kawałku uniwersalnej i zobaczę czy działa, narazie dzięki za pomoc i dobranoc :D Mnie natomiast zastanawia, dlaczego podałeś $crystal = 8000000 , a nie np. $crystal = 3000000 czy też dowolną inną liczbę :?:
na wyświetlaczu wskazane jest 9999 dlatego iż zostaly odwrucone wartości wyświetlanych lczb, aby timer liczący do przodu wzkazywał liczby do tyłu
wyświetlanie liczb wyświetlanie liczb binarnych wyświetlanie liczb przecinku
arduino termometr ds18b20 wykorzystać wyświetlacz radia kondensator pobór prądu
silnik kohler teltonika konfiguracja
Podwyższone obroty biegu jałowego w Daewoo Lanos 1.4 Naprawa żelazka Singer SNG DO5.22: Diagnostyka i Rozwiązania