Error 10:Wrong type(bit,byte,integer,word,or string)
Mam pewnien problem. W c jest taka zmienna jak integer (int). Jesto to zmienna 1 bajtowa w procesorach 8 bitowych, moze przyjmowac wartosci od -128 do 127. W bascomie nie ma takiej zmiennej. Wiadomo nie jest trudno napisac odpowiedni program, ktory by mi to przeliczal. Tym bradziej, ze bede i tak musial zastosowac bascomowa zmienne typu integer/long,...
Lepiej zmień deklarację T As Word na T As Integer - zmieniono zobacz czy bit całkiem po lewej to jedynka. - Jest 1 Zmieniłem na bit 16 i error w tej linijce. Dim Tempw1 As Integer Dim Tempstr As String * 20
Ja bym dał Integer żeby nie działy się cuda jak temperatura zechce być ujemna.
Przetwonnik zlicza napięcia tylko do 2047, pokazując ujemne napięcie nie ma znaku minus i wartość, tylko np 65320. Czyli przetwornik zwraca wyniki w kodzie U2. Tam nie ma znaku minus. Jest za to przesunięcie poziomu. Najprościej mówiąc, zastosowanie takiej funkcji do konwersji: Napiecie = Zmierz1 * 256 Napiecie = Napiecie + Zmierz2 da Ci złe wyniki....
O kurde zapomniałem :D Jeszcze raz przepraszam. Używam ATTINY 2313 a jako czujnik DS1820 A tu program: Config 1wire = Portd.5 : Dim Odczyt(2) As Byte , A As Byte , Dim T As Integer , Tmin As Integer , Tmax As Integer Deflcdchar 1 , 4 , 14 , 21 , 4 , 4 , 4 , 4 , 32 Deflcdchar 2 , 4 , 4 , 4 , 4 , 21 , 14 , 4 , 32 Do 1wreset : 1wwrite &HCC : 1wwrite...
Witam. Potrzebuję informacji czy w bascomie można wykonywać operacje typu zmienna1*zmienna2 lub zmienna1=zmienna2 gdy jedna zmienna jest np.typu integer a druga long?, gdy zawierają liczbę która mieści się w zakresie dozwolonym dla obu?. Jeśli ze zmiennej long zrobiłem licznik zliczający w obie strony a później próbuję po pewnym okresie zliczania przypisać...
Nie zmienia, bo masz błąd w innym miejscu. Dokładnie to miałem na myśli-że błąd jest gdzieś indziej. Zastanów się, co oznacza nazwa trybu CTC (?) – w ang. jest to ‘Clear Timer on Compare’ (pol. - wyzeruj zawartość licznika/timera, gdy jego zawartość jest równa wyznaczonej z góry i ustalonej, bądź to wyliczonej jakiejś wartości w zmiennej...
w bascomie to sie robi bardzo prosto dim var1 as integer ' lub word jesli nie trzeba ujemnych liczb dim var2(2) as byte var1 = Makeint(var2(1) , var2(2)) a wszystko dokladnie jest opisane w polskim helpie do bascoma :)
[quote="zumek"]Drogi kolego Tomotron, oto lekarstwo na Twoją duszę :wink: W menu Options->Compiler->Misc jest sobie takie coś jak Byte End(hex) więc ustaw sobie tam wartość np.50 i po ptokach ,a jak by to było mało, to walnij ze 60 lub lepiej 70 i masz skompilowany program.Żeby nie ustawiać stosu za wysoko, to wartość "Byte End" trzeba tak ustawić żeby...
[syntax=vbnet][/syntax]Witam; Małe pytanko odnośnie wyświetlania wyników - dokładniej chodzi o temperaturę ujemną [syntax=vbnet]1wreset 1wwrite &HCC 1wwrite &H44 Waitms 750 1wreset 1wwrite &H55 1wverify Dsid1(1) If Err = 0 Then 1wwrite &HBE T = 1wread(2) T = T * 10 T = T / 16 S = Str(t) S = Format(s , " 0.0") Lcdgoxy 1 , 3 Lcdstr S , 2 , 0 Lcdupdate[/syntax]...
Widzę że kolega And! nigdy nie programował w Bascomie, otóż ten język nie przyjmuje aż tak skomplikowanych działań. Trzeba prościej. Zważając na to że integer to także liczby ujemne sugeruję taki oto kodzik: Dim A As Integer , C1 As Byte , C2 As Byte , C3 As Byte , C4 As Byte , C5 As Byte Dim Temp As Integer , Znak As Bit A = -31945 If A < 0 Then...
Pomyśl trochę nad "sprytem" kodu :D Chodzi mi o to że kiedy widzisz powtarzające się linijki kodu to powinieneś pomyśleć "czym one się różnią" i tylko te różnice napisać osobno a wszystkie powtarzające się sprawy napisać tylko raz. Po co tyle tych Locate 1,1 . Przeciez i tak i tak będziesz tę linijkę rysował od 1,1 zawsze, chyba że inaczej podejdziesz...
Jaka jest najmniejsza i największa temperatura jaką mierzy ten czujnik oraz jaka jest najmniejsza i największa temperatura jaką chcesz zmierzyć? Pokarz schemat jak masz wpięty ten czujnik. Jaki schemat? Toż to 2 kabelki, jeden do uc drugi do GND przez 100nf. Zakres jaki chcę uzyskać to 10°C-120°C. temp = 60 + (600 - wartosc)/10 To działa ale...
dane(k) - to dane wejsciowe dla DFT i one musza być ze znakiem Sample(k) - to dane z przetwornika ADC (8bitowe) Poziom - średnia z wszystkich próbek czyli poziom masy ja wszysstki obliczenia robiłem na liczbach integer czyli 16 bitowe za znakiem czyli -32768 do 32768 i to starczyło .GCC cos kaszani z ujemnymi. ludzie nazekają na bascoma a on jest naserio...
Tu masz działający i uproszczony do max kod do obsługi ds18b20 (wyświetla temp na wyświetlaczu) [syntax=basic4gl] I = 1wread(2) S = I / 16 T = Fusing(s , "##.#") Locate 1 , 1 Lcd "Temp:" ; T ; Chr(0) ; "C" [/syntax] tu masz dokładnie objaśnione co i jak: [syntax=basic4gl]Do 1wreset 'reset 1wwrite &HCC 'jedna kostka, więc wykorzystujemy rozkaz SKIP ROM...
Prosiłabym o wyrozumiałość i pomoc w nakierowaniu mnie na rozwiązanie problemu. Spróbuję nakierować :) Jeśli zapis ID do eeprom ma być jednorazowy, w kodzie programu deklarujesz (wcześniej innym programikiem i LCD odczytane) ID $eeprom Termometr2: 'nr seryjny termometru 1 Data 40 , 25 , 0 , 133 , 2 , 0 , 0 , 196 Termometr1: 'nr seryjny termometru...
Czy można przez konwersję BCD wyciągnąć znak (temperatura dodatnia/ ujemna) Wynik zczytywany jest do zmiennej Integer(nie Single, żeby od razu odciąć część ułamkową) dalej poprzez BCD uzyskuję liczbę dziesiątek i jedności. Wszystko działa tylko jeśli temperatura spadnie poniżej 0, zaczyna liczyć od końca. W jaki sposób można oddzielić znak "-" ze zmiennej...
Witam. Sorry ale chyba nie za bardzo zrozumieliście problem. Mierzę temperaturę i wynik otrzymuję w postaci zmiennej Byte (temperatura) i jej znaku (zmienna Bit, 1- jeśli temp. ujemna). Muszę wyznaczyć maksimum i minimum tej temperatury (z wielu pomiarów uzyskiwanych w ciągu doby). Oczywiście najprościej byłoby temperaturę odczytaną z Dallasa zapisywać...
A rodzaj zmiennej ma znaczenie w tym przypadku? Bo kombinuje i z byte i integer. Zdecydowanie ma , a także znak liczby.Jeżeli spodziewasz sie pomiaru temperatur ujemnych, to całe Twoje obliczenia temperatury i podzielenia je na "cyfry" , biorą w łeb :| Radzę poeksperymentować w symulatorze - można nieźle się z(a)dziwić :)
Wczytaj dane z DS do tablicy dwuelementowej Byte, a później oba bajty wtłocz do zmiennej integer albo word np. przez Makeinit. Dla temperatur tylko dodatnich można użyc zmiennej word , natomiast jeżeli wystąpią temperatury ujemne bezwzględnie trzeba zastosowac tu zmienną interger ; inaczej wystąpią absurdalne interpretacje odczytów temperatury. Dla...
Wiem wiem ja prosty wy nie ale to mój pierwszy program napisany po 2 dniach doświadczeń z bascomem i atmegą. Poza tym i tak ma błędy w inicjowaniu lcd bo za pierwszym razem nie zadziałał. Poszedłem za radą kolegi i chcę wyciągnąć z niego podprogramy po czym program główny zrobić tylko na zmiennych. Po wstępnej analizie znalazłem tam baaardzo dużo opasłych...
Mam problem jestem początkujący napisałem program który ma za zadanie regulować włączanie wiatraka i czas z jakim ma dmuchać , jednocześnie mierzy temperaturę i nie działa tak jak powinno : Temperatura pokazuję co jakiś czas błędny pomiar np 124 , 32 , 98 procek się resetuje chińskie znaki raz na jakiś czas w programie można było ręcznie zmieniać czas...
Chwilowo straciłem ten kod postaram się go znaleźć ale opierałem się na projektach z internetu. No bez jaj. Na 99% nic nie masz tylko czekasz na gotowca. Ale dobra, zlituję się na święta :D Pomijając całą beznadziejność kodu do multipleksowania wyświetlacza, takie coś powinno działać: $regfile = "ATTiny2313.dat" $crystal = 8000000 Dim Jednosci...
Mam jakas liczbe WEJ ktora sie zmienia i poszukuje jej wartosci najwiekszej MAXX oraz najmniejszej MINN. Liczba jest typu integer i przyjmuje wartosci dodatnie oraz ujemne- chodzi o temperature i zapamietanie wart min oraz max. Zrobilem cos takiego: If Maxx < wej then Maxx = wej End If If Minn > wej then Minn = wej Else End If Nie dziala poprawnie...
witam problem raczej standardowy bym powiedział :) zakładam, że wolisz wersję skróconą bez wykładu a dlaczego tak itd :D 1wreset 1wwrite &HCC 1wwrite &HBE Odczyt(1) = 1wread(2) T = Makeint(odczyt(1) , Odczyt(2)) Tspr = T T = Abs(t) T = T * 10 : T = T / 16 Przecinek = T Mod 10 T = T / 10 1wreset...
Tzn. wiem, że zmienna typu bajt nie może być większa niż 255, ale zapomniałem, że nie robi się operacji na różnych typach zmiennych razem [syntax=vbnet] Solar_mid_mod_temp = Solar_mid_mod_temp \ 2 ' srednia z dwoch czujnikow = 283 [/syntax] co prawda przekracza 255, ale wynik z dzielenia przez 10 i Modulo 10 już nie, czyli 28 i 3 [syntax=vbnet] Solar_mid_dec...
1) Możliwe że zmienna T ci się przepełnia, spróbuj ją zmienić z integer na word 2) Unikaj ułamków, np 23.58 lepiej wymnożyć przez 100, wykonać działania i na samym końcu podzielić przez 100 niż działać na przecinkach. Staraj się nie używać ujemnych liczb. 3) Zrób drugą wersję tego programu - przyklej z obecnego absolutne minimum i obserwuj działanie....
Witam. Naskrobałem coś takiego: Dodano po 33 Aha, jeszcze dwa pytania. Czy DS może być blisko kwarcu? Mam go wlutowany ok. 1cm od kwarcu. Jaka jest żywotność pamięci eeprom w DS? 100000 zapisów jak w przypadku Atmega, czy więcej? Odczytuję temperaturę co pięć sekund i martwi mnie obecność eeprom w DS.
Problem leży po stronie scalania danych - wartości tmp_accx(1) i tmp_accx(2) nie mogą być dodane do siebie. Należy pamiętać że są to dwie połówki zmiennej typu integer, wartość tmp_accx(2) należy pomnożyć przez 255 lub przesunąć w lewo o 8 pozycji. Następnie obie połówki łączymy instrukcją OR (+ tu nie zadziała gdyż w przypadku liczb ujemnych będą głupoty)....
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)...
procesor maga8 nie wyswietla bledow w bascomie-avr dziala niby poprawnie... wiec problem jest taki: temperatura ok. gdy na port Pc.1 podam stan wysoki 12v przez stabilizator 5v nic sie nie dzieje tak samo jak z reszta ktora jest pod linia ------------- zaczynam dopiero zabawe wiec nie mam pojecia co z tym nie tak na dodatek nie wyswietla bledow:) ale...
Witam. Dostałem 4 sztuki ds18b20 w samplach i konstruuję termometr do szkoły. Napisałem program,udało mi się połączyć z czunikami i wyświetlić temperaturę na LCD,wszystko było ok. Oba czujniki miałem zamontowane na płytce prototypowej(mam na niej zmontowany cały układ). Po pierwszych testach przylutowałem do jednego czujnika skrętkę o długości ok 30...
Przejrzałem naszą dyskusję i zajrzałem do dokumentacji Bascom i moim zdaniem masz w swoim programie problemy z arytmetyką i typami danych W Twoim programie ma miejsce następujący tok obliczeń: 1. pobierasz z ADC dwie liczby 8-bitowe w zakresie 0..255 każda (bez znaku): Pomiarl i Pomiarh 2. następnie dokonujesz podstawienia: Dodano po 3 I jeszcze jedno:...
Witam Próbuje przerobić kod obsługujący kilka DS18B20 na jednej linii i drugi obsługujący kilka DS18B20 na kilku liniach. Niestety jak na razie efekt jest taki, że działa tylko pierwsza linia, czyli dwa DS18B20. Jeśli chodzi o konfiguracje, to celowo nie ma Config 1wire = Porta.1 gdyż wpisanie tego portu, jako 1WIRE powoduje wyświetlanie 0.0 dla pierwszego...
Witam Używam Attiny2313 do pomiaru dwóch temperatur z DS18B20. Wynik ( Integer ) przesyłam bez żadnej obróbki przez UART przewodem 40 cm do Atmega328. Atmega rozbija odebrane dane i jest obróbka Kod Attiny2313 $regfile = "attiny2313.dat" $crystal = 8000000 $baud = 4800 '********************* Konfiguracja magistrali 1-Wire Config 1wire = Portd.5...
$regfile = "m8def.DAT" 'deklaracja procesora, w tym wypadku Atmega16 $crystal = 8000000 'deklaracja cześtotlwiości pracy 'Deklaracja portów od wyświetlacza LCD Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc.0 , E = Portc.4 , Rs = Portc.5 Config Lcd = 16 * 2 Cursor Off '**** Termometr **** Config 1wire =...
Antystatyk - co oznacza że nie działa? Skąd wiesz że nie działa? Testujesz to na procesorze czy w symulatorze bascoma? 1) wywal "Enable Timer2" ponieważ już w TIMSK aktywowałeś przerwanie 2) wstawiasz w przerwanie komendę PRINT (robisz sobie jaja) i twierdzisz że nie działa. A wiesz ile czasu zajmuje wykonanie się tego? 3) jeśli mimo wszystko testujesz...
Mam maly problem ze zliczaniem czasu stanu niskiego na pinie INT0. Napisalem programik ale nie chce on liczyc czasu. A zmienna Ilecykli czasem zawiera wartosci ujemne, i ogolnie pokazuje jakies nieprawdziwe wartosci. bede wdzieczny za pomoc $regfile = "m48def.dat" $crystal = 8000000 $baud = 4800 Config Timer1 = Timer , Prescale = 1 On Timer1...
1wreset 'reset 1wwrite &HCC 'jedna kostka, więc wykorzystujemy rozkaz SKIP ROM 1wwrite &H44 'dokonaj konwersji Waitms 750 'przeczekaj czas konwersji 1wreset 'reset 1wwrite &HCC 'rozkaz adresowy SKIP ROM 1wwrite &HBE 'rozkaz funkcyjny - polecenie odczytu DS18x20 Odczyt(1) = 1wread(2) 'odczytaj dwa pierwsze bajty T = Odczyt(2)...
Witam! Jako że zaczynam dopiero z bascomem mam mały problem z napisaniem sensownego kodu do termometru. Na tą chwilę z materiałów znalezionych w internecie udało mi się zlepić coś takiego: $regfile = "m8def.DAT" 'deklaracja procesora, w tym wypadku Atmega8 $crystal = 1000000 'deklaracja cześtotlwiości pracy (wew oscylator 1MHz w zupełności...
Witam ponownie Zrobiłem to przez Timer0. Jednak problem z aktualizacją wyświetlania dalej występuje. Jeszcze drugi problem to start, przez okres zdefiniowany zmienną Licznik ( teraz równą 300 ) nic się nie wyświetla - dopiero po czasie = 300. Próbowałem również z Enable/Disable Interrupts na czas pomiaru, ale nie było żadnego efektu. Mam takie pytanie...
Procek to At89S8252 napisane w Bascomie. Korzystałem z tego . Dim Disp4 As Byte Dim T As Integer Dim T1 As Integer Dim Bd(9) As Byte Dim Tmp1 As Integer Dim Tmp2 As Integer Dim Tmp3 As Integer Declare Sub Showmetemp Declare Sub Read1820 Anoda1 Alias P3.7 Anoda2 Alias P3.5 Anoda3 Alias P3.4 Anoda4 Alias P3.3 '***************************************...
If I3 > 0 Then .Nie wiem właśnie, w którym miejscu robię błąd, bo w sumie przepisuje wynik pomiaru do I3 i procedure If, then, else, end if.
Czy sprawdzałeś błędy w swoim programie ? Tak na szybko to: Zmienne otw i zam mają taką samą nazwę jak sub katalogi otw : i zam : Dłaczego typ zmiennych stosujesz jako Integer? Czyżby były też ujemne ? Trochę zmieniłem, sprawdź go. [syntax=basic4gl] $regfile = "m8def.dat" 'korzystamy z AMTEGA8 $crystal = 1000000 Dim Rezl As Integer 'napięcie z rezystora...
ok tadzik juz dziala :D Pomogles znaczy doradziles z tymi fusebitami Nalaeza ci sie te pkt ale jak bys jeszcze pomogl mi w polaczeniu tych kodow : $regfile = "m8def.dat" 'informuje kompilator o pliku 'dyrektyw mikrokontrolera $crystal = 8000000 'informuje kompilator 'linia PB2 jako wejściowa Config Lcd = 16 * 1a 'konfiguracja typu wyświetlacza...
Tego fragmentu zdania , nie jestem w stanie pojąć I tu się nie dziwię. Za co przepraszam i postaram się wyjaśnić co miałem na myśli W Czasie przeszukiwania forum znalazłem taki kod konwersji T = Makeint(odczyt(1) , Odczyt(2)) 'zrób z dwóch bajtów jednego integer'a Tspr = T 'teraz sprawdzam jaki jest wynik 'interesuje nas tylko...
Jest program napisany dzieki waszej pomocy. A tu program w razie jakiś błędów piszcie. Config Portb = &B11111111 Portb = &B11111111 Config Portd = &B1111111 Portd = &B1111111 Config 1wire = Portd.5 : Dim Odczyt(2) As Byte , A As Byte , T As Integer Do 1wreset : 1wwrite &HCC : 1wwrite &HBE 'odczyt z DS1820...
Wszystko działa dobrze, dokładnie tak jak napisałeś :-) Syfy w programie: 1) A jako integer, powinno być jako byte (pwm 8 bit) lub word (16 bit). Tutaj to nie powoduje błędu ale dobrze by było nie używać zmiennych mogących być ujemnymi, ponieważ PWM może mieć wartości tylko 0 lub dodatnie. 2) Enable Timer 1 - nie jest potrzebne bo nie używasz przerwań,...
Shift pozwala szybko dzielić lub mnożyć tylko przez kolejne potęgi dwójki czyli, żeby się nie rozpisywać ograniczę się do bajtu :2,4,8,16,32,64,128 i 256 Ten Shift tam nie musi zostać. Umieściłem go tam bo liczba przez którą Ty dzieliłeś była potegą dwójki :D Shift Zmienna, Right, 1 ' podzieli ją przez dwa Sgift Zmienna, Right, 4 ' podzieli ją przez...
Mam problem z komunikacją 1wire i jej kolizją z przerwaniami zewnętrznymi. Próbowałem wyłączać przerwania zewnętrzne na czas obsługi 1wire efekt jest taki, że temperaturę odczytuje bezbłędnie, niestety rozjeżdża mi się przerwanie zewnętrzne. Gdy, nie wyłączam przerwań zewnętrznych na czas obsługi 1wire program po czasie się wysypuje. Przerwania zewnętrzne...
Witam. Mam termometr na Atmedze8, program napisany przez kolegę Ducha. Chciałbym dodać funkcję zapisu do eepromu najniższej zarejestrowanej temperatury przez termometr, lecz nie jest to możliwe ponieważ ostateczny format temperatury zapisywany jest w zmiennej typu string. Program ma porównywać, czy aktualna temperatura jest mniejsza od zapisanej w eepromie,...
Dzięki za wszystkie opinie :) Gdzie kolega kupuje ten szary laminat? Kupiłem go na znanym portalu aukcyjnym od użytkownika "elektrotech". Można prosić o kawałek kodu gdzie jest regulator P i opis? Nie jestem zwolennikiem dawania gotowych programów, bo to prosta droga do bezmyślnego kopiowania, ale do czegoś tak prostego mogę chyba zrobić wyjątek :)...
Witam Na wstępie chciałbym zaznaczyć iż jestem początkującym programistą i dlatego proszę o wyrozumiałość. Robię termometr na lampach nixie, ale nie działa mi poprawnie komunikacja z ds18b20 i ds1820. Problem polega na tym, że na lampach pokazuje się wartość -00.1 tak jak by wyjście czujnika było zwarte bezpośrednio z + , a nie jest . Czujnik jest podpięty...
Witam[syntax=basic4gl]' ----------------------------------------... ' The support for this display has been made possible by Peter Küsters from (c) Display3000 ' You can buy the displays from Display3000 or MCS Electronics ' ----------------------------------------...
Znalazł się znawca od przesuwania liczb i bitów ! Zrobiłem juz wiele sterowników używając nie jednego, dwóch a nawet więcej liczby ds'ów i zawsze działa bezbłęnie, nie tylko w BASCOMIE. A Ty Piotrusiu trochę pokory. Co za problem z przesuwaniem liczb zakodowanych w U2 ? Nie rozumiem . Z podziałem przez 2 i shiftem to zwyczajna literówka oczywiści powinno...
Witam - mam prośbę do czytających o pomoc w dokończeniu programu - jest to program w Bascomie - regulator różnicowy - chodzi mi aby program oprócz regulacji zamykania i otwierania zaworu kulowego z napędem elektrycznym przełączył port P3.3 w stan wysoki po przekroczeniu 90 st. C na T4 oraz aby po obniżeniu poniżej 90 st.C na tych porcie pojawił się...
Witam, Na wstepie zaznaczam, ze uklad (przynajmniej na pierwszy rzut oka) dziala poprawnie. Moje pytanie wynika z tego, ze nie mam gdzie sprawdzic czy dobrze odczytuje mi znak kiedy temperatura jest ujemna. Z dokumentacji czujnika wynika ze jezeli bity znaku tj od 15-go do 11-go sa wyzerowane to temeratura jest dodatnia a ujemna w przypadku gdy ustawione...
Tak, AVCC jest podłączone. Program w Bascom: http://obrazki.elektroda.pl/8556711100_1... http://obrazki.elektroda.pl/5791017800_1...
1) Mam najnowszego Bascoma 2..cośtam, ten w którym są błędy w emulacji LCD, formatowaniu kodu na ekranie itp. 2) Nadal nie wstawiłeś tej rozszerzonej definicji LCD. Działa ci tylko dlatego że domyślnie w Bascomie w opcjach masz zaznaczony LCD 4 bitowy i takie tam. Zdziwisz się kiedy coś namieszasz w opcjach i LCD ci nagle zgaśnie. Dodaj to wreszcie....
Witam Mam problem z programem, który został umieszczony w książce (osła łączka). Program został napisany pod attiny2313 lecz niestety podczas kompilacji wyskakuje błąd: Reserved word may not be used Proszę kod umieścić w znacznikach code! Robak
Zobaczcie w linku jest komputer samochodowy na wyświetlaczu LCD 4*20. Tam przy temperaturach są znaczniki: "t1" i "t2". http://pl.youtube.com/watch?v=yJMelf8jW1... Zajmuja one jedno pole wyswietlacza. Jak wprowadzic te znaczniki do tego kodu, potrzebowalbym: t1, t2, t3, t4 $regfile = "m8def.DAT" 'deklaracja procesora, w tym wypadku Atmega8 $crystal...
Witam zainstalowałem najnowszą wersję bascoma 1.11.8.3 i chcę skompilowac program z kursu mikroprocesorowej oslej łączki co32g jest to podwójny termometr , wgrywałem go starą wersją bascoma do procka 90s2313 i działał. Teraz chcę skompilowac soft pod ATtiny2313 i wyskakuje mi Error file not found , co robie nie tak za pomoc dziękuję a to soft ' C032g...
Witam, Proponuję spróbować tego, to kawałek kodu z mojego pliku pomocy w obsłudze termometru DS18B20: 'Odczyt temperatury z dokladnością do dziesiątych części $regfile = "89s8252.dat" $crystal = 12000000 Dim Odczyt(2) As Byte 'deklaracja dwóch zmiennych typu byte do których będą zapisywane dane z termometru Dim T As Integer , Przecinek...
Witam mam pewien problem . Jakiś czas temu szukałem gotowego schematu i wsadu procesora aby zrobić termometr 4 kanałowy na wyświetlaczy 16x2. Zrobiłem płytkę, zaprogramowałem w bascomie mikrokontroler gdy podłączyłem wszystko, na wyświetlaczu w 1 linijce mam tylko kwadraty i tak cały czas, nie znam się na programowaniu ale staram się jakoś tego uczyć...
dzięki działa:) dodałem jeszcze buzzerek, ale mam takie pytanie układ ma działać jako termometr informujący o danej temperaturze i bliskości zagotowania wody w obiegu. Kod napisany teraz po przekroczeniu temperatury 70 C zacznie odgrywać melodyjkę, po przekroczeniu 80 inna, a 85 na bardzo piskliwą. Ale potrzebuje coś aby spełniało taka cechę: np. idę...
Witam Mam taki program który wyświetla temperaturę potocznie zwany termometrem. Problem w tym ze nie wyświetla mi znaku minus przy ujemnych temperaturach. Po wsadzeniu do zamrażarki mija temperaturę 0 st C i idzie dalej niby w dół, ale bez minusa. Przeglądałem sporo źródeł na elektrodzie i w innych miejscach i nie mogę sobie z tym poradzić. Oto kod:...
Witam, Na tej stronie znalazłem opis jak podłączyć czujnik DS18B20 do wyświetlacza LCD http://www.portalnaukowy.edu.pl/termomet... Oto kod: 'Jednopunktowy termometr z czujnikiem DS18B20 'www.portalnaukowy.edu.pl 'Program na podstawie kursu z ksiażki "Mikrokontrolery dla Poczatkujacych" Pana Piotra Góreckiego $crystal = 4000000 'deklaracja...
Witam, mam taki problem. program wg mnie powinien po przekroczeniu ustalonej temperatury wyswietlac na LCD napis, wlaczac Buzzer oraz zapalic diode. A po nacisnieciu przycisku wyłaczyc to wszystko. I problem jest taki ze wylacza wszystko oprocz diody. Tzn po wlaczeniu sie alarmu dioda wogole juz nie gasnie ani po obnizeniu temperatury ani po nacisnieciu...
Witam Chcąc zbudować termometr wraz z alarmem, natknąłem się na forum Elektroda o temat "Termometr wraz z alarmem do CO - http://www.elektroda.pl/rtvforum/topic18... Termometr opiera się na projekcie użytkownika DUCH__. W kodzie widnieje błąd program ten ma wadę, że czujniki dobiera sobie losowo (czyli piec nie zawsze będzie piecem). Czy jest...
Witam na wstępie chciałem powiedzieć, że nie jestem dobry w programowaniu, bo dopiero zaczynam i mnie to powoli wciąga. Mam parę pytań i postanowiłem napisać. Chce zrobić sobie taki mini komputer pokładowy do Fiata Cinquecento 700. Ten mały układ ma wskazywać temperaturę w środku samochodu i na zewnątrz a tak, że będzie pokazywać napięcie, jakim jest...
Nie wiem czy dobrze ustawiłem dim'y Wyswietlanie,Trybprzycisk, Trybpomocnicza1 mają być Byte ? W takim układzie przyciski będzie zczytywało co 4ms, ale co z odświerzaniem LCD co 100ms i 1sek ? Aha i gdzie mam określić port przycisku PORTA.7. [syntax=vb]$regfile = "m16def.dat" 'informuje kompilator o pliku $crystal = 8000000 'informuje kompilator o częstotliwości...
OlekM klawiatura jest czyszczona za każdym razem gdy jakaż komenda z pilota leci do procka co pokazuje część kodu : If Address = 0 And Command = 16 Then Cls Incr Strona End If If Address = 0 And Command = 17 Then Cls Decr Strona End If If Address = 0 And Command = 33 Then Cls Downigora = 1 End If If Address = 0 And Command = 32 Then Cls Downigora =...
Witam. Zrobiłem sterownik do swojego obrotowego kolektora słonecznego. Bascom, Atmega8, lcd 4X20 znaków-tryb 4 bit. Problem jest następujący: sterownik za pomocą przekaźników steruje siłownikiem z silnikiem DC lewo - prawo. Miałem problem z zakłóceniami, reset procesora, krzaki na LCD. Działo się to przy rozłączaniu przekaźników. Okazało się że trafko...
witam, a mi ten program nie działa. pinguje układ ale nie wyswietla mi strony oto kod: [syntax=basic4gl]$regfile "m32def.dat" $lib "i2c_twi.lbx" $crystal = 11059200 Config 1wire = Portc.2 $baud = 19200 ' use baud rate $hwstack = 64 ' default use 32 for the hardware stack $swstack = 64 ' default use 10 for the SW stack $framesize = 200 Dim T1 As Byte...
Zamieszczam program w bascomie, który jest dosyć niezoptymalizowany więc proszę się nie czepiać tylko ewentualnie udzielać wskazówek... Proszę bardzo :D Staraj się jak najmniej korzystać z funkcji cls, która jest nie przyjemna dla oka. Tekst statyczny umieszczaj przed pętlą, natomiast zmienne wartości przez nadpisywanie wspierając się spacjami, gdy...
Witam wszystkich! Pewnie pomyślicie "znowu to samo", no ale zlitujcie się w Wigilię i przeczytajcie te kilka zdań :D Walczę z problemem od kilku dni. Nie potrafię skonfigurować Timera by konwertował dane z 1wire poza główną pętlą. Nie mogę sobie pozwolić na waitms, bo wtedy mam problemy z poruszaniem się w menu. Mam już działający Timer1 odliczający...
Próbowałem tak $regfile = "m8def.dat" $crystal = 8000000 Config Pinb.1 = Input Config Pinb.2 = Input Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portc.2 , Config Lcdpin = Pin , Db5 = Portc.1 , Db6 = Portc.0 , Config Lcdpin = Pin , Db7 = Portc.5 , E = Portc.3 , Config Lcdpin = Pin , Rs = Portc.4 Config 1wire = Portb.0 Declare Sub Odcz_temp...
Usunąłem Wait 1 przy konwersji z DS18B20, działa, bez problemu ( na trzech przewodach ), tylko wyniki są opóźnione - tzn. wyświetlany wynik nie jest z aktualnego pomiaru, tylko z poprzedniego. Dodałem jeszcze dwa czujniki DS18B20. Ich zapis razem z godziną i datą na karcie jest jak najbardziej w porządku, tylko wyświetlanie trochę szwankuje - tzn. czasem...
Witam Mam Atmega32A + PCF8563 + PCF8574 + RFM12 + DS18B20 +DHT11. Port danych LCD to Port.A, ControlPort to Port.C. I2C standardowo na Portc.0 Portc.1. Niestety jest problem z obsługą I2C, tzn. zegar PCF8563 nie działa w ogóle ( na LCD puste pole ) , a klawiatura na PCF8574 - tylko jeden klawisz i to nie ten, który jest przypisany w kodzie ( działa...
Po przeczytaniu wielu postów napisałem program który ma wyświetlać na wyświetlaczu LCD Napięcie , prąd oraz temp. Chciałem to wykorzystać do zasilacza, którego właśnie buduje. jednak po zaprogramowaniu procka wyświetlacz mi się nie inicjuje (zaświecają się kwadraty w pierwszej lini). Czy jest jakiś błąd w moim programie ? Proszę o sprawdzenie. $regfile...
Witam,potrzebuję pomocy w dokończeniu programu (jeśli istnieje możliwość) schemat znalazłem na elektrodzie http://obrazki.elektroda.net/50_12609042... ,kod też który przerobiłem pod siebie (docelowo ma być to zamontowane w motocyklu) ma za zadanie dokonywać pomiary temp układu chłodzenia i oleju oraz pomiaru napięcia akumulatora i tu mam problem...
Witam.Mam taki problem.Posiadam program Termometru (Atmega8+DS18B20)pokazujący temp.dodatnie i ujemne.I nie mam pojęcia jak go przerobić pod (2X DS18B20).Temp.z dwóch układów na jednej 1Wire.Proszę o pomoc:) $regfile = "m8def.dat" $crystal = 8000000 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7...
Znalazłem poniższy kod na "Elektrodzie" załadowałem do procesora, pomiar napięcia jest zrealizowany zgodnie z przykładem z książki o Bascomie, niestety coś jest nie tak, ponieważ mimo że do ADC1 nie przykładam żadnego napięcia na wyświetlaczu pokazuje napięcie 1,96-2,03 V, po przyłożeniu napięcia 5V wskazanie wyświetlacza jest prawidłowe. [syntax=basic4gl]...
Witam Ostatnio złożyłem z książki Marcina Wiązani-"Programowanie_mikrokontrolerow_... dwa układy zegarka i termometru. Próbowałem połączyć te dwa układ i napisałem taki program $regfile = "m8def.dat" $crystal = 8000000 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc.0 ,...
Jeszcze się zastanawiam, czy nie lepiej będzie zamiast Lsb i Msb odczytanej temperatury pobierać obliczoną wartość przed przecinkiem i po przecinku ? Tzn. wynik pomiaru temperatury będzie przesyłany przez RFM12 - chyba prościej będzie mieć gotowe, czyli wysyłam: Dodano po 4 Jednak coś nie tak jest. Zrobiłem to tak: Dodano po 2 Nie rozumiem. Po dwóch...
https://obrazki.elektroda.pl/9365002800_... W poprzedniej części opisałem zasadę działania i podstawy sterowania wyświetlaczy VFD, w tej części przejdę do praktycznych działań :D które większość z Was pewnie bardziej zainteresuje. Nowe wyświetlacze są stosunkowo kosztowne w zakupie i nie równoważy tego fakt że przeważnie zawierają...
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ę...
Witam Tworze sobie prosty termometr na wyświetlaczu 7 segmentowym. Napisałem kod w bascomie i wrzuciłem na płytę testowa z atmega32 i śmiga jak trzeba. Kolejnym krokiem było wrzucenie tego na na atmege8 (zmieniłem m32def.dat na m8def.dat i taktowanie na 1MHz ) atmega świeża , fusebity nie zmieniane. No i jak zwykle u mnie to bywa, rzecz nie działa....
Jak sprawdzić czujniki ds18b20 czy prawidłowo wskazują temperaturę bo słyszałem że są niektóre fabryczne ,,felerne,, .Umnie wszystkie 5 zawyżają o 2stC , a może jest błąd w kodzie. dziękuje $regfile = "M16def.dat" $crystal = 8000000 '****** KONFIGURACJA PORTÓW ********* Config Porta = Output 'wysw ABCDEFG Config Portc = Output 'zasilanie W4,W3, W2,...
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...
Dzień dobry, Zbudowałem termometr cyfrowy oparty na układzie Atmega8 i czujniku DS18B20. Do tego podpięty jest wyświetlacz LCD. Termometr "pamięta" i wyświetla temperaturę maksymalną i minimalną z ostatnich 12 godzin. Do tego wszystkiego podłączyłem diodę RGB tak jak na schemacie: http://obrazki.elektroda.pl/6410117800_1... Zadaniem...
Witam Temat był już wałkowany x-razy Co mam dopisać do tego programu żeby mi mierzył temp. ujemne ? Jest to program do zegara z termometrem kit AVT868. Proszę o pomoc pozdrawiam Sjzwojtek $large Declare Sub Settime(s As Byte , M As Byte , H As Byte , D As Byte , Month As Byte) Declare Sub Gettime Declare Sub Displaytime Declare Sub Displaydata...
Witam. Jako początkujący, a już trochę wiekowy (46)proszę o wyrozumiałość. Napisałem w Bascomie takie coś , zrobiłem układ i nic. Nie działa. W którym miejscu jest błąd ? Na schemacie nie ma tranzystorów PNP w anodach, rezystorów w segmentach - celowo , bo to oczywiste. No więc tak na początek staraj się opanowac ten projekt "segmentami"; Najpierw,...
No to jedziemy dalej :) Problem polega na tym, że nie bardzo chcą działać przyciski P_tryb, start, stop. O ile opóźnione działanie P_tryb jest chyba związane z trzema komendami WAITMS 330 w pętli głównej, to nei rozumiem dlaczego dwa pozostałe przyciski niezbyt chcą być obsługiwane. To jest tak, że jak przytrzymam dłużej, to czasami zaskoczy, a czasami...
Witam Buduję Robota lub jak kto woli platformę jeżdżącą Niestety napotkałem kilka problemów z którymi nie umiem sobie poradzić ale mam nadzieje że z waszą pomocą uda mi się Chodzi konkretnie o 1. Chcę sterować silnikiem DC(takim jak w motorkach dziecięcych) przez mostek L293D Wszystko niby pięknie ładnie ale... gdy wysteruje mostek tak aby koło kręciło...
Mam sobie niżej pokazany programik w bascomie ale niestety nie wiem jak dopisać obsługę pilota :| Programik jest na 89c4051 ;) $large Config Lcd = 16 * 2 Config Timer1 = Timer , Gate = Internal , Mode = 1 Config Sda = P3.1 Config Scl = P3.0 Dim Licz As Byte Dim I As Byte Dim Nast(5) As Byte Dim St As String * 7 Dim W_reg As Integer Dim Wielk1...
Witam. Jako, że jestem początkujący w tej dziedzinie, chciałem się poradzić doświadczonych kolegów jak przerobić dalej program. Do projektu kolegi DUCH - 4xds18b20 LCD dodałem sterowanie włączeniem led, buzera (opcjonalnie przekaźnika) po przekroczeniu założonej temperatury, zarówno za niskiej jak i za wysokiej (chodzi o piec CO) informuje mnie o tym...
Po wlaczeniu funkcji MUTE na calym wyswietlaczu zostaje wyswietlony tan napis kilkakrotnie. Czy mozna zmienic jakos kod programu aby ten napis byl wyswietlony tylko raz i na srodku?? Kod: $large Config Lcd = 16 * 2 Config Timer1 = Timer , Gate = Internal , Mode = 1 Config Sda = P3.1 Config Scl = P3.0 Dim Licz As Byte Dim I As Byte Dim Nast(5) As Byte...
Witam Mam program, który, po dokonaniu pomiarów, wysyła dane przez RFM12 i zapisuje na karcie SD. Chcę dołożyć wysyłanie danych do Domoticz po każdym pomiarze. Problem w tym, że po dopisaniu obsługi ESP8266 i Domoticz ( zmienne miałem już wcześniej zadeklarowane ) to pojawiają się błędy w zapisie na karcie SD. No i wysyłanie do Domoticz przestaje działać,...
bascom zmienna integer ds18b20 bascom temperatury ujemne zmienna integer
polsat cyfrowy lista kanał skrzynia automatyczna dodge przepływomierz paliwo
zderzak naprawa zderzak naprawa
Kolory kabli głośnikowych w Skodzie 3: szczegóły i schematy Automat do bramy przesuwnej: Roger czy Nice?