Brak deklaracji procesora, brak konfiguracji portów i brak deklaracji zmiennych.
Zadeklaruj stringa o znanej długości tj. Dim x as String * 10 a nie samo string * .
Piszesz "nie działa" a to nie wiadomo czy LCD pusty czy kod się nie kompiluje. Ta Twoja wersja pamięta jeszcze dinozaury. Być może trzeba zmienną 4 bajtową jaką jest Single rzutować najpierw na 4 bajtową Long. Czyli Dim A As Single, B As Long. Zamieść kawałek kodu który Ci nie działa łącznie z deklaracjami zmiennych.
Witam ! Brakuje deklaracji zmiennych: R, obr, x Brak deklaracji podprogramu: "Prawo" i wielu innych podprogramów. Pozdrawiam. Stefan
Pokaż proszę deklaracje zmiennych.
Ano właśnie - bardzo dziękuję !
Deklaracji zmiennych nie pokazałeś.
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
Jak wpiszesz do wartości bajt liczbę 380 ??? Jak dodasz dwie wartości to też w obrębie bajtu czyli suma mniejsza od 255 ;) musisz sobie zmienić deklaracje na zmienne 16 bitowe
Jeśli to jest twój cały kod ,to nic dziwnego że nie działa. Gdzie deklaracje zmiennych i inne??
Powiem tak: Nie znam się na BASCOMie ale widzę, że END kończy program a dokładnie pustą pętlę w której powinien znajdować się odczyt z przetwornika i wyświetlanie, używając napisanych przez Ciebie funkcji. Przykładowo siała baba mak.../deklaracja zmiennych Do /pętla główna programu wykorzystująca twoje funkcje ODCZYT WYSWIETL Loop END ODCZYT: bla bla...
Kod jest za krótki brakuje wywołania timera co 4 ms na tym polega cala idea multipleksowania. Przerwanie musi wywoływać procedurę wyświetlanie. Brakuje deklaracji zmiennych.
Ś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ź...
MUSISZ zmienić na: [syntax=vbnet]Dim R As Byte Dim G As Byte Dim B As Byte[/syntax] Przepraszam bardzo, praktycznie już zapomniałem języka Bascom :(. Lecz jeśli tylko będę mógł udzielić pomocy, postaram się to zrobić.
Deklaracja jest poprawna, podaj więcej kodu:> A najlepiej cały... I popraw temat...
A jakichś deklaracji zmiennych w tym Bascomie nie potrzeba ? Co to jest to Eedr ?
Dam do przerwania niema reakcji wyświetla zero tak jak by licznik nie pracował. Tego typu problemy są w C jak nie użyje sie deklaracji volatile. Jak używa zmiennych Bascom, nikt nie wie poza twórcą i tymi osobami, które zdesaseblowały kod. Niveasoft był ekspertem od Bascom, może znajdziesz go na innym forum bo z Elektrody jakiś czas temu zrezygnował.
Nie znam bascoma, ale zapewne twoja zmienna jest liczbą 8-bitową, zatem musisz przy deklaracji zadeklarować zmienną mogącą pomieścić większą liczbę.
W deklaracji funkcji tylko raz deklarujesz "Byval"
uC wykonuje instrukcję po instrukcji. Może w jednej pętli wykonywać różne rzeczy ale nie w tym samym czasie. Napisz program tak jak ma się wykonać po kolei. Twój zakończy się po pierwszym END licząc od góry. Program który napisałeś nie kompiluje się z powodu braku deklaracji zmiennych i niekompletnej pętli Do: Loop. P. S. Dwie niezależne pętle w tym...
Witam Zastanawiam się w jaki sposób w Bascomie mogę sprawdzić ile jeszcze zmiennych (integer lub string) mogę zmieścić w programie. Mam w programie obsługę kart SD, i dość dużo zmiennych, program zajmuje 44% pamięci avr-ka . Pytam ponieważ chcę dopisać jeszcze kilka funkcji w programie i przy próbie deklaracji zmiennej string mam błąd : out of sram...
Ponieważ Fusing zwraca zmienną tekstową więc deklaracja zmiennych stanowiących wynik tej instrukcji powinna być następująca: Dim V As String * 6 Dim A As String * 6 Dim P As String * 6 Dim R As String * 6 Dim Vod As String * 6 Zmienne są wystarczająco długie dla zakresu 99.9. Jeśli wartość przekracza 100 powinno być String * 7
Pojawia się Wrong data type , pewnie chodzi o deklarację zmiennych, lecz nie wiem co z tym dalej zrobić
To, nad czym się zastanawiasz, to deklaracja zmiennych o nazwie "i" i "obj" https://pl.wikibooks.org/wiki/C/Zmienne i pętla "for" https://pl.wikibooks.org/wiki/C/Instrukc... "int" to typ całkowity ze znakiem; szerokość typu to 16 lub 32 bity, w zależności od platformy sprzętowej.
Dziwię się gdyby nie wywalał, ale jeden, ja znalazłem dużo więcej ! - zła postać instrukcji 1WRead: - co to za instruckcja : Iwreset - gdzie biblioteka do 1wire - gdzie deklaracja zmiennej Temp - gdzie deklaracja zmiennej Temp1 itd, itd
Wklej cały program, łącznie z deklaracją zmiennych. I używaj CODE do wklejania kodu.
Witam. Napotkałem drobny problemik. Po wpisaniu id czujnika: Sid = &H28C2F8A602000098 BASCOM wywala błąd 49. zmiana deklaracji zmiennej Sid nic nie daje. Cały czas pisze że nie mieści się w zmiennej, BYTE, WORD, LONG... Co z tym zrobić?
a 8MHz masz?:> Sprawdź PCB Rezystor 4.7kΩ masz na linii danych? Może podaj konkretnie co pokazuje sie na lcd. "Przyczepiliście się" :D do sprzętu , a żaden z Was nie zajrzał do kodu ;) A błąd ukrył się sprytnie , w deklaracji zmiennej T1 , która powinna być typu Integer , a jest ... :?: Piotrek
Podnieś Bascom do nowszej wersji. Wersję 2078 już spokojnie znajdziesz w sieci. Na 2080 się to kompiluje bez błędów mimo iż program zgłasza kilka ostrzeżeń o dwukrotnej deklaracji tych samych zmiennych itd.. Musisz wiedzieć że AVR-DOS potrzebuje minimum 1500B SRAM i w Mega32 zostaje Ci 500B SRAM. Nie zadeklarowałeś wielkości stosów HW i SW oraz ramki...
Program jest bardzo ładny i powinien działać, tylko niepotrzebna jest deklaracja zmiennej, i baudrate
Nadal nie inicjujesz interfejsu SPI poleceniem SPIINIT. Włącz helpa i poczytaj o poprawnej konfiguracji SPI. Autor którego kod wziąłeś mógł zostawić kilka niedociągnięć lub niedopatrzeń. Z tego co patrzyłem w twoim kodzie nie ma tego polecenia wstaw je po konfiguracji portów i deklaracji zmiennych ale przed procedurą inicjalizacji wyświetlacza.
Mam identyczną konfigurację, i żadnych problemów z LCD w trakcie symulacji. A jak działa, symulacja, w ogóle ? Możesz bez problemów śledzić wartości zmiennych ? Może problem tkwi w deklaracji LCD ?
No tak, tylko że w tym twoim attiny13 nic się nie zmieści, żadna deklaracja zmiennej. Zmieści się. Tylko trzeba zmniejszyć stos, który Bascom ustawia domyślnie na cały RAM.
Dzisiaj akurat potrzebowałem rejestru HC595 do rozszerzenia liczby wyjść użytecznych. Poniżej fragment kodu w bascomie. Przypisane nazwy odpowiadają katalogowym. Zmienną Portx traktujemy jak zwykły 8 bitowy port wyjściowy. Kod z pod etykiety 'obsługa rejestru' wstawiamy w pętli głównej programu, aby rejestr był na bieżąco odświeżany. [syntax=basic4gl]...
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 ;)
Brak kropki w deklaracji pinów wyświetlacza ma byc: DB6 = portb.1 Następnym razem sprawdz dokładnie tego typu błedy i nie dodawaj tematu z tak błahego powodu
Witam Przyznam szczerze, że właściwie nie miałem problemów z timerami w Bascomie (większych) jednak w zamieszczonym programie nie podoba mi się sposób deklaracji zmiennych. Dlaczego tego nie porozbijać na osobne linijki ? W dodatku pomieszane typy zmiennych... -- pozdrawiam
Możesz przytoczyć kawałek kodu (z deklaracją trablicy), bo jak rozumim to nie chodzi o zmienną tablicową, tylko o coś innego.
Łączysz: TX uc1 do RX uc2 RX uc1 do TX uc2 oraz dajesz wspólną masę. Napisz porządnie program nie zapominając o deklaracji jakiego uc używasz.
Nie, raczej chcialem zrozumieć po co w 2 miejscach podawac to samo skolo w deklaraji jest as int to po co ponownie podaje sie to w definiowaniu funkcji? Przy sub moglbym podac równie dobrze liczba2 as integer. A skoro definiowałem typ zmiennych ich nazwe w deklaracji sub to mógłbym już użyć sub sub_liczba_to_cyfra(liczba, ilosc_znakow)
Napisz taki krótki kawałek kodu ze wszystkimi potrzebnymi zmiennymi. Tak żeby dało się to kompilować. Napisz co to ma robić. Jeśli faktycznie potrzebujesz zapisywać te wszystkie zmienne to możesz je podać byref . Dopisz sobie na wszelki wypadek byref przed każdą zmienną w deklaracji suba i na dole też musi być tak samo.
Sama zmienna "byte", jak sama nazwa wskazuje ma rozmiar 1 bajta. Prawdopodobnie coś robisz źle podczas samej deklaracji. Najlepiej wklej tu swój program.
No tak, bo ja nie mam w zamiarze mieć alarmu dźwiękowego. Więc usuń z programu także deklaracje odnosnie wymiarowania zbędnych zmiennych i uzupełnij poprawki j.w. Wytestuj program w symulatorze running "step into code" (F8) i w odpowiednich momentach kodu uzupełniaj 'ręcznie' zmiany logiczne pinów a także symulowane wartości zmiennych (np: odczyt temperatury...
wkelj caly kod, albo deklaracje zmiennych Czemu chcesz umieszczać te zmienne w epromie? Bezpieczniej bedzie zrobic to normalnie.
wg helpa bascoma masz: Gosub podprogram 'wywołanie .... .... a oznaczenie podprogramu podprogram: .... .... Return sub wymaga wcześniejszej deklaracji i wywołania poprzez call poza tym możesz mieć kłopoty ze zmiennymi oznaczonymi samymi cyframi w załączniku masz termometr który zrobiłem dla koleżanki (robiony na szybko więc nie jest specjalnie zoptymalizowany)...
Problem już rozwiązany dzięki koledze Niveasoft Przy deklaracji etykiety przerwania od ADC należało dodać SAVEALL ponieważ w przerwaniu używam zmiennych typu Single. Reszta szczegółów w helpie.
przejżałem helpa i to dokładnie...posiadam wersję DEMO bascoma 2.0.11 i jest tam wspomniane jedynie o DECLARE SUB, nie ma ani słowa na temat deklaracji funkcji dlatego o to pytałem, dziękuję za odpowiedź pozdrawiam JarGol
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",...
Pozwól niech się "samo" zmierzy i wydaje mi się że nazwy są zakrutkie(A to przecież akumulator - daj dłuższe np. przerwanie0) do cls lcd "dlugosc:";impulsy waitms 100 loop przerwanie0: disable int0 enable int1 stop timer0 impulsy=counter0 return przerwanie1: disable int1 enable int0 counter0=0 start timer0 return i musi się coś...
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...
Wszystko się da zrobić kolego. Można np. napisać sobie małą procedurkę która będzie tłumaczyć kody z klawiatury na kody displaya. Coś w stylu: wypisz("еле... . . . sub wypisz(aa byval as string) dim bb string ' tłumaczenie ciągu aa na bb lcd bb end sub Oczywiście należy napisać...
Witam ponownie Zastanawiałem się, czemu ma służyć deklaracja dość dużej zmiennej tekstowej: Dim Czytaj_str As String * 100 Przy zastosowaniu wcześniej omawianego programu obsługi LCD, na ekranie zmieścisz 14 znaków w 6 liniach, co daje 84 znaki. Po drugie, według zamieszczonego kodu do ww. zmiennej wpisujesz tylko jeden znak więc: Dim Czytaj_str As...
Wydaje mi się że program kol.tmf da się przetłumaczyć na Bascom. void tmf_impulsator(void)//podprogram albo funkcja w Bascomie { uint8_t i=0;//deklaracje dim na początku programu static uint8_t enc_last; if(bit_is_clear(PINC,4)) i++;//sprawdzenie czy impulsator się ruszył 'if pinc.4=0 then if(bit_is_clear(PINC,5))...
... 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...
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...
$crystal = 8000000 $regfile = "M16def.dat" $hwstack = 128 Tu zmieniasz wg wlasnych parametrow '- deklaracja zmiennych dla usart ---------------------------------------- Dim Index As Byte 'kolejny znak w buforze odbioru Dim Odebrano As Bit 'flaga ustawiona po odebraniu znaku Dim Buf(10) As Byte 'bufor wejsciowy - 10bajtow '- konfiguracja...
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...
Chodziło mi o to, że program na początku ma dane konfiguracyjne: typ procesora, taktowanie, konfiguracja podzespołów i deklaracje zmiennych. Co do wyrażeń IF THEN ELSE END IF to są one poprawne. Do badania warunków można użyć symulatora wbudowanego w Bascom. Co do restartów to jest oto uwarunkowane wieloma czynnikami: stabilność zasilania, praca w warunkach...
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...
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...
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,...
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...
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...
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?
Witam Nie będę zakładał nowego tematu bo pokrywa on się z tym co miałbym założyć. Mam problem z kompilacją tego kodu: http://obrazki.elektroda.net/34_12624541... Chcę zrobić odbiornik RC5. Kod działa bez zarzutu na atmedze a tu ni hu hu. Rodzaj błędu świadczy tak jakby o braku wystarczającej pamięci SRAM. Attiny 13 ma ich 64 Bajty a deklaracja...
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ć...
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...
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...
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.
Ze względu na to, że w Bascomie nie mamy pełnej kontroli nad sprzętem, nie polecam rozwiązania poprzez skok pod adres 0. Podłączenie dowolnego pinu pod reset też nie jest dobrym rozwiązaniem - nie pamiętam dokładnie jak to było, dlatego nie będę opisywał dlaczego, ale należy przyczyny szukać w czasach i stanach jakie występują na pinach podczas resetu....
Można, a w BASCOM-ie przerwanie od portu szeregowego nazywa się "serial" i to jego obsługą musisz się zainteresować. Przykładowy kod w BASCOM-ie 51: $crystal = 11059200 ' czestotliwosc kwarcu $baud = 2400 ' predkosc transmisji Dim X As Byte ' deklaracja zmiennych Enable Interrupts ' wlaczenie przerwan Enable Serial ' wlaczenie przerwania portu RS232...
Tak naprawdę w pierwszej wersji możesz wyciąć pierwsze cztery linijki i programik też będzie chodził, gdyż jako argument funkcji podajesz wprost wartość. W drugim przypadku masz chyba namieszane z deklaracjami zmiennych. Zadeklarowałeś zmienne Waitt i Waitt1 jako byte. Typ byte ma zakres od 0 do 255. Sprawdź w opisie funkcji Waitus jakiego typu musi...
Zakładając, że użyjesz innego procka, dalej ciężko się domyśleć, o co dokładnie pytasz. Ale spróbuję :p Zapewnie chcesz najpierw obsłużyć przetwornik. Zatem na początku konfiguracja: - jeśli napięcie odniesienia ma być pobierane z wyprowadzenia AVCC mikrokontrolera: Config Adc=Single, Prescaler=Auto, Reference=Avcc - jeśli chcesz skorzystać z wewnętrznego...
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"...
Po pierwsze to uporządkuj program na początku konfiguracje , deklaracje zmiennych , ustawienia portów itp , potem właściwy program , Programy przekopiowałeś tworząc dwie pętle DO -LOOP pierwsza się wykona ( pomiar temperatury ) ale druga już nie .
Wlasnie nie liczy tych pierwszych pomiarow. Po wlaczeniu mam przez 10 sekund 0, potem juz normalnie co 10 sekund uaktualnia srednia. Ale tez dzisiaj zalalem do pelna na postoju ialem 18.9(jeszcze moze by sie litr zmiescil) ale jadac to spadalo czasem nawet dl 4L to raczej niemozliwe bo plywak przy max w baku raczej tak nisko nie zejdzie zeby podac taki...
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...
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...
Na mój gust do skoro mnozysz zmienną WORD przez stałą CONST o dokładności 0.0001 to dlaczego chcesz mieć wynik z dokadnością 1000 razy większą. To nie komputer PC. Ja bym zaokrąglił wynik do sensownej pozycji używanej przez kompilator ( w twoim przypadku 0.0001) i wynik się przecież zgadza. Problem jest typu: mmnożenie zmiennych typu SINGLE a wynik...
Witam! Udało mi się napisać obsługę pilotów NEC w Bascomie i postanowiłem się tym podzielić. Byłbym również bardzo wdzięczny za wszelkie uwagi, co do implementacji. Poniżej zamieszczam kod, jeśli ktoś ma jakies pytania - śmiało pisać. [syntax=basic4gl] $regfile = "m644pdef.dat" $crystal = 16000000 'KONFIGURACJA LCD Config Lcd = 16 * 2 Config Lcdpin...
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...
Zgadzam się z kolegą. Używanie polecenia wait to tak jakbyś strzelał z działa przeciwpancernego do muchy... Przykładowe skonfigurowanie licznika 16-bitowego w BASCOM tak żeby zliczał do 1s przy częstotliwości taktowania 16MHz: ( wszystkie ustawienia konfiguracyjne oraz deklaracja zmiennych ) Config Timer1 = Timer , Prescale = 256 ' konfiguracja licznika...
Hm przy próbie kompilacji bascom mi wywala błąd: Wprowadziłeś do porogramu zmienną "A" bez jej deklaracji (wymiarowania). Ponadto masz błąd w konfiguracji portów . Ustawiłeś cały portD jako wyjścia, wszystkie piny od d0 do D6 mają stan wysoki (1) i masz zamiar podłączyć sie pod D0 i D1 z przełącznikiem (przyciskiem lub podobnym) zwierając wyjście w...
Kolego poczytaj helpa i nie grzesz więcej :) No i stosuj zasady: na początku konfiguracja, deklaracja zmiennych, inicjalizacja. Potem pętla główna, a na końcu podprogramy,funkcje, obsługa przerwań. W tym momencie masz to wszystko wymieszane jak za przeproszeniem świnia w korycie. Nawet tego się nie chce analizować.
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.
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ę...
a to program Dodano po 11 Mam problem z załącznikiem może teraz.:) Dodano po 6 plik się nie dodaje ?? wyślę tak : $regfile = "m8def.dat" $crystal = 11059200 '$baud = 9600 '$baud = 19200 $baud = 38400 Echo On '******** KONFIGURACJA WYŚWIETLACZA LCD ****************************************... Config Lcd = 20 * 4 ' Deklaracja...
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...
Masz rację. Oczywiście popełniłem wcześniej bład. Zamiast Dim Flagi as Byte Flaga1 As Flagi.0 Flaga2 As Flagi.1 Flaga3.... itd chodziło mi o Dim Flagi as Byte Flaga1 Alias Flagi.0 Flaga2 Alias Flagi.1 Flaga3.... itd by łatwiej odwoływać się do poszczególnych flag będących bitami w bajcie flagi. Chyba jednak nie ma to znaczenia, bo kolejne wystąpienia...
Programy zazwyczaj składają się z: - konfiguracji portów i sprzętu - deklaracji zmiennych - funkcji i obsługi przerwań - programu głównego wraz z pętlą główną (W Bascomie funkcje i przerwania pisze się za programem głównym) Przepisanie dwóch programów jednego po drugim do niczego dobrego nie doprowadzi. Zwłaszcza jeśli żadnego z nich nie rozumiesz....
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 Wszystkich!! Jestem zupelniem poczatkujacym w C, wczesniej pisalem troche w bascomie. Probuje rozszyfrowac biblioteke delay.c, ktora jest dostepna w pakiecie Winavr. Probowalem odpowiedzi znalesc w necie,ale nic satysfakcjonujacego nie znalazlem. Moje pytania: 1. Deklaracja zmiennej #define F_CPU 4000000UL co to jest to UL? 2. Przeszukalem strony...
witam programuje w bascomie i nie wiem jak uruchomić drugi UART w Atmega162 zrobiłem to tak jak pisało w helpie, pierwszy uart działa bez problemu natomiast drugi nie $regfile = "m162def.dat" $crystal = 14745000 $baud = 9600 $baud1 = 19200 . . (konfiguracja wyświetlacza i deklaracja zmiennych) . . do A = Ischarwaiting() If A = 1 Then I = Inkey() Locate...
Autor też pisze o tym jakie mają być te zmienne, ale tego nie zauważyłeś przy kopiowaniu. Co innego deklaracja, a co innego wpisywana wartość. Po prostu: Co się stanie jak do butelki 0.5litra chciałbyś przelać zawartość litrowego słoika?
Witam, zaczynam z WinAVR i chciałbym dowiedzieć się jak zapisać poniżej przedstawione operacje ustawiania bitów. W Bascom wyglądało to np w ten sposób [syntax=basic4gl]Portb.2 = not Portb.0[/syntax] czyli ustawiam portb.2 odwrotnie do stanu portb.0, w C mogę zapisać [syntax=c]if (PORTB & _BV(PB0)) PORTB&=~_BV(PB2); else PORTB|=_BV(PB2);[/syntax] ale...
Problem rozwiązałem w 50%. To znaczy dzięki podpowiedzią kolegów co mi brakowało żeby działał termometr, który pracuje bardzo dobrze ,dopisałem do programu woltomierz , który pracuje dobrze. Do zamknięcia tematu pozostał jeszcze amperomierz , który mierzy spadek napięcia na boczniku sygnał wzmocniłem wzmacniaczem LM358.Nie wiem jak przeliczyć spadek...
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...
Zmiennych w deklaracji i definicji funkcji (powtarzam za przykładami z helpa Bascoma) nie trzeba wcześniej definiować. Masz racje w pewnym sensie, ale trzeba rozróżniać zmienne użyte w wywołaniu funkcji i reszcie programu, a zmienne lokalne dla funkcji. W poprzednim kodzie używałeś zmiennych, które nie były nigdzie zadeklarowane. Niestety na tym kończy...
Poniżej podaje cały program: Przeglądnąłem go....., -bez urazy; - nie zbyt dobrze (!!!) Odnośnie czasu: Masz tam podwójną deklaracje tych samych zmiennych, a już procedura ustawiania aktualnego czasu jest jakąś całkowicie zbyteczną kombinacją; - bardziej tego nie da się skomplikować. W skrócie: Korzystasz z wbudowanej w Bascom procedury obsługi zegara;...
1. W swoim kodzie wyżej dodałem deklaracje zmiennych - przepisz je; 2. Wyświetlaj odebrane dane gdy Flaga = 1; 3. Sprawdź taktowanie uC !!! Zrób miganie diodą i sprawdź, czy czasy włączenia i wyłączenia będą prawidłowe; 4. Napięcie na RX jest wartością średnią (zmiany poziomów podczas nadawania danych).
deklaracja zmiennych delphi deklaracja zmiennych bascom zmiennych
silnik dymić biały switch audio laguna klapa bagażnika
chińskie radio android chińskie radio android
Sony TA-F110 - Czy ten wzmacniacz gra dobrze? Termistor NTC w przetwornicy Volt Polska 3000W