Ściagnij sobie jeden z tych plików pomocy, uruchom, wybierz indeks wpisz "dim" klinij wyświetl i tyle, prościej sie nie da :) Dodano po 5 Sorry kolego, dim to nie tablica tylko deklaracja zmiennej, przepraszam za wprowadzenie w błąd Dodano po 6 teraz się temu przyjrzałem i okazuje się że dobrze pamietam. Dim moze być deklaracja singlowej zmiennej bądź...
taka deklaracja Dim tablica (2*2) AS Byte wywala błąd kompilatra, więc chyba tak się nieda
Biblioteka Galahata działa fajnie, trzeba tylko drobne zmiany zrobić bo stary Bascom ma inny syntax przy deklaracji suba. [syntax=vbnet]call ustaw_leda(3, czerwononiebieski) sub ustaw_leda(numer_leda as byte, bylabel kolor as string) Kanal=numer_leda * 3 b = lookup(2, kolor) Kanal=b Decr KANAL g = lookup(1, kolor) Kanal=g Decr Kanal r = lookup(0, kolor)...
Może ktoś wie jak założyć tablicę 66 elementową ( każdy element to bit) w obszarze adresowanym bitowo, tak by można było odwoływać się do poszczególnych bitów poprzez współżędne w tablicy np. bit22=Tablica(22). Bascom co prawda przyjmuje deklarację Tablica(66) as bit, ale traktuje to jak zmienną 1 bitową tzn. zapis Tablica(22) = 1 ustawia na 1 wszystkie...
Zaprezentuj krótszy program tylko z odbiorem, ale z wszystkimi ustawieniami, configiem i deklaracjami zmiennych. Może coś się od razu rzuci w oczy :D Nie wiadomo czy zadeklarowałeś wielkość ramki której Bascom używa do obrabiania danych pracując na stringach lub tablicach ($framesize) Kiedy jest za mała to program może jeździć po innych zmiennych ;)
Nie rozumiem. Jeżeli zapisujesz tylko 1 wartość, to nie potrzebujesz adresów. Ale pewnie źle tłumaczysz. I to nie jest jedna wartość tylko kilka. Ale i tak nie potrzebujesz adresów. Nie tędy droga. Zrób tablicę i poruszaj się po niej za pomocą indexów. Tablicę w EEPROMie deklaruje się podobnie jak zwykłą tablicę. Wystarczy że dodasz "As Eram" przy deklaracji.
wyświetlanie cyfr na dowolnej liczbie wyświetlaczy podłączonych do procesora jest znacznie łatwiejsze niż obsługa LCD chyba, ze korzystasz z gotowych procedur. Teoretycznie jest tak jak piszesz ale... w Bascom... Obsługa LCD ogranicza sie do zadeklarowania pinów LCD procesora i podania komendy LCD "zmienna" a w przypadku wyświetlaczy LED dochodzi konfiguracja...
Skąd wiesz, że w zmiennych i EEPROM nic nie ma jeśli nie skompilowałeś programu? (Program się nie kompiluje bo brak deklaracji kz.) Wprowadzasz coś do bufora z zewnątrz? Z czym się komunikujesz i czy połączenie jest odpowiednio zestawione? (parzystość, stop, rodzaj danych) Po doprowadzeniu programu do ładu w symulatorze działa. Uruchom poniższy zmodyfikowany...
Proponowałbym Ci korzystać z tablic a nie ze zmiennych D1-D46. Wiele operacji można wówczas zautomatyzować. Deklaracja : Dim Rfm_tab(64) As Byte 'deklaracja tablicy 64 elementowej Teraz w procedurze "Wyslij_rfm12" fragment podstawiający liczby do wysłania wygląda tak : For n=1 to 46 Data_to_send = RFM_tab(n) Gosub Rf12_send Next 4 wiersze zamiast...
Błąd jest nie w deklaracji tablicy a w jej wywołaniu w programie. Piszesz: Linia1 = "1.Menu 2.Czas " A powinieneś: Linia1(1) = "1.Menu 2.Czas " Popraw tez pozostałe i będzie dobrze.
Można wyświetlać temperaturę w podmenu "wybór_Ds" ale trzeba zmienić cały program. Chyba nie jest tak trudno zapisać sobie cztery ID czujników i wiedzieć później który gdzie przypisać. Najlepiej osobno podłączać każdy czujnik i na naklejce na kablu przy czujniki zapisać jego ID. Wiedząc gdzie jakie jest ID czujnika można już mu w podmenu przypisać odpowiednią...
Przejrzystosc w kodzie przede wszystkim. :D Pozniej latwiej jest zlokalizowac ewentualne bledy i samo poruszanie sie w kodzie jest znacznie latwiejsze. W kazdym razie wracajac do tematu to ja osobiscie nie lubie etykiet wiec wolalbym to rozwiazac np. w ten sposob: Sub Czytaj_id_klucza() 'tutaj wstawiasz kod odczytu End Sub i pozniej tylko: Call...
chcę zrobić tablicę z nazwami dni tygodnia do kalendarza. deklaruję dim tablica(7) as string * 12 tam powinno mi się to zmieścić, potem robię tablica: data "poniedziałek", "wtorek" ..... itd przy próbie wyświetlenia lcd tablica(x) mam tylko 11 zaciemnionych kostek . czy trzeba wpisywać do tablicy kody ASCI dla każdej literki ? jak to zrobić , żeby działało....
Jeżeli chcesz żeby adresował tablice od 0 to można to zmienić przy pomocy CONFIG BASE=0, ale w przypadku DATA pierwszy element ma domyślnie indeks 0. Wklej kompletny kod, tu nic nie widać. Return po deklaracji DATA jest niepotrzebny.
Tak jak wcześniej pisałem sprawdź deklarację zwłaszcza tablic, może masz tablicę np temperatura 8 elementową a wpisujesz do niej 9 elementów...? 9ty element zostaje wpisany w miejscu gdzie może być zadeklarowana np zmienna G.... ale bez kodu to tylko gdybanie, zadeklaruj G na samym początku wtedy nic jej nie nadpisze, ale to nie rozwiąże problemu do...
Można zadeklarować prawidłowo zmienną eeram W ten sposób Dim Adres_er(size_t_mac) As Eram Byte At Adres_p_mac Poprzez komende AT znam adres, po jaki będzie się odwoływać zmienna eeram w pamięci. Niestety, ale z Eepromem ten numer nie przejdzie , ponieważ Bascom ignoruje etykiety w Eepromie. Deklaruje, jakie wartości powinny być zapisane w eeram...
Dla 4 bajtów kod kolegi manekinen'a będzie działał poprawnie(kol. wowka pisał, że chce zrobić A = &HAABBCCDD) ponieważ zmienne Nazwa i A(1) A(2) A(3) A(4) znajdą się w tym samym miejscu w pamięci więc zapisując do Nazwa &HAABBCCDD otrzymamy tak naprawdę A(1) = &HAA A(2) = &HBB A(3) = &HCC A(4) = &HDD. A tak przy okazji powinno...
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.
Przykładowy programik, ale dla DS18B20: Dim Bd(9) As Byte 'tablica Dim T As Integer 'zmienne Dim T1 As Integer Dim T2 As Integer Declare Sub Read18b20 'deklaracja procedury Cls 'inicjacja wyświetlacza Deflcdchar 0 , 6 , 9 , 9 , 6 , 32 , 32 , 32 , 32 'def. znaku stopnia Cls Lcd "Temp:" Do 1wwrite &HCC 'rozkaz SKIP ROM 1wwrite...
Declare Sub Read1820 'deklaracja podprogramu Declare Sub Temperature 'deklaracja podprogramu Dim Bd(9) As Byte 'deklaracja tablicy zmiennych Dim I As Byte , Tmp As Byte 'deklaracja zmiennych używanych przez program Dim T As Integer , T1 As Integer 'deklaracja zmiennych używanych przez program 'Dim X As Byte 'deklaracja zmiennych używanych przez program...
Witam. Nie mam już pomysłu, może ktoś z was coś podsunie. Problem leży prawdopodobnie w złym zarządzaniu pamięcią. Program to miernik energii elektrycznej. Może zamiast kodu przedstawie schemat blokowy. Cały program znajduje się w pętli, nie używam zadnych gosubów i innych podprogramów. Jest tylko 1 przerwanie co sek i tylko zmiana 1 zmiennej. 1. Program...
Kolego tera nie działa mi ustawianie godzin a zrobiłem to tak deklaracja:[syntax=vbnet] Declare Function Ustaw(byref Godziny As Byte , Byref Minuty As Byte , Sekundy As Byte) As Integer Declare Sub Znak(cyfra As Byte) 'deklaracja tablicy stałej do wyświetlania cyfr i znaków na wyświetlaczu 7 seg Declare Sub Czytaj 'deklaracja funkcji bez parametru do...
dobra poczytałem i wiem na razie tyle: I2cstart I2cwbyte [adres urządzenia podporządkowanego do zapisu], Ack I2cwbyte [bajt do wysłania] ............ (wysyłanie kolejnych bajtów) I2cwbyte [ostatni wysłany bajt], Nack I2cstop tylko ze tu jak dobrze rozumie trzeba każdą informacje wysyłaną na wyświetlacz wpisywać po kolei...
Pytanie jak zrobić przeszukiwanie kolejnego indeksu po stwierdzeniu, że pierwszy jest nie poprawny? Bez modyfikacji funkcji Lookdown w bibliotece mcs.lib , raczej nie ma możliwości. Jeżeli znasz asembler możesz zmodyfikować funkcje _LOOKDOWNBYTE i _LOOKDOWNINT . Można też wykorzystać instrukcje RESTORE i READ do przeszukania tablicy: [syntax=basic4gl]$regfile...
Na razie nie mam jeszcze własnego programu zacząłem od prób na twoim programie. Interesowała mnie szybkość odczytu z karty, ten sam kod kompiluje pod M8 i M32. W programie zapisuje jeden sektor i potem odczytuję 365 sektorów. Zwiększyłem hwstack bez zmian Nie próbowałem jeszcze zejść do 1MHz (nie zdążyłem kupić), ale na płytce od Atmega8 z tym samym...
Witam! Od pewnego czasu usiłuje napisać program do obsługi zegara na pcf8583 i wyświetlaczach siedmiosegmentowych lecz bez efektu. Jest sporo tematów tego typu, ale większość zegarów realizowana jest na LCD. Główny problem polega na wyświetleniu czasu na wyświetlaczach 7segmentowych. Proszę o jakąkolwiek pomoc i podpowiedzi. Schemat układu: http://obrazki.elektroda.net/13_12708371...
Witam. Ze względu na warującą ostatnio na dworze temperaturę chciałem zrobić prosty termometr oparty na 89s52 i czujniku 18b20. Napisałem program i o ile pomiar temperatury działa należycie z dokładnością 0.5*C to mam spory kłopot z porównaniem i zapamiętaniem tej minimalnej- aby rano wiedzieć do jakiej spadła temp w nocy. Układ sprawuje się dobrze...
No to mam juz jakis podstawowy kod do pomiaru predkosci :) mam multipleksa NIE WIEM CZY DOBRZE ZADEKLAROWALEM PORTY - prosze o sprawdzenie czy ilosc cyferek sie zgadza i czy prawidlowo "pominalem" bity kwarcu (portB) resetu (PortC) i timer'a (portD) - wystarczy tam dac zera (wejscia) i juz?? no i potem jak deklaruje ktore maja byc w jakich stanach to...
Witam Testuje termometr na dwóch Ds18b20 i żeby wynik wyświetlany był trzech wyświetlaczach 7seg. LED. Ma działać tak że najpierw pokazuje na 3 sekundy 1 temperaturę a po tym czasie na kolejne 3 sekundy pokazuje 2 temperaturę. Linie 1 wire podciągnąłem z rezystorem 3,3K do +5V. Wszystko działa temperatury się zmieniają i wyświetlają ale co jakiś czas...
Mruga tylko raz po kilkunastu sekundach a potem juz nie czyli nie nadaje ? Sprawdziłem dokładniej i po każdym resecie po ok 38 sekundach mrugnie ale potem już nie mruga, tak jakby się zawieszał program. Tak wygląda teraz program w odbiorniku ; [syntax=basic4gl] $regfile = "m8def.DAT" 'deklaracja procesora, w tym wypadku Atmega8 $crystal = 16000000 $hwstack...
Cześć Chciałem prosić kogoś o wskazówkę jak poradzić sobie z problemem wyświetlania wartości "Wartosc2" poniższego kodu. Mój problem polega na tym że w momencie naciśnięcia przycisku ( w programie to Up, Dwn ) gdy na wyświetlaczach jest np 1.1 wyświetlacze "resetują" się i wskazują wartość 00 po zwolnieniu przycisku wyświetlona zostaje poprawnie kolejna...
Siemka ugh123 :D Co prawda nie mam tego wyświetlacza (Nokia), lecz o wiele większy. Ale do do tematu. Pliki ".bgc" są zapisywane w 8-bitowym kolorze, Ja pracuję z 16-sto bitowymi kolorami, więc konieczna jest konwersja z 8 na 16 bitów. Informacje na temat wymieniony przez Ciebie znajdziesz w sieci (poszukaj). Nie dam Ci gotowca,i sądzę, iż nikt Ci nie...
Witam. Buduję zegarek oparty o Atmegę32 i wyświetlacz na sterowniku ST7565R. Układ podobny do mojego [url=http://www.elektroda.pl/rtvforum/to... zdalnego. Skopiowany jest z niego program, oczywiście przerobiony odpowiednio i powycinane co trzeba. Na razie tylko go uruchamiam. I tak jak przy pisaniu programu pod "Panel zdalny" nie...
Oj kolego, poważny błąd - zasilaj prawidłowo mikrokontroler: http://mikrokontrolery.blogspot.com/2011... Dzięki za upomnienie, faktycznie gdzieś to przeoczyłem, na schemacie ideowym nawet masa wisi :) Poniżej zamieszczam poprawiony schemat ideowy i płytkę w EAGLE. Widząc duże zainteresowanie kodem wrzucam wsad w BASCOM....
Jeżeli podłączasz na dwóch przewodach DSa to rezystor zmniejsz do 3,3k. Nie chcę mi się pisać więc podaję kod (bascom/asm) '***************************************... !read_temp_1w: Read_temp_1w: 'odczyt rejestrow z ds1820 'Stop Timer0 jnb {fl_pomiar},read_temp_1w_end clr {fl_pomiar} 1wreset...
Czyli ten fragment z konfiguracją i obsługą timera jak przekształcić? Oto fragment kodu: [syntax=basic4gl]Config Timer0 = Timer , Prescale = 256 'konfiguracja Timer0 jako 'timer z podziałem 'preskalera przez 256 Portc.0 = 1 Declare Sub Pobr_znaku(cyfra As Byte) 'deklaracja procedury 'pobierającej kod cyfry do 'wyświetlenia z tablicy On Timer0 Mult_wysw...
Starsza wersja: Enable Interrupts 'Deklaracja procedury obsługi przerwania od TWI On Twi I2c_check 'Konfiguracja sprzętu 'Wyświetlacz LCD Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc.0 , E = Portb.5 , Rs = Portb.4 Dim Status As Byte ' Status operacji na magistrali odczytywany w przerwaniu Dim...
Witam, proszę mnie upewnić co robię nie tak. Mam program który (działa :), ale nie do końca) jest termostatem z dodatkowym termometrem (jeden czujnik sprawdza temp na piecu i steruje przekaźnikiem, drugi tylko mierzy temp. zewnętrzną): [syntax=basic4gl]$regfile = "m8def.dat" 'Atmega8 $crystal = 1000000 'taktowanie 1MHz Config Lcd = 20 * 4 'rodzaj wyświetlacza...
problem mój polega na nieprawidłowym wyswietlaniu cyfr . o ile w zakresie 0-99 wszystko jest ok., to powyżej 100 ma same zera : wyswietlacz ma 3 cyfry led-7-segmentowe i w założeniach ma liczyć czas od 0 do 999 sek pełny kod: '$sim $regfile = "m8def.dat" 'informuje kompilator o pliku $crystal = 8000000 'informuje kompilator o Config Portd...
Witam ponownie. Może tak będzie dobrze: Dim Rez As String * 1 I użycie funkcji: Rez = Str(t_ds) Rez = Format(rez , "##.#") A Ty Andy jak robisz?? Właśnie tak. No prawie. :) String to trzeba by zadeklarować * 5, bo trzy cyfry, kropka no i ewentualny minus. A formatowanie robię (jeśli dobrze pamiętam - nie mogę tutaj podejrzeć...
Tzn. mam tablicę 24 bajty ( na razie do testów). I teraz podaje adres początkowy z tablicy, od którego zaczyna się ID układu DS18B20. Podprogram ma załadować ID, odczytać, sprawdzić CRC i w odpowiedzi podać mi LSB, MSB, status czujnika, histereze ( poprzednią muszę mu jakoś podać ) i wynik w postaci zmiennej typu string. Wzorowałem się na czymś takim:...
Wiem wiem, pamięć wewnętrzna - ogólnie chodzi tu o naukę. W docelowym układzie będzie zewnętrzna, choć zapisy będą realizowane 1 dziennie. a swoja drogą jaka jest żywotność eepromu wewnętrzengo? Co do kodu, posiedziałem i pogłówkowalem i powstało coś takiego. oczywiście to przykład który teoretycznie można rozbudować do spokojnie 8-10 WY '8 MHz/256/31250...
Staram sie zmusci do wspopracy LCD od 3310 na SPI oraz PCF8544 (zegar RTC) na i2c do wspopracy razem z mega8535. Osobno wszystko smiga, razem nie chce. Jak tylko wlacze linijkie odpowiedzailna za skok do procedurki odczytu godziny z PCF'a to wyswietlacz od noki robi sie bialy i nci nie wyswietla. Program wyglada tak (wycialem deklaracje procedur, deklaracje...
Witam! Program działa poprawnie. Testowałem z 3-4 programy do obsługi tego czujnika ciśnienia. Wyniki są złe, porównaniem z innym ciśnieniomierzem zaniża o 30..40hPa. Zasilanie BMP180 3.3V, ATMEGA32, 8MHz. Czy ktoś się spotkał z takim problemem? [syntax=vbnet] '----------------------- '| Test modułu BMP085 | '----------------------- 'Uwaga: pomiar jest...
Dzięki kolego za kod, widzę że jest to kod obsługi jakiegoś zegarka, bardzo podobny kod znajduje się u M.Wiązania. 'Program multipleksowego sterowania czterema wyświetlaczami '7-segmentowymi LED poprzez dekoder 4543 'cyfra załadowana do A będzie wyświetlana na wyświetlaczu 1 'cyfra załadowana do B będzie wyświetlana na wyświetlaczu 2 'cyfra załadowana...
Zrozumienie prostego i nieskomplikowanego, jak się na końcu okaże, Overlay bardzo się przydaje. Zanim zacznę to przypomnę i umówmy się że jeden bajt zapisujemy w dwóch znakach, na przykład FA, FF, 8C, 0B itd.. Pierwszy przykład obrazujący zagadnienie: Jak wiadomo zmienne typu WORD albo INTEGER składają się z dwóch bajtów. Jeśli więc zadeklarujemy w...
Witam. Jestem w trakcie budowania wskaźnika temperatury i napięcia do motocykla. Wygląda to mniej więcej tak: http://obrazki.elektroda.pl/9020987300_1... Wszystko jest fajnie tylko że mam teraz w programie 104 ify - od 16 stopni do 120. Mniej więcej do 60 stopni wszystko się udaje. Potem już tylko błąd że za mało pamięci. Czy ratuje...
Witam, jeszcze proszę praktyczne rozwiązanie takiego problemu, gdyż program jest praktycznie ukończony, ewentualnie drobne poprawki kosmetyczne:), ale w obecnej wersji odczyt i zapis wykonywany jest z poleceniem "wait", przez co wskazywane temperatury nie są czasem poprawne - wyskakuje BRAK ds'a. Już nie mam pomysłu jak to zrobić, proszę tylko o jakieś...
Chciałbym jeszcze przenieść znaki specjalne do eeprom. Próbowałem takiego kodu; [syntax=basic4gl] Dim X As Byte _temp1 = &H40 Gosub _lcd_control For X = X To 32 Readeeprom _temp1 , X Gosub _write_lcd Next ... $eeprom Data 14 , 10 , 14 , 32 , 32 , 32 , 32 , 32 Data 17 , 19 , 17 , 17 , 17 , 16 , 28 , 32 Data 23 , 17 , 23 , 20 , 23 , 16 , 28 , 32 Data...
Hej, Próbuję zrobić menu ustawień swojego sterownika i kompletnie mi to nie wychodzi :( Menu ma być sterowane pilotem NEC (pilot działa poprawnie) Jak ja to sobie wymyśliłem: 1. ekran główny (tu jest OK) - przycisk strzałka w lewo przełącza ekran na zegar "MAXI" - przycisk strzałka w prawo przełącza na ekran główny - przycisk strzałka w górę blokuje...
deklaracja tablica bascom deklaracja deklaracja wykonać tablica
citroen kontrolka kierownica lenovo supervisor skrzynia automatyczna honda civic
Gaźnik BVF 30N2-5 do motocykli MZ ETZ 250 i 251 Mercedes V12 - Jak określić lewy rząd cylindrów?