Dir jest instrukcją w Bascom'e, zmienna nie może mieć takiej nazwy. Zmień w całym programie nazwę zmiennej Dir np. na Dir2 . Dodaj deklaracje procedury Ddelay . [syntax=basic4gl]Declare Sub Ddelay[/syntax]
Po pierwsze jakie czasy chcesz obliczać i jakie przerwania po co ??? To jest bascom nie assembler, deklarujesz na wstępie programu prędkość kwarcu a kompilator troszczy się o resztę tj. dajesz deklarację $regfile = "m8def.dat" $crystal = 12000000 Po drugie, procedura obsługi wyświetlaczy LCD (mowa tu o alfanumerycznych HD44780) jest w BASCOM zaimplementowana...
... czy jest to możliwe? Raczej nie, ale jest wysoce prawdopodobne, że Twoja zmienna "B" zmienia wartość na "0". Na samym początku kodu, po deklaracji $Crystal dodaj "takie coś"...[syntax=basic4gl]Set Mcucsr.jtd Set Mcucsr.jtd[/syntax]
Witam Jestem młodym elektronikiem. I nie potrafię wykorzystać mojej pamięci eeprom. Piszę w Bascomie. Mam polską wersję, helpu z Bascoma, ale tej nie rozumie. Skoro nie rozumiesz po polsku ;) , to w jakim języku mam Ci to wytłumaczyć :?: Spróbuję jednak po ... polsku ;) Oto próbka kodu, który mi nie działa. $lib "mcsbyte.lbx" $regfile = "2313def.dat"...
Nie znam bascoma, ale zapewne twoja zmienna jest liczbą 8-bitową, zatem musisz przy deklaracji zadeklarować zmienną mogącą pomieścić większą liczbę.
1. Bascom jest bardzo dobrym językiem, znacznie lepszym niż Arduino. 2. "a:10.0" "a:10.0 " ":10" "10 " Ten temat jest zamknięty, dostałeś 2 przykłady. Pierwszy napisałem do składni ramki jaką podałeś w pierwszym poście, później zmieniłeś konstrukcję rami to napisałem kolejny przykład, można jak dobrze naliczyłem jeszcze 9 innych metod zastosować by...
Pomyśl..Cztery znaki chcesz upchać w trzyznakowym stringu.. Nie wiesz jak to działa. Kiedy deklarujesz String * 10 rezerwujesz 11 bajtów bo każdy string ma znak swojego końca. Nie musisz wykorzystać wszystkich bajtów. String może być krótszy i zaraz po znakach postawiony będzie znak końca..ale zarezerwowałeś 11 bajtów i tam program nigdy nic nie będzie...
Witam wszystkich, temat stary jak świat: deklaracja zmiennej we w budowanej w atmege 16 pamięci Eeprom robię to tak: Dim zmienna As ERAM Byte (najpierw było bez ERAM i działa OK, jak dopisywałem ERAM to bascom zadziałał prawidłowo i sam zaproponował dokończenie deklaracji ) niestety kompilacja zwraca 2 typy błędów: 15 - wrond datatype i 42 - numeric...
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...
Do drasmen: jeżeli chcesz aby układ zadziałał musisz przestawić fuse bity na wew. generator np. 8MHz a do pinów gdzie podłączasz kwarc musisz wpiąć kwarc zegarkowy 32.768kHz. Program dla autora tematu: 'Program wykorzystujący przerwanie od timera0(8 bitowego) generowane co 8ms 'jeżeli przerwanie zostanie wywołane 125 razy, otrzymamy 1 sekundę...
1. framesize ustawiasz na 8 2. softstack ustawiasz na 16 Najprawdopodobniej twoją pamięc w tiny zapychaja stos i frame, zmniejsz te wartosci eksperymentalnie. Zmienna bit w bascomie jest definiowana w innym obrzarze pamięci, poza tym rezerwuje od razu cały bajt pozostawiając 7 pozostałych bitów na inne zmienne typu bit. Nie mozesz wywalić "$regfile",...
Sama zmienna "byte", jak sama nazwa wskazuje ma rozmiar 1 bajta. Prawdopodobnie coś robisz źle podczas samej deklaracji. Najlepiej wklej tu swój program.
Nie po przedrostku tylko: Dim Eliczba as ERAM byte Co do zaś zanikania danych z komórki 0 to jest to dawna sprawa, a przy tym musi być spełnione kilka warunków by doszło do takiego zdarzenia. W dodatku możesz przecież ręcznie wskazać gdzie będzie zapisana twoja zmienna za pomocą At przy deklaracji zmiennej jako pierwszą zmienną bajtową,lub zadeklarować...
Na początek do rysowania schematów są odpowiednie programy a nie Paint , kody programu umieszcza się korzystając z polecenia Syntax a nie wkleja zrzut . Schemat : brak jakichkolwiek kondensatorów do filtracji zasilania , brak GND dla uC , brak oporników ograniczających prąd diod jeden wspólny to żadna oszczędność max prąd portu to 20mA , czerwone LED...
... co do resetu to : Reset zeruje tylko zmienna globalna a zmienna lokalna pozostaje nie ruszona :) Ze tez tego nie moglem sie nigdzie doczytac... Przestrzeń w pamięci RAM na zmienne lokalne , jest przydzielana dynamicznie i dla tego nie są one zerowane , bo w czasie kompilacji ich położenie(adres w pamięci) nie jest znane. Bascom również nie zeruje...
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...
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...
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...
Witam. Proszę o pomoc. Nie mogę się doczytaćw pomocy bascom i na forum?! Chodzi mi o to że: jak zadeklalować zmienną w pamięci 2051 w taki sposób że po odpięciu zasilania ta zmienna np:X jest zapisana niezależnie od programu. np: dim x as byte x=x+10 end a po resecie zmienna x będzie miała już x+10 czyli 10 a po kolejnym już 20. Chodzi mi o wpis do...
Tak się dzieje jak stosujesz instrukcje Gosub, program idzie do procedury a tam znowu stosujesz Gosub i w tej na koncu nieszczęsne Retrurn. Program idzie w "krzaki" bo przepełniasz stosy i nadpisujesz w pamięci Ram zmienne. Poczytaj o procedurach i funkcjach w pomocy Bascoma, użyj Declare Sub a potem Sub: i END SUB. Stosuj też deklaracje ramki i stosu...
Nie rozumiem co się tutaj dzieje. Zmienna Reference nie ma żadnej przypisanej wartości początkowej. Jak np uzyskać 50% świecenia diody? Nie chodzi mi o stopniowe przyciemnianie, po prostu chciałbym mieć możliwość w dowolnym miejscu programu ustalenia jakie napięcie ma być na danym wyjściu. Nie potrzeba żadnej wartości początkowej, jest to zmienna typu...
Witam !!! Chcę wysłać a z komórki i załączyć diodę Mogą mi koledzy podpowiedzieć co robię źle w programie ? [syntax=text] $regfile = "m8def.dat" $crystal = 8000000 $baud = 9600 Config Serialin = Buffered , Size = 30 Config Portd = &B10111111 : Portd = &B00000000 'konfiguracja portow Config Portb = &B11111111 : Portb = &B00000000 Config Portc = &B00000000...
Kompletnie nie wiem o co chodzi w tym programie. Np to to co to jest: zmienna kali to bajt, ? Bo deklaracja zmiennej to na pewno nie. Albo to: Readeeprom Sek4 , K K to jest zmienną String więc jak ona może być adresem?
pewnie jakieś herezje tu przedstawiam. Oczywiście deklaracja Sw1 Alias Pind.5 i Dim Zmienna As Byte wcześniej. Właściwie to działa tak jakby tylko na jedną diodę. [syntax=basic4gl] If Sw1 = 0 And Zmienna = 0 Then Zmienna = 1 Waitms 30 Speed = 75 'ok 0,5s bo 32poziomy x 15ms = 480ms (1j.=0,0002s) For X = 0 To 7 Nr_led = X : Set Go Do : Loop Until Go...
Kwarc dajesz np. 12 MHz Robisz sobie pętelkę pomiarową wywoływaną z Timera np. co 200 µs sprawdzającą dane wejście pomiarowe. Jeżeli wejście jest =0 to nie zliczasz jeżeli = 1 to zwiększasz zmienną WYNIK o 1 (zmienna 16 bitowa) zakres będzie do jakichś 6.4 sekundy. W pętli sprawdzasz także czy zmienna nie przekroczyła 25000 (5 sekund). Jeżeli...
Napisałem wczoraj, ale program nie działa, mnie ma poleceń ack i nack bo kompilator Bascoma twierdzi, że jest w nich błąd, gdyby ktoś z was mógł je dopisać tam, gdzie są potrzebne. Jak napisałem tak: i2cwbyte 00000000 , ack to w tej linijce był błąd i2cwbyte vol , ack tu tez był błąd a jeśli chodzi o spacje przed i po przecinku to Bascom dostawia je...
Zmienna jest zadeklarowana, ale nie jest zainicjowana. Nie wiem czy bascom dokonuje autoinicjalizacji z wartością zero, ale jeśli nie to przy/po deklaracji najlepiej zainicjować domyślną/startową wartością każdą użytą zmienną, oprócz indeksowych z For bo są tak czy siak tam inicjowane. Wybrany fragment z tutoriala BASCOM-AVR Notice that a LOCAL variable...
Uwaga ZGADUJE: ;-) Ten tekst odczytujesz z RSa? Jeżeli tak to w BASCOMie jest komenda INPUT zmienna , po której program oczekuje na wartość zmiennej wpisanej przez terminal. Oczywiście ta wartość powinna się zgadzać z deklaracją tej zmiennej – jeżeli zmienną zadeklarowałeś jako BYTE to wpisanie wartości np. 1000 spowoduje błędny odczyt. Ps. Jeżeli...
Witam potrzebuję wykonać obliczenia CRC do modbasu w bascomie, ale chciałbym zrobić to za pomocą tablicy. znalazłem przykład na elektrodzie: http://www.elektroda.pl/rtvforum/topic99... ale niestety jest w języku C a ja go nie znam. Sięgnąłem po książke do C ale pomimo to nie jest dla mnie wszystko wiadome. czy mógłby mi kotoś pomóc w analizie kodu??...
Mam problem z prawidłowymi deklaracjami stosów pamięci. Żeby obliczyć zapotrzebowanie próbowałem zastosować rozwiązanie z $HWCHECK opisane w helpie, ale niestety nie działa prawidłowa na M2561 - zmienna _hw_lowest jest stale równa zero... Być może pomogła by obserwacja zawartości RAM podczas pracy programu co jakiś czas. Chyba najlepiej byłoby użyć...
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...
Mam pytanko co do zapisu eeprom . Mam do zapisu cztery zmienne [syntax=basic4gl]'''''''''''''''''''''''... Readeeprom Cena , 1 ' zmienna typu string Readeeprom Waga , 8 'zmienna typu string Readeeprom Z , 16 ' zmienna typu word Readeeprom Przep , 24 ' zmienna typu word ''''''''''''''''''''''''''''''''zapis...
Config Timer0 = Timer , Prescale = 64 On Timer0 Odmierz_1s 'podprogram wykonywany podczas wystapienia przerwania Dim Licz_8ms As Byte 'deklaracja zmiennej Enable Interrupts 'aktywacja globalnego systemu przerwan Enable Timer0 'aktywacja timera0 Counter0 = 131 'wpisanie wartosci początkowej do timera0 Dim Sek As Byte 'deklaracja zmienna zawierajaca...
Witam chciałem zaprojektować sobie oświetlenie schodów podobne do tego na filmiku http://obrazki.elektroda.net/21_12309139... w celu regulacji tego kiedy ma być aktywne to oświetlenie schodów tzn. żeby nie dochodziło do zapalania świateł na schodach np. gdy jest słoneczny dzień i jest jasno w domu tylko po zmroku. Dodatkowo chciałem jeszcze dodać...
super , dziękii za pomoc , a jeszcze jedno pytanie: to samo , tylko , że z przypisana zmienną np potega "x" i wykonuje "x" * "x" Deklaracja (przed pierwszym użyciem w kodzie): Declare Function Potega( Byval X As Integer) As Integer Definicja (na końcu programu) Function Potega( Byval X As Integer) As Integer Potega = X...
Witam, Mam mały problem z napisaniem kodu tak aby ten program uruchamiał się za pomocą przycisku [syntax=basic4gl]Config Pinb.1 = Output 'linia pb1 jako wyjście Config Timer0 = Timer , Prescale = 256 'deklaracja timera jako czasomierza On Timer0 Przerwanie_co_2ms 'deklaracja jaka etykieta obsługuje Led Alias Portb.1 'alias dla wyjścia b.1 Dim Licznik...
jeżeli zadeklarujesz : Pk_1 alias portA.0 Pk_2 alias portA.1 Pk_3 alias portA.2 ..... ..... ..... Pk_20 alias portC.3 to zmiany będziesz dokonywał tylko w deklaracjach , reszta programu zostanie bez zmian (jeżeli Pk_20 podłączysz np do portu A.0 to zmiana Pk_20 alias portA.0 i już) Ale chcąc sterować w pętli pamiętaj że : 1=2^0 2=2^1 4=2^2 itd... jeśli...
dim bleble as string * 1 Definiowana jest zmienna bleble typu String o długości do 1 znaku w pamięci SRAM. Liczba określa więc nic innego jak przewidywaną długość zmiennej typu String w znaku.
Możesz skorzystać z opcji "OVERLAY" podczas deklaracji zmiennych (DIM). Poczytaj w helpie o "DIM" gdzie masz tą opcje OVERLAY opisaną. Tak w skrócie: Deklarujesz zmienna LONG która za pomocą Qverlay jest adresowana pojedynczymi bajtami, dzięki czemu możesz czytać i wysyłać takie pojedyncze bajty.
Dzięki. Pozmieniałem ale nadal nie mam odczytu tylko 165165. Mógłbyś na to zerknąć? $regfile = "m168def.dat" $crystal = 4000000 'Deklaracja portów od wyświetlacza LCD Config Lcd = 20 * 4 'konfiguracja typu wyťwietlacza 'LCD Config Lcdpin = Pin , Db4 = Portd.5 , Db5 = Portd.6 , Db6 = Portd.7 , Db7 = Portd.4 , E = Portd.3 , Rs = Portd.2 'konfiguracja...
Witam Na razie zrobiłem to tak: ( wywaliłem obsługę rozjaśniania/ściemniania bo coś się timery "gryzły" - zamiast Twojej Long1 jest Wl1 ), na razie uprościłem kod do jednego wyjścia '********************* Konfiguracja $regfile = "m32def.dat" $crystal = 16000000 Config Timer0 = Timer , Prescale = 64 Config Portc = &B11111100 'Pc.0, Pc1 jako...
Napisz "wolny przesuw" przez u otwarte, "krótki" przez o zamknięte a "hołota" przez samo h i może ruszy :D ...a tak poważniej to na screenie widać, że błąd jest w liniach 479 i 711 więc tam należy szukać. Kliknij w linię informujacą o błędzie to Cię tam przeniesie. Czasem te komunikaty o błędach nie są precyzyjne i wcale nie musi chodzić o zmienną "lista_znakow"...
witam ponownie mam do was prosbe mam do napisania Zegarek w bascomie 8051 ni mam tu moj programik moze rzucilby ktos okiem czy nie ma bledow :wink: Dim Sekundy As Byte 'deklaracja zmiennej SSEKUNDY jako liczby z zakresu 0...255 Dim Minuty As Byte 'deklaracja zmiennej MINUTY jako liczby z zakresu 0...255 Dim Godziny As Byte 'deklaracja zmiennej GODZINY...
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...
$regfile = "m8def.dat" $crystal = 8000000 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portd.6 , Db5 = Portd.5 , Db6 = Portb.7 , Db7 = Portb.6 , E = Portd.7 , Rs = Portb.0 $lib "mcsbyte.lbx" Cursor Off Config Pinb.1 = Input Portb.1 = 1 Config Rc5 = Pinb.1 Dim A As String * 2 'Deklaracja umożliwiająca działanie komendyGETRC5 Dim...
Podpowiedz: zmienna mozemy przekazac do procedury / funkcji dwojako: byval i byref. W pierwszym przypadku tworzona jest zmienna tymczasowa - kopia przekazanej zmiennej i jej wartosc jest STALA przez caly czas wykonywania procedury/funkcji (chyba ze ta swiadomie ja zmieni). W drugim natomiast do procedury/funkcji przekazywany jest ADRES zmiennej w pamieci,...
Zmiennych w deklaracji i definicji funkcji (powtarzam za przykładami z helpa Bascoma) nie trzeba wcześniej definiować. Te które przekazuję w pętli do-loop, są wcześniej zainicjowane. Wciąż ten sam błąd storebit error [200]. Program oczywiście jest poglądowy ale do skompilowania w bascomie po dodaniu stosownych $ i config i po Ctrl-C / Ctrl-V. [syntax=basic4gl]...
Witam Napisałem program który ma po naciśnięciu przycisku dodać lub odjąć 50 do zmiennej a następnie wyświetlić to na LCD Problem jest taki ze po wgraniu programu bez naciskania na wyświetlaczu zmienna cały czas przeskakuje co 50 na LCD a jak nacisnę 2 przyciski naraz to się zatrzymuje jaki jest tego powód ? [syntax=basic4gl][/syntax] $regfile = "m8adef.DAT"...
Może nie umie wstawiać? $regfile = "m88def.dat" $crystal = 1000000 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portb.0 , Db5 = Portb.1 , Db6 = Portb.2 , Db7 = Portb.3 , E = Portb.5 , Rs = Portb.4 Config Portd = &B00001111 'portd 0 1 2 3 jako wyjscia portd 4 jako 1wire 5 6 7 jako wejscia Portd.5 = 1 Portd.6 = 1 Portd.7 = 1 Portd.3 =...
Te deklaracje (gdyby Kolega otworzył choćby na moment manuala) to deklaracje łańcuchów znakowych (tekstów) a liczby po gwiazdce oznaczają maksymalną długość napisu + 1 (znak zerowy zakończenia tekstu), czyli np. w zmiennej Tekst1 można zapisać maksymalnie 9 znaków. Oczywiście na tekstach NIE MOŻNA dokonywać operacji matematycznych. Jedyne co można robić...
(ciach) Declare Function Wyswietl_bajt(bajt1 As Byte) As Byte (ciach) Wyswietl_bajt &B00000000 zadeklarowałeś funkcje, ale nie masz deklaracji zmiennej bajt1 dopisz gdzieś: dim bajt1 as bajt pozatym funkcję wołaj tak: wyswietl_bajt(parametry), a nie: wyswietl_bajt param pozatym wywołując funkcję musisz wpisać gdzieś jej wynik (bo inaczej kompiler...
Problem kasowania rozwiązałem obliczając długość stringa do wyświetlenia i dodając do niego na końcu maskie ze spacji która przykrywa pozostały napis. Numer ze zwłoką w postaci wait nie zawsze będzie odpowiedni. Locate 1 , 1 ' Lcd Zmienna(licznik) 'wyświetl wartość zmiennej dla tej pozycji menu Kon = Lookupstr(licznik , Menu ) 'obliczamy długość stringa...
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...
zagladałem i wiele nie znalazłem, mam taki mniej wiecej program i nie wiem.... moze czegos brakuje? szukałem juz na elektrodzie, ale nie znalazłem niczego... [code] $crystal = 3500000 $regfile = "2313def.dat" Ddrb = &B00111111 Ddrd = &B11111111 '****deklaracje zmiennych Config Timer1 = PWM , PWM = 8 , COMPARE A PWM = CLEAR UP Config Timer0 = Timer ,...
Zrobiłem se coś takiego, ale nie działa tak jak powinno Jeżeli Pind.0 i Pind.1 są wejściami to konfiguracja portu 'D' winna wyglądac mniej więcej tak: [code][syntax=basic4gl] ................. Config Portd = 124 'Pd.0 i Pd.1 jako wejścia Portd = 127 'podciągnięte ................ [/syntax] Przewidywana żywotnośc EEPROM jest ok. 10 000 wpisów. W twoim...
$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 As Integer 't jako setki, dziesiątki i jedności temperatury wynikowej 'natomiast przecinek jako część ulamkowa odczytanej temperatury Dim Tspr As Integer...
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ą...
Witam Może ktoś zobaczyć gdzie popełniłem błąd w tym kodzie? Kod znalazłem na forum. Przerobiłem go troszeczkę, na obsługę dwoma przyciskami. Nie idzie na wyświetlaczu ten bargraph. Gdy przycisnę C6, wpadnie 7% i tak jakby zwiecha procesora: [syntax=basic4gl] $crystal = 16000000 'Deklaracja częstotliwości kwarcu $regfile "m32def.dat" 'deklaracja modelu...
niestety w obu kodach brakuje czegoś co by dodawało cokolwiek do zmiennej A, więc nie przyjmie ona nigdy wartości 1 lub 2 skoro na początku się ją zeruje. Jesli chodzi o podciągnięcie programowe to nie działa (dałem rezystor zewnętrzny). Próbowałem tak i działa: config debounce = 50 ' 50ms dla przycisku dim a as byte ' deklaracja zmiennej a=0 ' zerowanie...
Szanowni koledzy czy ktoś z was może mi powiedzieć jaką mogę osiągnąć precyzję przy odmierzaniu czasu przy wykorzystaniu układu ATmega16 z zewnętrznym zegarem 8.000 MHZ(rezonator kwarcowy)? Morduje to już drugi dzień i nie mogę zrobić tego w sposób precyzyjny - na każde odmierzone 10 minut atmege spieszy o ok 20s - taka zwłoka jest dla mnie niedopuszczalna...
Pozdrawiam wszystkich .Chciałbym napisać ..mam 18 lat wpadłam pomóżcie...A wpadłem w programowanie przy pomocy Bascoma. Przepraszam że podpinam się pod temat ale może mój problem jest błahy szkoda zaśmiecać . Pisze sobie programik do obsługi kolektora między innymi korzystając z czujników DS a że nie jestem w tym biegły co jakiś czas kompiluje i sprawdzam...
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...
- pytałem czy z punktu widzenia optymalizacji kodu jest różnica w obciążeniu w stosunku do globalnej deklaracji, w sumie retorycznie chyba :) . Różnice są tylko od strony programisty w ochronie wartości poza blokiem i zwolnieniem nazwy do innych bloków. Coś pominąłem? W zasadzie nic ;) ... bo właśnie nie ma żadnych jakichś różnic z punktu widzenia...
Ok posiedziałem ciut, poczytałem w necie jak się używa te Timery i ich przepełnienia . Powstał taki oto kod .Proszę wyświetlacz traktować jako pomoc pokazującą mi ile już wystąpiło przepełnień, zresztą bardzo fajnie to pokazuje. Ramowa zasada jest taka - programik ma zliczać przepełnienia do 2108 i się zatrzymać po osiągnięciu tej sumy(wstępnie ta wartość...
Witam serdecznie Mam taki kodzik $regfile = "m8adef.dat" $crystal = 8000000 'konfiguracja wyświetlacza LCD Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portd.0 , Db5 = Portd.1 , Db6 = Portd.2 , Db7 = Portd.3 , E = Portd.4 , Rs = Portd.5 Cursor Off Cls 'deklaracja procedury Declare Sub Get_th(t As Byte , H As Byte) 'Config Serialin = Buffered , Size...
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...
Pytanie jak w temacie. Mam zmienną typu string. W niej zapisane np: Tekst = "Jakis tam tekst" For I = 0 To Len(Tekst) Znak = .... Next I Chciałbym wyciągać kolejne pojedyncze znaki z ich ciągu (wyświetlacz matrycowy), ale nie znalazłem funkcji która mi to wykona. Zmienna Tekst jest definiowana w głównej pęli programu. Gdyby była definiowana poza nią...
Witam Kolegę Co prawda prezentowany kod to C, ale myślę że po jego przejrzeniu "załapie" Kolega w jaki prosty sposób można zrealizować funkcję triggera. [syntax=C] #include "Triggery.h" /* * Funkcja realizująca reakcję na zadane zbocze sygnału. */ uint8_t stan; //Zmienna okrelająca, czy nastąpiło już pobudzenie /* * Zmienna stan umożliwia w tym przypadku...
Doszedłem do tego jak zamienić wartość np: 123 dla danych PWM ale mam problem przy kompilacji error 260. [syntax=basic4gl]$regfile = "attiny2313.dat" $crystal = 12000000 $baud = 19200 Config Serialin = Buffered , Size = 20 Config Portb.2 = Output Config Portb.3 = Output Config Portb.4 = Output Set Portd.3 Set Portd.4 Set Tccr0a.0 Set Tccr0a.7 Set Tccr1a.0...
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...
Napisałem programik do wagi, obsługuje przetwornik ac w AtMega8 : $regfile = "m8def.dat" $crystal = 8000000 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portd.3 , Db5 = Portd.2 , Db6 = Portd.1 , Db7 = Portd.0 , E = Portd.4 , Rs = Portd.5 Dim I As Byte Config Adc = Single , Prescaler = Auto , Reference = Avcc 'ustawianie przetwornika AC...
Na wstępie chciałbym powiedzieć że piszę w BASCOM-ie AVR. Buduję urządzenie które ma wyświetlać wynik na wyświetlaczu 7-mio segmentowym (podyktowane warunkami środowiskowymi i widocznością). Napisałem program który działa (listing poniżej) ale dręczy mnie pytanie czy nie da się tego zrobić prościej tzn pobierać poszczególne cyfry bezpośrednio ze zmiennej...
Pomijając literówkę w słowie "eeprom" to deklarując zmienną jako eram byte to siłą rzeczy zostaje ona automatycznie zapisywana do eepromu pod adres 0. Masz dwie opcje: pierwsza to deklaracja zmiennej jako eram byte i odczytywanie jej z eepromu z adresu 0 lub zapisanie zmiennej jako byte i wcześniejszy jej zapis do eepromu pod dowolny adres i następnie...
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...
Witam, mikroprocesor Atmega 8A odczytuje błędne dane z czujnika temperatury MLX90614 wersja 5V Sprawdzone rzeczy: -ciągłość połączeń -napięcie pomiędzy nóżkami zasilania -nowy mikrokontroler -definiowanie innych wejść sda i scl w atmedze - różne adresy zapisu i odczytu zapisu:&B00000000, &H5A odczytu:&B00000001 &H5B -różne napięcia podciągające schematy...
Program będzie wykorzystywany wyłącznie do temperatur dodatnich. Wprowadziłem zmiany o których mówiłeś. Tak to ma wyglądać? Nie poprawiłeś wszystkiego o czym pisałem: W dalszym ciągu w instrukcjach warunkwych masz odwołania do pinów portu b: B.1, B.2 , B.3 zamiast C.3 , C.4 , C.5 np: "If Pinb.3 = 0 Then" winno byc : 'If PINC.3 = 0 Then'... i.t.d. odpowiednio...
Witam Zachęcony sukcesami z płytką EVB 4.3 zaprojektowałem i zamówiłem swoją - na początek z AtMega8 w DIP. Do tego pamięć 24C32 oraz układ do RS485. Wszystkie układy mają kondensatory 100 nF ( stabilizator 7805 również + jeden elektrolit ). Całość ze złączem pod wyświetlacz 2*24 ( właściwe 4*12 ) Reset przez rezystor 10 K do +5V AtMega8L ( na 8 MHz...
Witam W ramach dalszego eksperymentowania z AVR i Bascom popełniłem połączenie odczytu z DS18B20 z sterowaniem wyjściem uC ( przez tranzystor FET ) + dodatkową atrakcję - buzer, który sygnalizuje wł/wył tranzystora/wyjścia. Chciałem dodać możliwość zmiany temp max i min, przez proste menu. Menu zrobiłem w oparciu inny mój kod obsługujący ustawianie...
Witam Analizując http://www.elektroda.pl/rtvforum/viewtop... program w niektórych przypadkach mam problem ze zrozumieniem Dodano po 1 Napisałem coś sam ale coś nie działa dobrze. Dlaczego nie zmienia mi się zmienna ,,Liczba''. Gdy wciskam S1 lub S2 ( zmienia się ale jakoś dziwnie ) Poprawiono składnię fragmentu dotyczącego menu,...
Mam problem z przekazaniem parametrów do procedury: [syntax=basic4gl] 'deklaracje Declare Sub Kanal_ust(byval T1 As Byte , Byval T2 As Byte , Byval T3 As Byte , Byval T4 As Byte , Byval Kanal As Byte) Dim H_on(6) As Byte , M_on(6) As Byte , H_off(6) As Byte , M_off(6) As Byte 'wywolanie If Klawisz = 2 Then Call Kanal_ust(h_on(1) , M_on(1) , H_off(1)...
upss naraz wałkuję dwa tematy o SD, stąd nieporozumienie. u mnie taki kod działa na kwarcu 8 MHz $regfile = "m32def.dat" $crystal = 8000000 $baud = 9600 ' predkość transmisji $hwstack = 128 ' rozmiar stosu sprzętowego $swstack = 128 ' rozmiar stosu $framesize = 128 ' rozmiar ramki '********************* Deklaracja podprogramów Declare Sub...
Właśnie chcę to dokładnie zrozumieć by nawet bez kalkulatora móc to wyliczyć :) choć on bardzo ułatwia i nie trzeba za bardzo wysilać szarych komórek :) Kalkulatory jak najbardziej się przydadzą i za nie wielkie BÓG ZAPŁAĆ :) Z pierwszego kalkulatora zauważyłem, że Timer0 i Timer2 są 8 bitowe natomiast Timer1 i Timer3 16 bitowe Attiny13 ma tylko jeden...
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...
A więc do zapamietania: BYVAL w deklaracji podajemy tylko 1 raz Nie. :) byval , a druga jako byref . Ty masz inny błąd, nazwy przekazywanych zmiennych w deklaracji funkcji są takie same jak nazwy zmiennych globalnych. I tak naprawdę w funkcji operujesz na zmiennych globalnych, a nie na zmiennych przekazanych przy wywołaniu funkcji. Zrób sobie test,...
http://obrazki.elektroda.pl/3089511800_1... Witam, dziś prezentuje swój bezprzewodowy termometr pracujący na częstotliwości 433 MHz. Urządzenie składa się z nadajnika i odbiornika. Nadajnik odczytuje temperaturę pieca C.O. i wysyła ją do odbiornika. W odbiorniku mamy możliwość ustalenia górnego i dolnego progu załączenia alarmu, który...
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...
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, mam takie pytanko do speców od Bascoma, otóż zdeklarowałem sobie funkcję: Declare Function Scanstrsp(text As String , Byval Sep As String) As String potem jej "ciało" Function Scanstrsp(text As String , Byval Sep As String) As String Local I As Byte Local M As Byte I = 1 While I <= Len(text) If Mid(text , I , 1) <>...
Poprawiłem timer. Usunąłem deklaracje zmiennych dla K1-K5. Ale nadal problem leży w warunkach, bynajmniej tak wskazuje kompilator BASCOM a. Wskazuje również że wszystkie 3 błędy leżą w 61 linii kodu. Jak bym nie liczył nie mogę dopatrzyć się tych błędów. Poprawiony kod: $regfile = "ATtiny2313.dat" $crystal = 16000000 'Kwarc w Hz Config Timer1...
Ja też miałem takie cyrki z przerwaniem. napisałem więc program w ten sposób: '///////////////////////////////////////... '////////// TERMOSTAT /////////////// '///////////////////////////////////////... $crystal = 4000000 'rezonator 4MHz $regfile "attiny2313.dat" 'attiny 2313...
Witam Wykorzystałem do odbioru kod podany przez Kolegę Mirka [syntax=basic4gl] $regfile = "m168def.dat" $crystal = 10000000 'taktowanie procesora $hwstack = 32 ' rozmiar stosu sprzętowego $swstack = 10 ' rozmiar stosu $framesize = 40 ' rozmiar ramki $baud = 9600 ' predkość transmisji Config Debounce = 30 '********************* konfiguracja UART Config...
Witam. Skleciłem taki o to "fragment" kodu do obsługi zegarka RTC. Wszystko działa 'Program do obsługi zegara czasu rzeczywistego RTC PCF8583 Philips za pomoca magistrali I2C $regfile = "m8def.dat" 'Atmega8 $crystal = 8000000 'Kwarc 8MHz Config Lcd = 20 * 2 Config Lcdpin = Pin , Db4 = Portb.0 , Db5 = Portb.1 , Db6 = Portb.2 , Db7 = Portb.3...
Witam. Poniżej zamieściłem program w bascomie który właśnie pisze (jeszcze nie skończony) i mam taki oto problem: po sprawdzeniu składni wywala takie oto błędy: 1.Error 7 Line: 327 IF THEN expected 2.Error 222 Line: 327 illegal character '----KONFIGORACJA WYSWIETLACZA----.' Config Lcdpin = Pin , Db4 = Pa.5 , Db5 = Pa.4 , Db6 = Pa.3 , Db7 = Pa.2 , E...
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...
A masz jakiś prosty kod który może sprawdzić czy w ogóle uC wysyła jakieś dane przez rs232 przy wpisaniu np: cat /dev/ttyUSB1 lub read /dev/ttyUSB1 Dodano po 2 Zauważyłem mały problem z programem bascom a mianowicie jak dodam gdzieś w kodzie aby wyświetlało mi jaka jest wartość wpisana do zmiennej czyli print zmienna; to program się kompiluje i zapisuje...
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...
Witam.Napisałem dziwny program do obsługi 2 silników krokowych(dziwny bo jeszcze takiego nie wiedziałem :) )I mam z nim problem lecz nie oto chodzi .Czy ktoś mógłby mi napisać przykładowy program do obsługi silnika krokowego?Chciałbym zobaczyć w jaki sposób można jeszcze sterować tymi urządzeniami.To jest wstępny program do sterowania silnikami w robocie...
Da się na 1000% ponieważ przed tym miałem tzw "piórnik ściągę" i pokazywało temperaturę i czas w 2 linijkach jakby jako jedna. Tylko właśnie nie wiem jak to dokładnie napisać ponieważ nie mogę ogarnąć tego w kodzie z tego "piórnika" Teraz chcę żeby tak pokazywało tylko temperaturę. Ogólnie ten "piórnik ściągę" rozpatroszyłem na części pierwsze żeby...
Witam Wiem, że temat przycisku jest mocno nadwyrężony, ale ... Program ma jednym przyciskiem przy dłuższym przytrzymaniu zwiększać i zmniejszać wartość wyjścia PWM ( na zmianę ) lub przy krótszym włączyć/wyłączyć, czyli pwm1a = 0 lub pwm1a = 255. Każda z tych funkcji osobno działa ok, ale razem działa tylko włącz/wyłącz przy krótszym przytrzymaniu W1,...
Dziękuje za odpowiedź. Z tym, że nie nie można użyć zmiennej typu Bit doszedłem w nocy przeglądając help'a odnośnie Byval i Byref. Wstawiłem to trochę z automatu, bo te dane będą wysłane przez RFM12, a w ramach oszczędności zmienna bit stanu czujnika wysyłam jako bajt i mieści mi się osiem czujników w jednym zamiast ośmiu. Do Admina: Trochę popuściłem...
deklaracja zmienna bascom deklaracja polecenie deklaracja zmienna
schemat lusterko elektryczny rozrusznik sterowanie multiswitch naprawa
płyta główna klimatyzator płyta główna klimatyzator
Peugeot Expert 2014 – woda w podsufitce i na górnej półce, przeciek, odpływy, uszczelki Sterowanie podczerwienią Oras, Grohe – zawór NO zamiast NC, bateria łazienkowa działa odwrotnie