Bascom ma to do siebie, że tak naprawde nie wiadomo jak działają jego biblioteki procedur. Zobacz jak to jest zrealizowane np w języku C : [url=]LCD 4x40 i spróbuj to przenieść do tego swojego Bascoma. Raczej nie licz, że uda Ci się zmodyfikować biblioteki Bascoma. Jeśli masz pełną wersję, to zgłoś problem do producenta, w sumie to jego zadaniem jest...
Nóżki E,RS i R/W są sygnałami sterującymi i musisz je podawać z procka, to tak gwoli wyjaśnienia :) Poczytaj sobie specyfikację sterownika HD44780. Aha, jeśli programujesz w BASCOMie to nóżkę R/W zewrzyj do masy. Wtedy dane będą wysyłane do LCD, ale nie będą mogły być odczytywane. Ale BASCOMowa procedura tak działa :] Ogólnie podpinasz nóżki D7-D4,...
Witam Obsługuję czujnik DS18B20 w Bascomie. Procedura odczytu wygląda tak: 1wreset 'reset 1wwrite &H55 1wwrite &HCC 1wwrite &H44 'dokonaj konwersji Waitms 750 'przeczekaj czas konwersji 1wreset 'reset 1wwrite &H55 1wwrite &HCC 1wwrite &HBE Temperatura(1) = 1wread(2) 'odczytaj dwa pierwsze bajty 'DALSZA OBRÓBKA DANYCH.... Czy czas pomiędzy...
A skąd wytrzasnąłeś te 46875 :?: Pisano o tym setki razy , ale powtórzę ;) przyklad w Bascomie: $Crystal = 4000000 Const T1_value = 65536 - ( _xtal / 64 / 4) ... Timer1 = T1_value Zważywszy , że Bascom generuje procedury przerwania ... powiedzmy nieciekawie , to proponuję zmodyfikować stałą T1_value do postaci Const T1_value = 65536 - ( _xtal...
Czy istnieje możliwość "przyspieszenia" działania wyświetlacza LS020 z zastosowaniem Bascoma i dostępnej biblioteki graficznej ?
Chyba porypana. Ale spróbuj obliczyć ile zajmuje ustawienie portu (i jak) i jednak częstotliwość zegara/kwarcu. Wyżej zegara nie podskoczysz. ATtiny2313 chodzi do 16MHz. Jak pracujesz na fabrycznych ustawieniach 1MHz to i ASM nie pomoże. I w zasadzie czego spróbowałeś? Jak "nosave" to nie ma opóźnienia w odkładaniu/zdejmowaniu ze stosu. Bo tego nie...
Witam. Czy jest w Bascomie jakaś procedura która bezpośrednio sprawdza, czy liczba przechowywana w zmiennej single jest całkowita (naturalna)? Ewentualnie jak przy użyciu jak najmniejszej liczby kroków pośrednich sprawdzić czy wartość po kropce dziesiętnej ma wartość 0? Chcę użyć tego jako warunku i gdy single zawiera część ułamkową wyświetlić z maską...
Zakałdam, że droga komunikacji będzie eeprom<-atmega<-PC(plik txt). Nie mogę doszukać się w bascomie procedury czytania pliku txt na dysku twardym PC.Czy istnieje w ogóle taka możliwość?
na symulacji działa, ja jeszcze wymyśliłem coś takiego przycisk musi być podłączony pod INT. Nie jest dobrze; Aby użyc interrupt należy go najpierw skonfigurować jak ma działać i napisac procedurę co ma być zrobione w przypadku interruptu. np: Config Int0 = Falling ' lub Rising On Int0 Procedura ' "Procedura" jest nazwą etykiety w której umieścisz...
Mam problem z napisaniem w Bascom AVR procedury dla np. AT90S2313, która pozwalała by wykonywać coś w zależności od stanu na któreś z nóżek. Generalnie chodzi o to, aby zapalił diodę np. na PortB.2, kiedy na nóżce PortD.0 będzie stan niski. Próbowałem z If PortD.0 = 0 then set PortB.2 - niestety to nie działa, próbowałem też z BitWait PortD.0, reset...
Witam ! Jak w Bascom-ie napisać procedure do sterowania syntezy przez ck , data , en ?
Witam. Potrzebuję procedurkę, która wyśle na głośniczek (podłączony do jakiegoś portu) zadaną częstotliwość. W grę wchodzą oczywiście tony słyszalne dla ucha ludzkiego. Potrzebuję czegos w rodzaju czestotliwosc(argument), gdzie argument jest zadawaną wartością w [Hz]. Interesuje mnie zarówno bascom 51 jak i AVR. Z góry dzięki za pomoc!
Witam, nie mogę nigdzie znaleźć jak odczytać zawartość pamięci eeprom 24C02/04/16/64. Interesuje mnie odczyt i wyświetlenie zawartości na lcd 2*16, przewijanie(góra, dół, pauza).
Witam W trakcie prac nad projekcikiem, używam 5 przycisków, które obsługuję procedurą opisaną poniżej. Strzegę się w ten sposób przed kilkukrotnym zliczeniem tego samego przyciśnięcia przez program. If Sw_prawy_help = 1 Then If Pind.5 = 0 Then If V_menu > 5 Then V_menu = 1 Else : V_menu = V_menu + 1 End If Sw_prawy_help = 0 Klik = 1 Wyjscie_z_menu...
Pytanie laika ;] . Chciałbym zrobić procedurę , która mógłbym przywołać w każdym miejscu programu np wpisuję odpal 1 a wykonuje się portb.1 = 1 portb.2 = 1 Mam nadzieję , że dobrze wyjaśniłem o co chodzi. Pamiętam , że używalem czegoś takiego w innych języka programowania , ale procedur do bascoma nie mogłem nigdzie znaleźć.
Witam wszystkich taki problem ds1994 ds1996 zapis działa ok bez problemu. a w ds2433 po dodaniu opóźnienia waitms 5 tak jak w nocie nie działa zapis co robię źle słabo znam angielski więc większość czytam na domysłach. Proszę o pomoc. podaję procedurę zapisu która działa na ds1996 1994 bez problemowo. Sub Tablica_b7_zapis 1wreset Pinb , 7 1wwrite &HCC...
Witam wszystkich Może ktoś mi pomoże bo już wymiękam. Ogólnie pracuje na C ale mam jeden projekt w BASCOM który chcę skończyć i nie mam pojęcia co jest nie tak. po skompilowaniu prostego programu wyskakuje mi taki błąd: $large $regfile = "80535.dat" $crystal = 10000000 ' CPU clock frequence Declare Sub Zmiana(m_n As Byte , Mx As Byte)...
Poszukuję pomocy w napisaniu procedury obsługi klawiatury 4 przyciski, każdy na osobnym pinie do ATMega. Procedura ma być taka, aby reagowała na długie i krótkie naciśnięcie klawisza. Dokładnie są klawisze "+ " "-" "enter" "menu". Krótkie naciśnięcie "+" "-" ma reagować dodaniem 1, a długie, powyżej o,5sek dodaniem 10. Dodatkowo, naciśnięcie równoczesne...
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)...
Pracuje nas sterowaniem małego serwomechanizmu: Programuje w Bascom AVR i do tego celu wykorzystuję jedynie Timer0. Nie mogę wykorzystać dodatkowego timera1 bo ten będzie służył do odliczania czasu. Instrukcji Serwos() także nie chce wykorzystywać...jakoś nie mam do niego zaufania :/ Aktualnie program wygląda następująco: Program w zasadzie działa jednak...
Witam Chciałbym zachować wartość zmiennej po wybudzeniu uP z trybu uśpienia przez WATCHDOG. Dodatkowy RAM zewnętrzny nie wchodzi w grę, bo układ z założenia ma być minimalnych rozmiarów i zasilany z baterii. Nie chcę też korzystać z EEPROM, gdyż zapisy mają być częste (po każdym resecie) Zrobiłem test na płytce stykowej na AtMega8 dodając polecenie...
Witam. Rozpoczynam właśnie zabawę w obsługę serw modelarskich przy pomocy attiny2313 i bascoma. Niestety wbudowana w bascoma procedura "Config servo" mnie zawiodła. Postanowiłem więc samodzielnie wygenerować sygnał, który posłuży do obsługi serwa. Napisałem więc taki prosty skrypt: [syntax=vbnet] Config Pinb.1 = Output $crystal = 1000000 Dim A As Word...
Jeśli decydujemy się na programowe wyłączenie JTAGA, należy pamiętać o tym, że jednorazowy zapis bitu JTD do wartości 1 w rejestrze MCUCSR może nie wystarczyć i zgodnie z notką katalogową musimy dwukrotnie zapisać ten bit w ciągu czterech cykli zegarowych aby wyłączyć JTAGA. A jaki to problem dokonac na pocztku programu dwukrotnego wpisu: mcucsr= &H80...
Witam wszystkich. Mam problemik niby błahy, ale nie mogę go ogarnąć. Otóż skrobię sobie w Bascom procedurę do JEDNORAZOWEGO wykonania podprogramu. Nie mogę dać z tym rady, bo jakbym tego nie zrobił, program wykonuje mi się w pętli. [syntax=vbnet]Do If Charge_detect = 1 Then 'niepodłaczony Showpic 0 , 1 , Bat_ok flag = 1 end if if flag = 0 then flag...
Nie znam mozliwości w tym zakresie Bascoma. Jedno jednak jest pewne. Każdy program tego typu może działać sekwencyjnie. Oznacza to, że wywoływanie kolejnych procedur w procedurze działać musi. Jest jednak tzw granica zagnieżdzeń. Może ona wynika z możliwości samego kompilatora (programu tłumaczącego - w tym wypadku Twoim nie sądzę aby tak było), albo...
Polecenie konfiguracyjne serwa w języku Bascom wygląda następująco: CONFIG SERVOS = liczba , SERVO1 = końcówka [ , SERVOn = końcówka ] , RELOAD = czas W Helpie napisano, że parametr RELOAD to czas opóźnienia pomiędzy kolejnymi przerwaniami licznika TIMER0, rozdzielczość. Zazwyczaj jest to 10us, a wielokrotność tego to szerokość stanu wysokiego. W opisach...
Na [url=]TEJ stronie znalazłem fajny przykład zastosowania CAN (MCP2515) w Bascomie,ale źródło zawiera błąd w jednej linii o treści: Can_tmp = Eram_param_baudrate Zmienna CAN_TMP jest zadeklarowana lokalnie w procedurze, ale widocznie nie pasuje mu ta po prawej stronie równości. Albo źródło jest niekompletne, albo ja czegoś nie rozumiem. Ślęcze nad...
Drogi są jak zwykle dwie :) Jeśli program ma zostać w asmie to kompilacja w asmie i sprawa załatwiona. Druga droga - jeśli chcesz coś tym programie zmienić to lepiej przepisać go na Bascoma. Zakładam że twoja znajomość asma, jest średnia. Spróbuj wyłuskać poszczególne procedury i zbudować grafy przepływów, a potem przejść na funkcje Bascoma. Może program...
Da sie to zrobić? Bo robie projekt na atmega8515 (mam ich kilka więc nie będe kupował nowego) a on nie ma TWI a potrzebuje dołączyć pamięć EEPROM Jak to zrobić pod bascomem o ile sie da Witam wszystkich. Ostatnio spotkałem sie z podobnym problemem. Musiałem odczytać i zapisać zawartość 24c08 (1024 bajty). Niestety :( programy przykładowe załączone...
Moja wina nie dodałem że program pisany był pod bascomem. Może i to proste ale problemem jak dla mnie wydaje się być odebranie 2 sygnałów jednocześnie a wygenerowanie 4 x pwm. Może opisze bardziej o co mi chodzi. Odbiornik ma 6 kanałów sterującymi serwami chce 2 z nich zamienić na pwm. Odbiornik nie posiada innych wyjść. Układ kreci 2 silnikami lewo-prawo....
To zależy bascom 8051 zawsze da dłuższy kod niż asm a to dlatego ze w nim nie można wyłączyć procedur inicjalizacyjnych (tablica wektoró przerwań, itp). W bascom avr można wyłaczyć (noinit, nosp) ale częsc będzie zawsze dopisana przez kompilator bascoma. Jeżeli używasz bascom 8051 to pomyśl nad innymi funkcjami w programie, odpowiednim ich poukładaniu....
Zmagam sie z programem do odbioru kodow pilota w standardzie sony w bascomie-avr. Oparlem sie na procedurze opisanej w EP 8/2001 autorstwa Kantora Zoltana. Jak narazie nie udalo mi sie poprawnie zdekodowac sygnalu z pilota. Czy ktos dysponuje programem realizujacym to zadanie i moglby mi pomoc?
Witam. Znamy sie juz z mojego wczesniejszego tematu :) gdzie pytalem o cos podobnego ale dla jezyka C. Z racji braku supportu dla polaczenia 1wire-8051-jezykC postanowilem wykonac zadanie w BASCOMIE dla 8051. Usiadlem przerobilem troche kodu z C i oto efekty: $crystal = 12000000 Wysw Alias P2 'a-h W1 Alias P0.1 ' 3 anody dla 3 wyswietlaczy W2 Alias...
oczywiście można go zwiększyć ale trzeba pamiętać ze dla mojego programu potrzeba 4*50=200 bajtów wolnego ramu. można pominąć buforowanie ale trzeba zapewnić na tyle szybki przetważanie danych ażeby procesor musiał czekac na dane a nie na odwrót. napisanie tego w asembleże też jest jakimś rozwiązaniem ale to troche robote jak nie masz wprawy. proponuje...
Trochę to może zagmatwane co napiszę. Potrzebuję zrobić sub-rutynę w której chciałbym użyć Readeeprom do której chciałbym podawać adresy do odczytu z Eeprom poprzez parametr. Czy w Bascomie 2.0.5.0 tak można ? Poniżej przykladowy kod jaki chciałbym uzyskać: [syntax=basic4gl]$eeprom Data 0 ' zerowy bajt może zostać wyzerowany Poczatek: Data "0791" 'początek...
faktycznie bascom zabiera trocze pamięci ale to zależy od użytych funkcji i procedur jak troche się pobawisz to zobaczysz że morzna pisać oszczędnie w bascomie ja już bascoma opanowałem dość dobrze i uważam że jest dobry do testów i małych projektów a dla dużych i szybkich programów urzywam asm morzna stosować wstawki asm w bascomie to daje dobre efekty...
Jak bascomem odczytac &h00 z uarta ? Gdy napisze do aa=inkey() print cjr(aa) loop wywala ciąg zer. Procedura IsCharWaiting rowniez nie dziala na &h00 Zeby nie bylo ciagu zer, musze trzecia linijke zamienic na if aa<>0 then print chr(aa) Gdy wysylam do uarta ciag np: FF F0 A1 00 01 00 00 02 program odczyta go jako FF F0 A1 01 02. Jest jakis...
Witam, próbowałem przeanalizować ten kodzik ale naprawdę , uwierz - jest to baardzo ciężkie. Robisz narazie wszystko niezgodnie z zasadami programowania. Rozumiem oczywiście, że dopiero się uczysz ale postaraj się przestrzegać kilku zasad o których za chwilę a będzie nie tylko tobie łatwiej analizować napisany kod ale co najważniejsze szukać błędów....
Pisząc programy w Bascomie mamy gotowe procedury do obsługi pilotów kodowanych RC5. Ja jednak chciałem użyć pilota, który ma akurat kodowanie SPACE. Z braku oscyloskopu do obserwacji sygnału zmontowałem układ jak w załączniku - układ się sprawdził :) Układ to ATMega32 z podłączonym MAX232 i dalej przez kabel Null-Modem do PC-ta oraz oczywiście odbiornik...
Tak właśnie myślałem że używanie przerwań i poleceń wait nie jest dobrym rozwiązaniem. Dzięki za odpowiedź. To nie ma nic wspólnego. Po to są przerwania żeby w ten sposób z nich korzystać. Natomiast twój problem bierze się z całkowicie czegoś innego. Po prostu tak napisałeś przerwanie i tak często je wykonujesz, że u ciebie w tym konkretnym przypadku...
Okazuje sie, ze transmisja danych z duzymi predkosciami jest duzym wyzwaniem jesli korzysta sie z Bascoma. Problem udalo sie rozwiazac piszac odpowiednie procedury w kompilatorze ANSI C i przepisanie calego oprogramowania na ten jezyk.
Witam. Wykonałem płytkę pod wyświetlacz z noki3310 i atmega32smd. Wgrałem gotowy program który działa wyświetla ikonę ie. [code][syntax=basic4gl]$regfile "m32def.dat" $crystal = 8000000 Config Pina.2 = Output Config Pina.1 = Output Config Pina.0 = Output Config Pina.3 = Output Config Pina.4 = Output Lcd_dc Alias Porta.2 Lcd_sce Alias Porta.1 Lcd_rst...
Witam Potrzebuje jakiś gotowych procedur kodowania transmisji CYFROWEJ na x51 dla BASCOMA chodzi mi o to by mudz przesyłać transmisję CYFROWĄ na poziomie 9600 bps Jeżeli któryś z kolegów wie jak to napisać proszę o pomoc I proszę NIE imieczczać linków od postów BO umiem kożystać z funkci SZUKAJ A porady typu wyślij pare paczej "pyustych" mnie nie bawią...
Witam. Jestem początkujący w programowaniu więc proszę o wyrozumiałość. Potrzebuje program sterowania klapą (otwieranie i zamykanie dwie krańcówki góra dół i silnik lewo prawo). Chce aby jazda w gore lub w dol odbywała się w momencie zmiany stanu pewnej zmiennej zewnętrznej konkretnie zboczem rosnącym. Wyczytałem, że w Bascomie można zrealizować t...
Znalazłem w swych zbiorach kompletny tuner AM/FM z dekoderem RDS. Sterowanie syntezy PLL oraz funkcji AM/FM zrobione jest na układzie LC72131. Postanowiłem zrobić sobie amplituner z wykorzystaniem tego modułu Tunera. Niestety w internecie nie znalazłem przykładów sterowania tej syntezy z poziomu Bascoma więc postanowiłem napisać swoją procedurę, którą...
Ja właśnie robie "kabel" dwukierunkowy na tych CC1000PP z buforowaniem itd. Jeszcze nie zrobiłem, ale myśle (z wyliczeń tak wynika), że uda się aby transmisja była fullduplex 38,4 kb/s. Przy każdym cc1000pp stoi atmega 8 z kwarcem 11,0592. I pisząc w asemblerze myśle że dam rade, chociaz łatwo nie będzie, ze względu na długości procedur obsługio przerwań...
Zrob to po swojemu, bez kozystania z procedur Bascoma. ustaw odpowiednie rejestry, wlacz przerwanie i w jego obsludze wpisz byte=udr i tyle. W zmiennej byte bedziesz mial odebrana dana. Zmienna najprosciej zadeklarowac jako tablice czteroelementowa i do tego wskaznik zliczajacy do 4. Kazde przerwanie bedzie zwiekszalo dodatkowo wskaznik i sprawdzalo...
Witam. Szukam informacji nt. dekodowania RC5 w Bascomie. RC% wykorzystuje kodowanie typu Manchester i do dekodowania używa się takich samych technik jak dla kodu Manchester. Z. Hajduk w książce "Mikrokontrolery w systemach zdalnego sterowania" przedstawił następujące metody: *układy cyfrowej pętli synchronizacji fazowej DPLL *automat sekwencyjny Działają...
uP 2051, port P3.2, odbiornik TFMS.. - typowa aplikacja, wyświetlanie na LCD, program z "sampli" BASCOMA. (...) Wygląda to tak jakby zmienne command i subaddress były "zapamiętywane" i podawane do wyświeylenia na wskutek przerwania od obcego pilota co powoduje oczywiste zakłócenia. Zmienne Command oraz Subaddres są i muszą być zmiennymi globalnymi....
Rozumiem, że za pomocą tej swojej pierwszej metody chciałbyś uzyskać bardzo wysoką częstotliwość, ale nie bierzesz w tym przypadku pod uwagę, że takie programowe generowanie nośnej dosyć istotnie różni się od sprzętowego, o kótrym wspominał Konrad co sam już zauważyłeś. Tam czuwa sprzęt nad tym a w twoim programowym przypadku musisz wziąć pod uwagę,...
Po pierwsze musisz ustawić piny INT0 oraz INT1 jako wejscia (nie masz tego zrobionego) a samo aktywowanie przerwań nie ustawi tych pinów jako wejść czyli PIND.2 = Input PIND.3 = Input druga sprawa - po co włączasz aktywowanie przerwań poziomem niskim (Low level) ??? - wystarczy w zupełności. w takim przypadku, jeśli wyzwalanie przerwań będzie robione...
Witam Jako ze to moj pierwszy post chcialbym z gory napisac ze jestem laikiem jesli chodzi o uC. Bawie sie tym od 2 tygodni, probowalem programowac w C ale niestety za wysokie progi. 2 dni temu zabralem sie za bascoma i wymodzilem programik do sterowania solarami, na dwoch czujkach ds1820. Mam prosbe do Was, czy jest cos w kodzie co mozna poprawic (zapewne...
Krzaki niekoniecznie mogły się pokazać z powodu złego opracowania fontu, ale z powodu złej konfiguracji LCD, a dokładniej jego trybu wyświetlania kolorów. Korzystając z czcionki color16x16 i color8x8, przy złym ustawieniu konfiguracji LCD równiez miałem krzaki. Bascom zdaje się obsługuje wyłacznie 8-bitowy tryb pracy. Spróbuj innych konfiguracji ze...
Witam czy ktos moze mnie oswiecic w jaki sposob zapisac wartosc do rejestru Counter1 pod bascomem ? Mam taki prosty program i za nic w siecie bascom nie che go lyknac ............. I taki oto blad ASSIGNMENT ERROR line 8 Procesor ma ten timer w sobie. Jezli to wina bascoma to w jaki sposob zapisac ta wartosc z poziomu jakiejs wstawki assemblerowj ?...
Witam! Czy istnieje procedura odczytu sygnału z pilota SONY będąca odpowiednikiem GetRC5 (dla pilotów RC5)? Przeglądałem elektrode, suport na www firmy MCS ale wszystko co znalazłem to dosyć rozbudowane procedury. Poszukuje też materiałów na temat sposobu kodowania IR SONY i ewentualnych innych przykładów procedur odczytu w bascomie. (Procek to ATMEGA8...
Chciałbym podłączyć do procesora wyświetlacz graficzny od telefonu SIEMENS S6 Power. Udało mi się dowiedzieć że jest on oparty na sterowniku S1D1530 EPSON do którego mam dokumentacje. Wyświetlacz noże być sterowany szeregowo jak i równolegle i zasilany jest z 5V tak więc nie trzeba kombinować z zasilaniem ani dopasowywaniem poziomów logicznych. Pod...
Czołem, Od niedawna postanowiłem powalczyć z mikrokontrolerami. Zakupiłem płytkę do zestawu uruchomieniowego ZL2AVR, wszystko sobie zmontowałem i generalnie działa. To znaczy: działa, do momentu gdy próbuję odczytać stan któregokolwiek z wejść. Gdy tylko ustawiam wyjścia - wszystko działa ok. Napisałem sobie taki programik: ' No to tak: ' ' * Port...
Witam, stanąłem na kolejnym rozdrożu, o ile już potrafię śmiało robić wstawki asemblerowe w Bascomie, mogę i nawet poprawiłem na swoje potrzeby niektóre biblioteki Bascoma - gdzie trzeba było prawie tylko w assemblerze to jednak nurtuje mnie jedna rzecz. jak zrobić aby we własnej biblitece uzyskać jakąś hmm funkcję lub procedurę wywoływaną z parametrami...
Program pisany pod bascom avr wersja darmowa (ograniczenie programu do 4kB). ATmega128 Kwarc 16MHz Banalny program testowy na początek: $regfile = "m128def.dat" $crystal = 16000000 Config Portb = Output Do Portb.2 = 1 Portb.1 = 1 Portb.1 = 0 Loop End program wpisany do atmega128. wynik działa. Ale wystarczy że do programu dorzucę komendę np....
A ja próbuję tą ścieżkę jednak w kierunku C u siebie kierować. Ten język może jest nieco trudniejszy w opanowaniu, ale już na etapie początkowym widzę zdecydowane zalety tego rozwiązania. Przede wszystkim rośnie wiedza o podstawowych mechanizmach zachodzących w mikrokotrolerze, dzięki czemu można szybciej zacząć pisać lepsze jakościowo procedury, poza...
Już pisałem że będzie ciężko. Piszesz że jest tam atmega, jaka? Dodaj schemat a może ktoś Ci w bascomie coś skrobnie. Bez informacji co i jak jest podłączone do procesora nikt Ci nawet na napisze procedury inicjacji procesora.
Moi Drodzy, Przepraszam Jezeli Moje Pytania Beda Glupie Lub Lamerskie Ale Nie Moge Sobie Z Pewnymi Bascomowymi Problemami Poradzic. Pytan Jest Troche Wiec Podziele Je Na Oddzielne Posty Aby Szybciej Mozna Bylo Na Nie Odpowiedziec: Praca Na Portach. Realizujac Projekt Wspolpracy Procesora Z Dekoderem Dtmf Musze Odczytac Wartosc Podana Na Port. Co Wazne...
W jakiej pomocy? Chyba nie tej od Bascoma. Podkreslam, ze nie chodzi mi o podlaczenie wyswietlacza do mikrokontrolera - to dziala bez problemu od dawna. Problem tkwi w procedurze programowej konwersji formatu 8 bitowego przesylania rozkazow do LCD na format 4 bitowy. Chodzi o podlaczenie mikrokontrolera do portu drukarkowego i posredniczenie mikrokontrolera...
Do tej pory programowałem c51 tylko w atmelu ostanio zacząłem korzystać z bascoma, przerobilem sobie college z Edw i pojawiło mi się kilka pytań??? - Czy jest darmowa wersja Bascoma współpracująca z procesorami 89c51 (40 nóżkowymi) - Jak zrealizować transmisję szeregową w Bascom (wiem tylko że używa się do tego poleceń print, input, output...ale jak...
Dim T1 As Single Dim T2 As Single A co to? "Przesunięcia bitowe" na liczbach zmiennoprzecinkowych? Zamień single na int i powinno śmigać. Procedury obliczeńna liczbach zmiennoprzecinkowych pożerają mnóstwo miejsca. Dzielenie liczb całkowitych w bascomie AVR robi się za pomocą \, a nie /, ot taka ciekawostka. Użycie / powoduje wykonanie tego dzielenia...
W Bascomie oczywiście korzystasz z wbudowanych procedur obsługi LCD? No to spróbuj napisać to "na piechotę" w bascomie a zobaczysz ile więcej to zajmie. Procedury wbudowane w Bascoma przeważnie są pisane w asemblerze.
Dodajesz do katalogu projektu pliki "CONFIG_AVR-DOS.bas" i "Config_MMC.bas". "Config_MMC.bas" możesz zedytować. Najlepje też wywalić z niego "Driveinit()". Inaczej przy włączaniu urządzenia bez karty będziesz miał kilkuminutową przywiechę. Dodajesz te pliki do za pomocą: $Include "Config_MMC.bas" 'include mmc $Include "Config_AVR-DOS.BAS"...
Możliwe, że to na wyrost, ale możesz spróbować: Dim tempW as Word '... Do If Flaga = 1 Then Reset Flaga Cls Locate 1 , 3 tempW=Wynik Lcd tempW ; " " Locate 1 , 8 Lcd "obr/min" End If Loop Rzecz w tym, że nie wiadomo co się dzieje gdy używasz Lcd Wynik. Taki urok Bascoma. Do wyświetlacza wysyłane są połówki bajtów, a jeśli wtedy wystąpi...
Chciałbym jednak użyć CTC, ale kompletnie nie wiem jak się za to zabrać w Bascomie. Nie znalazłem na forum żadnych przykładów. Jak by ktoś poczęstował przykładem kodu dla z CTC w Bascom to byłbym niezmiernie wdzięczny :) Jakieś kilka dni temu, nie dłużej jednak niż tydzień, ‘gaskoin’ podal dokładną procedurę konfiguracji CTC. Jeżeli przeoczyłeś...
Witam Wszystkie szczegóły odnośnie transmisji masz na stronie 6 w postaci graficznej. Bardzo ładnie wszystko widać. W pierwszej kolejności ustawiasz pin CS i LDAC w stan wysoki a SCK w stan niski. Żeby rozpocząć transmisję do układu (DAC) ustawiasz stan niski na wyjściu CS następnie na wyjściu danych SI ustawiasz najbardziej znaczący bit dwunastobitowego...
Zamiana wyświetlaczy nic nie daje, zamieniałem nawet same kabelki łączące je z płytką i też nic. Jeśli chodzi o przerwania to mam odbiór danych z RFM12 oraz obsługę klawiatury na PCF8574. Może faktycznie coś na rzeczy z tymi przerwaniami. Wyświetlacz, który nie działa jak trzeba oprócz wyświetlania daty, godziny oraz części odebranych danych wyświetlać...
Mam taki szybki mikrokontroler firmy Maxim&Dallas ... dziala okolo 10 razy szybciej niz zwykla 51. Musze go taktowac zegarem 32MHz i wyswietlic cos na wyswietlaczu. Programuje w Bascomie 51 i zaczynaja sie schody. LCD mam podlaczone jak zwykle po waskiej szynie danych (4 bity programujace) i dla tego procka standardowe polecenie LCD Bascoma nie chce...
To jeszcze ja wtrące swoje 3 grosze. Co do select case to nie polecam - mniej miejsca zajmują pojedyńcze warunki IF tylko trzeba wtedy dobrze przemyśleć aby nie wyskakiwały dwa naraz albo chociarz prawidłowa wartość była wtedy kiedy oczekujemy tego. Dodatkowo zauważyłem ze w Bascomie 8051 użycie podwójnego lub potrójnego warunku IF (if cos=1 or cos=2......
'do liczby 1536 trzeba by jeszcze coś dolożyć, na wykonanie instrukcji Zasadniczo nie trzeba nic dokładać, bo wartość timera jest inkrementowana sprzętowo od razu (w kolejnym cyklu maszynowym). Czyli już w trakcie obsługi przerwania. Jeżeli obsługa timera zmieści się w 255 cyklach maszynowych, to zmieniany jest tylko młodszy bajt timera - czyli w procedurze...
Cóż, zależy jakie to są programy. Bo widzisz, AVR i 8051 są zupełnie różne wewnętrznie. Nie wiem czy znasz dobrze angielski i na ile orientujesz się w technice mikroprocesorowej, ale polecam Ci poczytanie not katalogowych na stronce Atmela. Jeśli chodzi o 8051 to gorąco polecam książkę Andrzeja Rydzewskiego p.t. "Mikrokomputery jednoukładowe rodziny...
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...
Witam! Mam pytanie co do wykożystania programowego SPI pomiędzy dwoma uC. A dokładnie chodzi mi o komunikacje między dwoma Atmega-mi 8. Narazie ćwiczyłem na dwóch attiny2313 ale nic z tego nie było. to znaczy układ odbiorczy nie odbierał niczego.:( Chodzi mi o programowe rozwiązanie SPI w bascomie. Są do tego gotowe procedury ale nie wiem dlaczego transmisja...
Sprawa dość podstawowa: Do 1wreset - reset magistrali 1wwrite &HCC- pomija podanie adresu (gdy jedna kostka) 1wwrite &H44-dokonaj pomiaru i konwersji Wait 1 - czas na konwersję 1wreset - ponowy reset 1wwrite &HCC - jak wyżej 1wwrite &HBE - odczytaj Odczyt = 1wread(2) Locate 1 , 1 Lcd Odczyt ; " " loop ..może mi jakieś linki zapodajcie przydatne do nauki......
write_command(0x40+x) to funkcja wpisująca wartość parametru jako komendę. Parametr 0x40 (64 dec) to adres pierwszej komórki przeznaczonej na znaki definiowalne w pamięci LCD. Tu wpisuje się "wartość" górnej linii poziomej znaku zerowego. 0x41 (65 dec) i druga linia, 0x42 (66 dec) trzecia linia itd do 8, później pierwsza linia znaku nr 1. Funkcja nie...
Ja zrobiłem taki układ na SE T300 (może być też T68i) jeśli chodzi o odbiór sms i sterowanie czymś tam jest fajny przykład w samples - sms.bas Mój układ dzwoni do mnie i wysyła sms kiedy mam alarm na centralce, a po odebraniu sms o treści UZBR lub ROZBR uzbraja/rozbraja zdalnie centralkę alarmową. Jeśli zaś treść sms to ZAL lub WYL to układ steruje...
Witam. Napisałem obsługę 2 termometrów DS18B20 w Bascomie. Wszystko ładnie działa, ale... W procedurze trzeba chwile poczekać po odczytaniu danych z termometrów. Wygląda to tak: 1wreset 1wwrite &H55 1wverify Dsid1(1) 1wwrite &HBE I1 = 1wread(2) 1wreset 1wwrite &H55 1wverify Dsid2(1) 1wwrite &HBE I2 = 1wread(2) 1wreset...
tylko ze tu jak dobrze rozumie trzeba każdą informacje wysyłaną na wyświetlacz wpisywać po kolei do tablic i żeby na wyświetlaczu pojawił się jakikolwiek napis to trzeba trochę się napisać i każda informację (np literkę) pisać w osobnej tablicy.. przykro mi ale przy obecnym poziomie doświadczenia nie będziesz w stanie tego sam zrobić. Wyświetlacz nie...
Cały problem polega na tym że programy typu Bascom i C mają już napisane procedury których wadą jest zazwyczaj brak możliwości wyboru układów peryferyjnych, które wykorzystują . W przypadku Bascoma jest najgorsza sytuacja, Nie ma do niego kilku bibliotek RC5, tylko jedna. pozostaje więc napisanie wstawki z asemblera , lub kawałka kodu w bascomie rezygnując...
To było coś jak łączenie dwóch języków. Dlatego napisałem że C z BASCOMem jakoś idzie połączyć Panie mirekk36 ;) . No - ale to nie jest żadne łączenie języków ;) .... o jakim myśli autor. Autor chciałby np coś takiego ;) struct { uint8_t byte1; char znak; } dane; Dim A As String*10 Do uint8_t i; for(i=0;i<10;i++) { a[i]...
Witam czy ktoś mógłby podany niżej program w Bascomie napisać w języku C? Próbuje zrozumieć ten program niestety Bascoma nie znam wogóle. Z góry dziękuje. Procedura odpowiedzialna za pomiar połozenia: Config Adc = Single , Prescaler = 128 , Reference = Avcc ,Procedura pomiarowa umieszczona w petli Do Loop Reset PORTC.1 Set PORTC.3 Set DDRC.1 Set DDRC.3...
Wydaje mi się że nie opłaca się ładować tych 32 bajtów do eepromu , pewnie procedura odczytująca zajmie więcej miejsca. Ale :) można by tam coś innego władować, w eepromie masz coś około 500 bajtów wolnych. Wolne miejsce można by wykorzystać na teksty wyświetlane na LCD. Niektóre łańcuchy też się powtarzają. Często masz np . [syntax=basic4gl]Locate...
Chcę napisać procedurę rozpoznającą sygnał z pilota samsung tv. Na analizatorze stanów logicznych odczytałem przebieg z guzika pilota (wkleję go później). Nie jestem do końca przekonany jak ustawić timer w bascomie. Timer musi być wyzwalany zboczem opadającym. Czy potrzebne są jakieś inne dodatkowe ustawienia dla timera? Bit startu ma ok 4,5ms logicznego...
Może to coś pomoże: Poza tym składnia jest na tyle podobna do VB, że daje się zauważyć brak "Return" po skoku "GoSub", jak również brak zakończenia procedury funkcji "End Function". Dodatkowo "U2", deklarowane w funkcji, nigdzie więcej nie występuje, natomiast jest U3min i U3max, zaś pętla "Do ... Loop" wygląda jakby miała działać bez końca, nie ma...
Witajcie Próbuje w Bascomie v206 wykorzystać wbudowany w 89S8252 eeprom 2k. Niestety system nie przyjmuje komendy Readeeprom jak i Writeeeprom W helpie pisze że te procedury dotyczą tylko AT89s8232 Czy da się jakoś zmusić bascoma zeby ją obsłużył? Pozdrawiam XAX ----------------------------------------... Człowiek się głupi rodzi i głupi umiera....
Cze. Czy ktoś ma może gotową procedurę obsługi RS pod bascomem8051 napisaną w normalnej pętli tak żeby dało się przerwać ją w każdym momencie bo jeśli stosuje polecenie imput zmienna to podczas oczekiwania na dane procesor "staje" i czeka a ja chce mieć możliwość przerwania tego czekania. Potrzebne mi to do urządzenia w którym komunikacja po rsie jest...
Ja ostatnio pisałem programik, który miał między innymi coś nadawać alfabetem Morse'a i do wytwarzania dźwięku użyłem sprzętowego portu szeregowego UART z mikrokontrolera AT90S2313. Ustawiłem odpowiednią prędkość nadawania (sposób liczenia znajdziesz w data sheet) i wysyłałem same znaki b'01010101 (55 hex). Nadawanie realizowane jest od najmniej znaczącego...
Znalazłem wiele postów opisujących sterowanie kolorowym wyśw. od nokii 3510i, ale ja korzystam tylko a BASCOMA i słabo z assemblera, więc jakby ktoś mógłby mi przybliżyć łączenie za pomocą dwuch kabli (+ trzeci pomocniczy). Czy mogę sterować według własnego upodobania, czy zegar strerowany jest z wyświetlacza? I prosiłbym o jakiś prosty program w BASCOMIE,...
Tyle czasu straciłeś na szukanie gotowca, że bez problemu z odrobiną chęci już miałbyś napisaną swoją procedurę do obsługi RC5. Czemu nie chce się wam chociaż trochę poznać to co wykorzystujecie w projektach. I nawet jak zdobędziesz kod źródłowy procedury obsługującej RC5 dla '51 to pojawi się zapewne kolejny problem z czymś innym , czego nia ma albo...
Nie wiem jak teraz wygląda bascom, ale kiedy ja zaczynałem programowanie w bascomie składało się tylko z bezmyślnego wykorzystywania gotowych procedur pod postacią poleceń, które nie koniecznie pasują akurat do aktualnego problemu. Nie mówiąc już, że o takich rzeczach ja wskaźniki, definicje, struktury... bascomowwcy mogą poważyć... Co innego C, jednak...
Spróbuj zastosować procedurę z helpa Bascoma.
Ba, na chłopski rozum... Ale spróbujmy, możliwie krótko: Stałe to takie wielkości (liczby) zadeklarowane w programie, które nie będą zmieniać swej wartości przez cały czas działania programu. Dla przykładu może to być powiedzmy Pi = 3,14 lub jakaś inna własna wielkość. Zmienne lokalne - to takie zmienne, które wykorzystywane są tylko na czas realizacji...
Witaj Użyłem twojej procedury jednak robi jakieś błędy: AT90S8535 zawyża mi pomiary AT90S2343 ma nie liniowy odczyt o ile w okolicach 23 stopni jest ok. to przy 30 zaniża już o 3 stopnie Jedynie co zrobiłem to zmieniłem końcówkę programu porównując z procedurą od 51 bo ta twoja pokazywała abstrakcyjny całkiem wynik. T = Makeint(bd(1) , Bd(2)) T = T...
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...
Ok masz słownie przedstawione algorytmy dla snifowania I2C start stop i stransmisji (wprowadzanie danych możesz zrobić przy pomocy shift right w bascom) Teraz musisz z tych elementarnych procedur poskładać snifowanie transmisji dla PCF8574. 1. procesor zaadresuje PCF i wedle tego adresu możesz uzyskać czy jest to zapis czy też odczyt i do którego z...
Witam. Czy ktoś się bawił programową emulacją interfejsu spi w bascomie i mu ona działała ? Właśnie usiłuję dołączyć kartę mmc do atmegi 128 ale nie mogę tego zrobić poprzez spi sprzętowe ponieważ port na którym ono się znajduje jest mi w całości potrzebny do czegoś innego w układzie. Znalazłem wiele procedur obsługi karty i napisałem kilka swoich jednak...
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...
opóźnienia ns nie mają sensu ? :) wywołanie procedury, lub wstawienie if'a moze zając więcej czasu ;)
Witam, zaczynam zabawe z Bascom'em i chcialbym sobie stworzyc procedure ktora jako parametr dostawalaby nr portu oraz pinu. Czy ktos ma pojecie jak to zrobic? Z gory dziekuje za pomoc PS Zeby bardziej zobrazowac problem ma to byc cos w rodzaju: sub aktywuj_pin(x as string*1, y as byte) portx.y = 1 'gdzie x i y to zmienna podana w wywolaniu procedury...
Może coś nie tak z procedurą inicjalizacji wyświetlacza. Powinien po włączeniu zasilania dość szybko pojawić się napis na lcd, 15 sekund po włączeniu to o dużo za dużo jak na lcd.
...Jakie jest zatem rozwiązanie tego problemu (jeśli jest)? Bascomowy UART programowy działa jedynie wtedy , kiedy wywołamy funkcję z nim współpracującą. W pozostałych przypadkach ( kiedy działają funkcje/procedury nie związane z programowym UART-em ) , nadchodzące dane są "niewidoczne" dla procka :( Np. jeśli masz w kodzie Wait 1 , a w czasie działania...
Impulsator nie będzie pracował na przerwaniu tylko zwykle w pętli do loop bo takie rozwiązanie wystarczy. W tejże pętli będą także wysyłane sygnały regulacyjne po I2C jako odpowiedź na regulacje wykonane impulsatorem oraz wyświetlane dane na LCD. Procedura obsługi przerwania od Rx (MIDI) odczytuje bajt i jeżeli równy jest 176 (nasze dane) to czyta dwa...
Imo jest to bezsensowne oszczędzanie. Ale to taka moja mała rada:) No i w/g mnie średnio będzie to działać, chyba że się postarasz mocno i będziesz blokował przerwania albo cuś:> Bo tak to co naciśnięcie klawisza / coś na lcd wysłane będzie się procedura przerwania wywoływać:>
W procedurze/podprogramie obsługi przycisku wciśniętego zwiększaj zmienną o 1 a w programie głównym, czy też tam gdzie to jest potrzebne, wykonuj program w zależności od tej zmiennej, np. wykorzystując SELECT CASE.
Niestety tak też już miałem i się wieszał przy poleceniu cls (bez LCD też, przy zmianie pinów z LCD i bez też. Ale mam inny problem. Czy można wywalić jakoś standardowe procedury obsługi LCD z kompilacji?? Zrobiłem sobie swoje procedury na 8bit i wsio działa (d0-d7 do p2 e p0.6 rs p0.7). Tylko jest kwestia, że kompilator wywala ponad 4k pliku wynikowego...
Temat ciekawy. Nie mam "gotowca" ale potrzebujesz zmienne: "Licznik" - ilość odczytów napięcia "Nap" - odczytane napięcie "licznik_zmian" "Wartosc" - 0 - gdy "Nap"<0,4V albo 1- gdy Nap>0,65V "wartosc_pop" - wartość z poprzedniego odczytu Licznik =0 Do ' pętla główna incr licznik call Odczyt_nap ' skok do procedury odczytu nap call sprawdz ' sprawdzenie...
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...
Dokładnie nie wiem jak w tym swoim Bascom-e masz zrealizowaną procedurę obsługi pilota ale powiązane to ściśle z prędkością zegara bo program w ściśle określonych przedziałach czasowy sprawdza stan wyjścia odbiornika RC5. Więc zmiana częstotliwości taktowania bez zmiany tych zależności czasowych spowoduję błędy odczytu. Musisz sobie zmienić wartości...
... To nazywane jest 1-Wire -z zastosowaniem trzech przewodów - wtedy używamy też Vdd a reszta pozostaje bez zmian i to jest 2-Wire Panowie co wy za herezje sobie opowiadacie ????? skąd wytrzasnęliście NOWY standard 2-Wire ??? Tego typu czujniki pracują TYLKO W JEDNYM STANDARDZIE i nazywa się on 1Wire! Natomiast są DWA sposoby połączeń czujników na...
Witam. Przypuszczam że znalazłem błąd w funkcji MemCopy , ale chciałbym sprawdzić czy nie występuje on tylko u mnie. :). Funkcja zwraca do zmiennej WORD lub INTEGER ilość skopiowanych bajtów. Jeżeli wynik ma być zwrócony, do zmiennej globalnej jest wszystko w porządku. Kłopot zaczyna się jeżeli wynik ma być zwrócony do zmiennej lokalnej, po zakończeniu...
Witam wszystkich. Bardzo ładnie proszę, o sprawdzenie kodu poniżej. Nie mogę za nic w świecie ustawić zegara, i z datą jest też nie do końca ok. Męczyłem się składając linijki, i nie wychodzi. Nie wiem gdzie są błędy. Zegar idzie, ale nie idzie go ustawić. Jeśli wyświetla 13:20 i ustawię inny czas, wraca z powrotem do 13:20 lub innej wartości. Czy może...
Jak zrobić coś takiego ?? Mam procek AT90S2313 Do niego dołączony COM poprzez MAX232 i 8x LED do portu B. Z coma odbieram dane konkretnie text wysyłany przez program LCDsmartie. Chcę teraz napisać soft który odbierze np 20 znaków i przetransformuje je na odpowiednie ciągi danych przeznaczone do wysłania na port B programik ma sterać wyświetlaczem widmowym...
Jeżeli ktoś ma programik czy sampla w Bascom , lub pomysł , na programik sumujący czas kolejnych naciśnięć przycisku. Po osiągnięciu 3 minut łącznego czasu przyciśnięć włączenie sygnału dźwiękowego i jednocześnie zliczanie od zera czasu następnych przyciśnięć. Długo szukam ale czegoś podobnego nie mogę znalęźć , a moja znajomść Bascomu, nie pozwala...
Zrób zmienną i na podstawie wartości tej zmiennej odczytuj okreslony pin (select case zmienna: case 1: e1=pina.0 :case 2:e1=portc.2 itp ) lub poprostu w procedurze odczytuj z góry ustalony pind... lub podepnij wszystkie czujniki pod jeden port w tedy bedzie latwiej: e1=portc.zm gdzie zm to Twoja zmienna
. Język BASCOM BASIC oferuje wiele instrukcji obsługujacych wyświetlacz LCD. Aby jednak mieć całkowitą kontrolę nad wyświetlaczem można stosować procedury w języku asembler. Poniżej znajduje się przykład: $asm Ldi _temp1, 5 'załadowanie kodu rozkazu do R24 Rcall _Lcd_control 'prześlemy do LCD jako komendę Ldi _temp1, 65 'załadowanie do R24 kodu znaku...
Witam wszystkich, Tak jak w temacie: Poszukuje sprawnego programu aby zrobić zegar LCD na ATMEGA8. Program musi być w języku bascom. Znalazłem coś takiego ale nie działa :/ Opoźnienie sekundy wynois jakies 4s 'Program zegara wykorzystującego przerwania od Timer1 'Przerwanie przepełnienia Timer1 jest generowane co 1 s '8 MHz/256/31250 = 1 s 'Przycisk...
Witam Męczę się nad uruchomieniem obsługi RC5 w Atmega128 na pinie E.4 (INT4). Konfiguracja wygląda tak: [syntax=basic4gl] Config Rc5 = Pine.4 On Int4 Readir Config Int4 = Low Level Enable Int4 [/syntax] Procedura odbioru tak: [syntax=basic4gl] Readir: Disable Int4 sei Getrc5(adres , Rozkaz) Rozkaz = Rozkaz And &B01111111 Return [/syntax] Generalnie...
Witam. Mam lcd z telefonu 5210. Wgrałem w atmege kod [syntax=basic4gl]'---------------- BIBLIOTEKA DO LCD OD TELEFONU NOKIA 3*** ----------------- '---------------- WERSJA ROZSZERZONA --------------------------------------- '---------------------------------------... '---------------- Specjalnie do gierek ------------------------------------...
Witam forumowiczów. Mam mały problem z przerobieniem programu do mierzenia temperatury wzmacniacza 2x200W, problem polega na tym że mam program pod kostkę AT89C2051 a obecnie dysponuje tylko atmegą 16. Oryginalny program jest użytkownika "lechoo". Byłbym bardzo wdzięczny gdybyście pomogli mi przy tym programie. [syntax=basic4gl]'----------------------...
Manual BASCOM-a, w opisie instrukcji SERIALIN mówi że bufor danych wejściowych przechowywany jest w wewnętrznej tablicy bajtów _RS232INBUF0 . Oprócz tego są dwa wskaźniki, na początek tych danych oraz na ich rozmiar. 'Using the CONFIG SERIAL=BUFFERED, SIZE = 10 for example will 'use some SRAM memory 'The following internal variables will be generated...
Cool_szczur ma absolutnie rację. Jeśli potrzebujesz szybkiego programu o jak najoptymalniejszym kodzie to jedynym wyjściem jest asembler. Jednakże programik, który zaprezentowałeś można znacznie przyśpieszyć. Najbardziej czasożerne dla procesorów są instrukcje warunkowe oraz instrukcje skoku ( również w asemblerze ). Dlatego przy programowaniu ( jeśli...
Wszystko rozumiem zrobilem już układ tak jak w helpie tylko jak użyć polecenia GETAD2051 ?? :D Nie wiem jakie wartości zwraca bo nie mam wyświetlacza a w symulacji PRINT zwraca mi tylko 0. Chciałbym porównać napięcie wejściowe z jakąś stałą wartością a po jej przekroczeniu sterować np. przekaźnikiem. Proszę o jakąś króciutką procedurę. :?
"Bascom nie radzi sobie z maleństwem" A mnie się widzi , że to programiści nie radzą sobie z Bascomem ;) Po pierwsze Ty chyba również zumek :D Tak deklaracja we/wyj powinna wyglądać Config Pinb.3 = Output Config Pinb.2 = Output Config Pinb.4 = Input zamiast wait3 spróbój waitms 3000 Bascom przy wywołaniu instrukcji Wait używa pamięci RAM, chociaż nie...
To musisz dołączyć procedury obsługi magistrali I2C i jak tam takiej definicji nie ma to będziesz musiał niestety sam napisać.
Jak "dostać się" do komórek tej pamięci o numerach większych niż 255? Bo procedura i2cwbyte, jak nazwa sama wskazuje, pozwala na wykorzystanie argumentu typu byte.
Jestem początkujący, studiuje Oślą Łączkę z EdW, zainstalowałem najnowszą wersie Bascoma Demo. Kupiłem płytkę AVT3500, złożyłem ją i wszystko działa poprawnie aż do tematu liczniki i niebogę załadować programu przykładowego, bo nie chce się wykonać funkcja ON TIMER0, gdy ją skasuje to program się ładuje, ale bez niej nie zadziała, a jeśli ona jest to...
...właśnie znalazłem chwilkę czasu i ze zdumieniem zobaczyłem, że te biblioteki to nie jakieś pliki binarne ;) tylko tak jak podałeś w przykładzie z tym LCD. hmmmm tylko czy jest gdzieś jakiś opis jak się do tego tak bardziej szczegółowo zabrać? Jakoś nie spotkałem materiałów , o "nazewnictwie" wbudowanych w Bascom'a funkcji/procedur zmiennych czy...
olo_3 -> to jest cały kod? ten który tu pokazałeś????? jeśli tak - to po pierwsze - gdzie masz pętlę główną po części inicjalizacyjnej programu ??? DO ... LOOP - chyba że ślepy jestem czy jak? (jeśli rzeczywiście jej nie masz to nie dziw się, że twój program wariuje bo po z tego co widać po inicjalizacji odrazu program leci do obsługi przrwania i się...
Przeczytałem Twojego posta i prawie go zrozumiałem (tak mi się przynajmniej wydaje). Mam tylko jedno pytanie: Czy transmisja pomiędzy A i B ma być szyfrowana? Czy chodzi Ci tylko o zabezpieczenie ze względu na błędy transmisji? Moim skormnym zdaniem powinieneś na końcu każdego przesyłanego z A do B stringu wysyłać sumę kontrolną CRC (jedno lub jak chcesz...
witam Przeszukując elektrodę można znaleźć mnóstwo procedurek dotyczących 1-wire na AVR ale niestety w większości pod język C lub bascom. W jednym wątku znalazłem jakieś procedury ale jak ktoś w nim zauważył z błędami. Kolejną procedurkę znalezioną w kursie asm pod avr znalazłem na mikrokontrolery.net. Procedurki są ustawione pod 4MHz. #define DQ_PORT...
Ja też dam przykład, mimo że już są, ponieważ wydaje mi się, że jest bliższy oczekiwaniom autora i nie zmienia stanu pc6...8. Musisz tylko zmienić używane w tym programie porty. Dim Stanled As Byte , Hlp As Byte Config Portb = 255 Portd = 1 'podciągnięcie dla przycisku Do 'pętla nieskończona Debounce Pind.0 , 0 , Proceduradozrobienia , Sub Loop End...
Ze specyfikacji wynika że w odpowiedzi nie dostajesz na końcu znaku CR. Wg. specyfikacji ASCII CR to szesnastkowa wartość 0x0D. Aby sprawdzić do dostajesz w odpowiedzi to po wysłaniu kodu zrób pętlę, która odbierze ileśtam znaków i wyświetli każdy w następnym polu wyświetlacza. Lepiej jednak napisać procedurę podpiętą pod przerwanie , która zrobi to...
jeśli będę miał zmienną typu byte, to ona bedzie w postaci BIN? żebym mógł każdy bit wysłać po kolei? Bo nie mogę wysłać naraz 8 bitów. Muszę zrobić pętlę która pobiera z ze zmiennej byte najmłodszy bit: jeśli 1 , skocz do podprogramu z 1 (procedura wysyłania 1) jeśli 0 , skocz do podprogramu z 0 (procedura wysyłania 0)
Witam, on niedawna uczę się Bascoma i chcę stworzyć układ który będzie dbał o zapalanie światła w określonym czasie. Oczywiście czas będzie ustalany przez użytkownika np od 15:30 do 16:43. Mam taki pomysł żeby godzinę zamienić na liczbę np 1530 i 1643 jeśli czas przeliczony na liczbę będzie pomiędzy to na pinie C.5 będzie stan wysoki. Na co dzień programuje...
Witam Zrobiłem termometr na Ds18b20 i wynik wyświetlany jest na 3 wyświetlaczach 7 segmentowych Led. Dodatnia temperatura działa bardzo dobrze jednak gdy pojawia się ujemna temperatura poniżej - 10 stopni na wyświetlaczach pokazują sie same 8 8 8 . Może to dlatego że pojawia się - ? Nie wiem jak w bascomie można napisać moduł z liczby np. |-10| = 10...
Poprawiłem program, sygnał podaje na pind.5, teraz wygląda on tak --------- Dalej nie dobrze. Jest kilka metod pomiaru RPM wirujacych elementow (walow) urzadzen. Widze ze zdecydowales na pomiar czasu pomiedzy impulsami wynikajacymi z jednego obrotu, mimo ze opis do org. watku mial na celu zliczanie impulsow w okreslonej jednostce czasu. Nie ma nic...
Witam, cel pozostał ten sam, lecz zmienił się kod, tym razem bez Lcd, więc jako zadanie dostałem opisanie krok po kroku otrzymanego kodu oraz przeniesienie kodu z języka Bascom na kod Asemblera i C. Jako, że programowanie nie jest moją mocną stroną, prosiłbym o pomoc (rady, sugestie najlepiej w sposób tzw. łopatologiczny jak można osiągnąć postawiony...
Witaj :D Według mnie tablica jest niezbedna poniewaz to w niej sa zapisane wlasciwe znaki , i wydaje mi sie ze nauczuciel sie myli bo samo polecenie getatkeyb() zwrocilo by numer wcisnietego klawisza a nie konkretna literke , liczbe czy znak . Przykladem moze byc fragment polskiego helpa do bascom-a w ktorym jest opisane dzialanie tego polecenia Funkcja...
Zastosuj przerwanie od Timer'a. ps. Nie ma czegoś takiego jak ATTiny16. Chodzi Ci o 15 czy 26 ? Tak na szybko (sprawdź): $regfile = "attiny13.dat" $crystal = 1000000 'częstotliwość taktowania $hwstack = 20 $swstack = 10 $framesize = 10 Const Div_t0 = 125 '1 ms Config Timer0 = Timer , Prescale = 8 On Timer0 Int_t0 Enable Timer0 Enable Interrupts...
Mateusz a powiedz mi czy w Twoim programie robi różnicę to czy zastosuję LS020 czy L2F50?? Te wyświetlacze maja najprawdopodobniej inne procedury sterujące i inne biblioteki są do nich potrzebne. Mój program jest do LS020. I jak mogę edytować to co jest umieszczone w pamięci EEPROM czyli mniemam że obrazki i czcionki?? W EEPROM jest: $eeprom Data &H00...
Czy jeżeli w Bascomi-e, w przerwaniu, umieszczę procedurę zapisu do pamięci EEPROM (jednokrotny zapis-jest flaga) a owe przerwanie od timera jest wywoływane co ok. 3,5ms, to czy owy zapis przebiegnie poprawnie ?(czas zapisu to ok. 4ms). Co w tym czasie będzie robił program - zostanie zatrzymany (także kolejne przerwania aby nie przeszkodziły), czy zapis...
Dokładnie tak jak pisze kolega xury. Być może wywołujesz jakiś podprogram, który wywołuje inny, który znowu wywołuje ten pierwszy albo gdzieś jest wyskok z podprogramu przez jakieś Goto. Jeśli używasz funkcji lub procedury z przekazaniem parametrów i nie zmieniłeś wielkości stosu to na 99% będzie to wina jego zbyt małej wielkości.
Witam ........... i uzyskałem takie numery 2865C38905000025 28CB3E8905000020 28E28A8905000050 282E93890500003D Jak te numery wpisać do tablicy i jak potem odczytać temperaturę z czujnika o danym numerze ID Kod poniżej działa, ale po wymianie czujnika temperatury zamieniają się miejscami. jak zmodyfikować ten kod żeby wstawić tam tablicę z ściśle przypisanymi...
Testowałem wprowadzanie wielocyfrowych liczb przy użyciu Getkbd() z powodzeniem w dwóch "edukacyjnych" projektach zabawowych z ciekawości. Jednym był przelicznik wartości Hex to Bin and Dec/ Dec to Bin and Hex/ Bin to Hex and Dec, a drugim mini generator - wpisujesz częstotliwość możliwą do wygenerowania przez sam AVR z palca i ten sam konfiguruje Timer....
Witam. Mam program do obsługi wyświetlacza tft z dotykiem. Program nie mój, działa prawidłowo ale jest problem z szybkością wyświetlacza i chciałbym przejść na Xmega128A3. Problem w tym że Xmegi nigdy nie miałem "w rękach" i mam problemy z przeróbką programu. Chciałbym też wiedzieć na pewno że ten program będzie działał na Xmega zanim wpakuję się w...
Witajcie, dziś postanowiłem się podzielić dorobkiem w postaci oprogramowania i wiedzy na temat pewnego modułu GPS. Zegar softowy synchronizowany GPS z dodatkowym wyświetlaniem współrzędnych i prędkości no i dorzuciłem w ostatniej chwili temperaturę z DS18B20 - taki szkoleniowy programik w BASCOM (świetny przykład - gotowiec dla tych którzy chcą zrobić...