Witam. Chciałem zrobić sterownik wzmacniacza audio na bazie kitu AVT2829. Szczególnie zależy mi na uczeniu się dowolnego pilota. Zrobiłem płytkę przystosowałem do niej program, użyłem większego procesora (atmega8) no i program działa ale strasznie ułomnie. Procedura zapamiętania kodów z pilota przebiega jak należy ale już samo działanie jest strasznie...
Witam, mam dziwny problem, SIM900 nie wysyła sms-ów. Program w Bascomie napisał mi kolega, nie należał do najkrótszych i wszystko działało, odbierał sms-y z komendami i włączał urządzenia, wysyłał sms, dzwonił, odrzucał połączenia itd. Kiedy wyodrębniłem z tego programu fragment który miał tylko wysyłać sms kilka razy zadziałał, a później przestał,...
Pozbierałem różne fragmenty z forum i zlepiłem coś takiego Nie robi tego co powinno czyli set porta.0 kiedy tel dzwoni. Komunikuje się z telefonem poprawnie - sprawdzalem, wiec blad w programie. Co mam nie tak? $regfile = "m32def.dat" $crystal = 16000000 $baud = 19200 Config Serialin = Buffered , Size = 100 Config Porta.0 = Output Enable Interrupts...
Są dwie opcje: Oproznij_bufor: Do Kod = Inkey() 'Czyści bufor Bufor = Ischarwaiting() Dane = "0" Loop Until Bufor = 0 Return lub Odczytaj_uart: Kod = Inkey() Dane = Dane + Chr(kod) Bufor = Ischarwaiting() Ring = Instr(dane , Ringtxt) If Ring > 0 And Stan = 0 Then Stan = 1 Wait 1 Print...
Witam Robie włącznik/dialer gsm na C35 ale mam problem czasami z błędnym odczytywanie komend AT oto część kodu. $regfile = "m8def.dat" $crystal = 11059200 $baud = 19200 Wait 1 Print "ATX0" ; Chr(13) Waitms 100 Print "ATZ" ; Chr(13) Waitms 100 Print "ATE" ; Chr(13) Waitms 100 Print "AT+CLIP=1"...
Mam problem z transmisją danych. Na PC mam uruchomiony terminal (terminal v1.9b), i jak wysyłam treść z AVR do portu RS232 to terminal poprawnie odczytuje wysłaną treść. Natomiast problem tkwi w transmisji w drugą stronę. Żeby sprawdzić czy poprawnie AVR odbierze dane wysłane z RS232, napisałem tak program żeby po odebraniu treści wysłanej z terminala...
Witam :) Pisze z prośbą o pomoc w rozwiązaniu problemu a mianowicie mam program w bascom który po otrzymaniu literki "a" poprzez uart za pomocą btm-222 powinien zgasić diodę. W symulatorze program działa bez zarzutu lecz gdy zaprogramuje uP to nie gasi tej diody, i nie zwraca wysłanej literki ale dioda "Data" na module się świeci czyli moduł odbiera...
Witam wszystkich mam taki problem.Potrzebuję z aplikacji android wysłać cztery zmienne typu Word do procesora Atmega 32 i zapisać je w Epromie.Dane wysyłane w Srtingu. Na razie wysyłam dane z terminala z Pc-ta.Aplikację na Android pisze mi ktoś inny.Potrafię wysłać jedną zmienną nadaną jako String przekształcić na Word i zapisać ją w Eprom na procku...
Programuję w BASCOM BASIC, i wysyłanie kodu się powiodło (piszczek) teraz tylko muszę uruchomić wszystko w ESC/P zobaczymy co z tego będzie Dodano po 1 ok, drukarka odpowiada na moje komendy, ale mam jeden problem: jakiej komendy użyć aby drukarka wydrukowała to co ma w buforze?? Dodano po 58 Problem rozwiązany, obsługa okiełznana i napisana. Dzięki...
Jeszcze mam jedno -może dwa pytanka. Otóż dla mnie najwygodniejsze było by zrobienie odbioru danych wszystkich czterech uartów w przerwaniach. Tak aby jeśli przyjdą jakieś dane, z któregoś z moich czterech modułów komunikujących się właśnie poprzez rs232 , to działo by się mniej więcej coś takiego że: 1.Po pierwsze dane przesyłane są w postaci "paczek...
Witam Wie ktoś może (no może poza datasheet-em :D ,gdzie nie znalazłem lub przeoczyłem ) w jaki sposób czyścić "ręcznie" bufor wejściowy i wyjściowy danego uarta? Czy instrukcja : _RS_BUFCOUNTR4=0 załatwi sprawę? Czy można ręcznie czyścić każdy z buforów wejściowych i wyjściowych dla każdego uarta z osobna? Jak to z tym jest?
Witam, mam dosyć upierdliwy problem z transmisją UART z użyciem modułów radiowych HM-R/T868. Problem polega na tym, że jeśli nadajnik nic nie nadaje, to odbiornik odbiera dziwne "śmieci" z eteru. Problem znika w momencie, kiedy będący w zasięgu nadajnik nadaje cokolwiek. Więc w głównej pętli programu umieściłem komendę: [syntax=basic4gl]Print chr(0);[/syntax]...
Czy prawdą jest, że domyślnie sprzętowy RS232 - UART ma bufor na 1 znak, i używając w Bascomie polecenia Input (odczytując ten bajt), jest on usuwany z bufora i znowu bufor jest pusty? Bo jakoś nie mogę znaleźć stosownej informacji w internecie. Dziękuję za odp.
Witam, proszę o pomoc w rozwiązaniu problemu w tym programie, bo już nie wiem co jest nie tak. Program ma sprawdzać stan portu pind.2 do którego podłączony jest odbiornik podczerwieni w odstępach 444µs i zapisywać wyniki do eepromu w bajtach. Zrobiłem to tak: $regfile = "m8def.dat" $crystal = 16000000 Config Lcd = 16 * 1a ' lub Config...
...Sprawdzę w datasheet bo widzę, że opinie są różne. A myślisz może , że mi to sie przyśniło :?: Niepotrzebna zgryzliwość :-( Nie da mi to jednak odpowiedzi na pytanie jak będzie pod Bascomem...robiw Chyba umiesz w Bascomie ustawić lub skasować bit :?: Piotrek Wyobraź sobie, iż umiem więcej... jednak pisząc w języku wysokiego poziomu nie wiesz jak...
Witam Pisze program którego struktura jest oparta o zdarzenia generowane flagami z przerwania. Mam 3 zdarzenia: - co 10ms - co 500ms - co 1s Nic by w tym nie było dziwnego, ale zauważyłem że coś nie tak z programem się dzieje. Zacząłem wycinać roboczo kod z programu aby sprawdzić co może być przyczyną. Wycinałem i wycinałem, aż doszedłem do samego szkieletu...
Przede wszystkim w komunikacji po Usarcie to przeszedł bym na przesyłanie ASCII, a wyrażenie kończyłbym znakiem CR (13). Wtedy możesz wysyłać odebrane ciągi na wyświetlacz, bez używania stałych. Używaj do tego zwykłego Print zamiast printbin. Tak swoją drogą nie wiem czemu większość początkujących próbuje komunikować się poprzez Printbin zamiast używać...
Ja ci radzę jednak wysyłać hexem stałej długości. Np coś takiego: #F,FFFF(enter) Następnie w obsłudze rs'a sprawdzasz jaki przyszedł znak i jeżeli jest # to reset licznika wejścia i zapisujesz dane do bufora. Jak przyjdzie koniec (czyli enter lub podobne) sprawdzasz sobie adres(odpowiedni znak) i przepisujesz sobie zmienne do innego bufora. Dodatkowo...
Konstrukcja własna, modułowa, moduł podstawowy to garść buforków i zatrzasków sterowanych przy pomocy 74LS138, a do tego dochodzi modulik AVR, właśnie buduje moduł do programowania BIOS Huba dla chipsetów Intela, bo akurat kupiłem tanio płytę główną z taka przypadłością, że właściciel pomylił się i wgrał inną binarkę niż potrzebna. Jak nastanie taki...
VCO to oscylator przestrajany napięciem. Jakie przebiegi to cudo ma generować ?. Sinuska, fale prostokątną czy coś innego ? Jaka maksymalna częstotliwość ?. To zadanko ze szkoły ( bo może da się zrobić lepsze rozwiązanie). Na szybko jak ja bym to zrobił - pod ADC podpiąć strojenie napięciem. Cyklicznie odczytywać wartość i umownie zamieniać ją na częstotliwość...
Pzy zapisywaniu na pierwszym pinie pojawia się 5V ale powinno 12, może ktoś się na tym zna troche lepiej i wie dlaczego tak jest (gdzie jest błąd). Tu jest link do schematu: Byłbym wdzięczny za pomoc. No dobra przejrzałem ten schemacik. Ale dlaczego Masz 4,5V na stabilizatorze skoro jest on bezpośrednio podłączony pod 12V ? Sprawdź czy jest 12V, lewa...
Cześć Zumek ! Faktycznie pogrzebałem troszeczkę w BASCOMIE i softowy UART zadziałał bez problemu. Jednak.........mam pewne spostrzeżenia: 1) Pomiędzy instrukcjami otwierającymi porty a pierwszą instrukcją wysyłającą dane musiałem zrobić wstrzymanie programu. OPEN "coma.7:19200,8,n,1" for output as #1 OPEN "comd.2:19200,8,n,1" for input as #1 WAIT 1...
Dokładnych instrukcji Bascoma nie podam, bo piszę w asm. Ale zasady ogólne : 1. Generujesz start (TWCR), w TWDR wstawiając adres oraz bit R/W. 2. W obsłudze przerwania dzieje się cała reszta. Na początku czytasz TWSR i w zależności od jego wartości postępujesz dalej, albo wstawiając do TWDR kolejne dane, albo kończac transmisję warunkiem stopu, albo...
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ń...
Witam, mam procesor ATMEGA128 16AI zasilany z 5V i podłaczony do niego LCD i MMC zasilane 3.3V. Magistarla SPI została do nich podpięta przez rezystory poza klinią DO (data out karty MMC). Po włczeniu układ nie reaguje na odczyt zapis do karty MMC, może 3,3V z DO mmc nie jest rozróżniany przez AVRa jako stan wysoki? Wyświetlacz LCD działą dobrze i ma...
Witam ! Napisz coś więcej, np. Jakiego używasz Bascoma AVR nr. ? jeśli masz poniżej 2.x.x.x to ściągnij i zainstaluj nowszą wersję demo ze strony Bascoma. Czy zainstalowałeś programator ? Czy przekładałeś odpowiednią zworkę w programatorze ? Dlaczego w buforze Flash masz same FF FF .. ? Pozdrawiam. Stefan
witam pisze pewien programik pod bascomem i potrzebuje zaimplementować w asemblerze bufor FIFO dla przychodzących danych. Napisałem pewną procedurkę, lecz nie wiem czemu często coś się w nim zamiesza. sprawdzałem go troche w debugerze ale nic nie mogę wyczaić. Oto kod procedurki zapisującej i odczytującej z bufora: Save_to_fifo: 'Const Wielkosc_bufora...
Witam, potrzebuję zrobić komunikację miedzy 2 procesorami ATmega16. Jeden wysyła zmienną typu Byte (Status) z informacją o stanie wejść, a 2 to odbiera. Natomiast 2 będzie wysyłał do 1 także zmienną Byte (Settings) z informacjami konfiguracyjnymi. Dodatkowo chciałbym wysyłać sumę CRC w obu kierunkach. Transmisja w obu kierunkach jednocześnie! Bity będą...
arktik1 --> zajrzyj sobie do helpa i zobacz, że shiftlcd to przesuwanie (sprzętowe) całej zawartości wyświetlacza a nie jednej twojej wyimaginowanej linijki. W ogóle sprzętowe przesuwanie działa różnie tak na prawdę na różnych wyświetlaczach. Ty masz akurat spory bo 20x4 i w pamięci DDRAM LCD nie ma bufora na całe linie - stąd te dziwne zawijania o...
Może w Bascomie jest jakiś swoistego rodzaju bufor. W momencie kiedy dajesz Print wywoływane jest coś w rodzaju Flush'a. Sam obsługiwałem moduł bluetooth podczepiony pod Atmegę i wszystko działało jak należy. Tylko z tą różnicą, że program był pisany w C.
Witam, uczę się pisać w Bascomie dopiero od niedawna, umiem już pisać podstawowe programy. Zainteresowałem się ostatnio interfejsem DMX512, chciałbym napisać program do odbioru sygnału w standardzie DMX512. Niestety moja wiedza nie wystarcza mi jeszcze na napisanie takiego programu samodzielnie. Znalazłem w internecie stronkę: Ściągnąłem z niej listing,...
Niestety zasmucę Kolegę - brak pliku eep nie jest powodem błędu programowania - ten komunikat to jedynie ostrzeżenie o tym, że plik nie został załadowany do bufora. Ja na innych programatorach programowałem od zawsze z tym ostrzeżeniem, które jest generowane jeśli nie wgrywamy nic do pamięci eeprom. Powód błędu jest 2 linijki niżej: "Could not dedect...
Z całym szacunkiem to jest to po prostu wioska. Nie zadałeś sobie trudu sprawdzenie biblioteki o której pisałem. Powinienem to tak zostawić , ale nie mogę na to patrzeć. Nie dość, że nie możesz używać standardowych instrukcji Bascom takich jak Lcddat, Showpic itd to jeszcze potrzebujesz 512 Bajtów na bufor.. Dyskwalifikuje to ten kod dla mniejszych...
Witam serdecznie Bazuję na dostępnym w sieci kodzie Pana Piotra Rzeszuta, służącym do obsługi modułu ENC28J60 w Bascomie. Wszystko działa jak należy, jednak chciałbym zmodyfikować kod tak, aby po włączeniu diody wyświetlał się aktualny stan jej działania ("stanled1")... Czyli po kliknięciu w przeglądarce przycisku ON przy diodzie, obok wyświetli się...
Może szukasz portów nie tam gdzie są? Przetestowałem z ciekawości i działa bezbłędnie co widać na printscreen`ie. Kod z tego testu. [syntax=vbnet] $regfile = "m128def.dat" $crystal = 11059200 $hwstack = 64 $swstack = 32 $framesize = 128 $baud = 9600 $baud1 = 9600 Config Com1 = Dummy , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 , Clockpol...
Programator elementów I2C „PROGXv13” umożliwia programowanie układów pamięci 24CXX, PCF8583, PCF8593 oraz Syntezy TSA6057. Powstał jako narzędzie ułatwiające budowanie urządzeń z tymi układami, być może kiedyś również z innymi na magistrali I2C. Dla ułatwienia program współpracuje z programatorem STK200, po zastosowaniu dodatkowej diody...
kurczę jeszcze gorszy jest ten problem bo okazuje się że wysłanie jakiegoś dłuższego stringa z PCta do Bascoma graniczy z cudem no chyba że znowu wysyłam znak po znaku i robię pomiędzy tymi znakami znowu przerwy po np 200ms czyli tak jakby symuluję wpisywanie znaków jak z klawiatury gdy jestem podłączony terminalem gdzie robię błąd ??? Dodano po 55...
Witam! Podłączyłem telefon komórkowy marki Siemens C35 do AtMega16 za pomocą układu konwertera napięć zamieszczonym poniżej: Jestem w połowie drogi ponieważ uP komunikuje się z telefonem (mogę zadzwonić oraz wysłać smsa), jednak nie mogę uzyskać podłączenia w drugą stronę. Na przykład prosty program odczytu stanu zasięgu anteny zwraca mi tylko na wyświetlaczu...
Tak żebym mógł wsadzić jakiś obrazek a potem normalnie z niego korzystać bez czytania pojedynczych Bajtów. tak wystarczy, że wydasz polecenia takie jak: "wczytaj_wszystko_naraz" albo "pokaż_cały_obrazek_bez_ramki" itp , a żeby wsadzić obrazek do pamięci można wydać polecenie "wsadź_obrazek" a nawet inne "dorób_cioci_wąsy" jeśli to będzie np akurat...
(at)Regan_3000 Czy któraś z sugestii powyżej rozwiązała Twój problem? Mam identyczny problem. (Jestem na Atmedze16/8MHz) Pisze w C, zegar działa poprawnie gdyż obsersuję na oscyloskopie transmisję danych (zauważam zmianę dziesiątek sekund/sekund/minut w bcd na linii SDA), zapewne coś siedzi w kodzie. (PCF8583 podpięcie: SCL,SDA -> przez rezystory...
Witam serdecznie. Niedawno postanowiłem przesiąść się z Bascoma na C. Postanowiłem napisać bufor kołowy do wysyłania znaków przez USART. Znaki niby się drukują, ale, jeśli rozmiar bufora jest ustawiony na 2 bajty to po drugim znaku dostaje "śmieci", jeśli na 3 bajty, to po trzecim, itd. main.c
Jak chcesz wysyłać bezpośrednio wartości do portu(tzw tryb binarny) to w bascomie komenda printbin zmienna. Spowoduje to wpisanie wartości zmiennej do bufora a potem jej wysłanie. W standardowej komendzie print jeżeli na końcu linijki nie dasz znaczka";" to do wszystkiego doda enter(LF CR) dlatego ci drukuje dodatkowe rzeczy po prosty daja tak print...
Witam, Ten programator nie ma żadneg bufora. Porpostu podpinam całą płytke do kabla który idzie bezpośrednio do LPT który jest na plytce!!. Tutaj jest w pdfie opisana ta płytka i ten kabel programujący... Co moge robić źle?? Pozdrawiam
U mnie poszło coś takiego: $regfile "m16def.dat" Config Lcd = 16 * 2 $crystal = 1000000 $baud = 9600 Config Lcdpin = Pin , Db4 = Portd.2 , Db5 = Portd.3 , Db6 = Portd.4 , Db7 = Portd.5 , E = Portb.1 , Rs = Portb.0 Config Serialin = Buffered , Size = 12 Dim X As Integer , Y As Integer Config Pind.1 = Output Enable Interrupts ' Musisz włączyć...
Digitrace używa tylko wejść portu. Bascom potrzebuje wyjść i wejść. Jeżeli programator to tylko kupa drutów, bez bufora, spróbuj podciągnąć wszystkie linie wejściowe i wyjściowe opornikami ok. 10kOhm do +5V. Jeżeli z buforem to zasil bufor z układu, podciągnij również wszystkie użyte wyprowadzenia portu LPT takim samym opornikiem do zasilania bufora.
Cześć Po pierwsze wgraj sobie programator Dybkowskiego, tam masz pełną jasność co do końcówek, możesz ustawić z której końcówki LPT wystawiasz poszczególne linie programatora. Jak nie pomoże to spróbuj na starym komputerze, mnie po wymianie płyty głównej przestał działać taki programator jak Twój, dopiero programator z buforem na scalaku zastartował,...
Witam Starałem się wyjaśnić platforma AVR lub zadania jaki ma wykonać NIE JEST TAK WAŻNE jak zorganizowanie komunikacji na RS232 za pomocą paczek HEX! Mogę wykorzystać dowolną większą kość AT! AT90s2313 Akurat tą kość mam gotową do pracy i kompletną do komunikacji na RS232. Czy jest możliwe zorganizowanie takiej komunikacji.? Potem wykona zadania......
Witam Czy wiedzą koledzy jak w Arduino zrobić i obsłużyć przerwanie od UART bufor wysyłania pusty? Jest obsługa przerwania odebrano dane, ale nie znalazłem obsługi przerwania bufor wysyłania pusty. Przepisuję program z BASCOMA. Tam była obsługa przerwania UDRE Serial data register empty interrupt).
Panowie, Panie potrzebuję pomocy bo siedzę i siedzę i nie mogę sobie dać rady z kodem BASCOM. Jestem początkujący, a raczej raczkujący w AVR, programowaniu itd. :( Próbuję zbudować sterownik do pokoju który ma wykonywać: -sterowanie światłem (8x) -sterowanie piecem/kotłem gazowym (temperatura noc i dzień-dwie różne temperatury) -każdy przycisk ma dwie...
Na tym spi chodzi ale troszke ostatnio pogrzebalem i duzo lepiej chodzi na i2C z tym ze czy wpychane przez spi czy i2c to przy ladowaniu nieparzystej ilosci bajtow (1 driver jest 2 bajtowy (16bitowy) ) wszystko sie rozkracza kawalek mojego kodu Sub Send_bytes() For I = 1 To 64 ' send byte array to shift regs Tempbyte1 = Bytes(i) Shiftout...
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...
W roli "programatora" zastosowano tam kilka rezystorów. Wystarczy dołączyć linie z portu LPT, ale bezpieczniejszym rozwiązaniem byłoby zastosować osobny programator z buforem.
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...
Witam, szukałem długo, ale nigdzie nie znalazłem. Problem wygląda tak: Mam programator ISP na LPT zbudowany na buforze. Działał mi pięknie przez kilka lat, zarówno w BASCOM AVR jak i w ISPprog. To było na Win XP. Teraz mam Win7 i ISPprog działa z programatorem, a Bascom jest głuchy. Ktoś ma pojęcie jak to można naprawić? Bardzo mi zależy, bo FuseBity...
Nawet jeśli jest tylko dołączone. Odpytywanie następuje co parę sekund a efekt bielenia ekranu mam za każdym razem kiedy nacisnę przycisk w celu załadowania nowego obrazka. A tu raport (wklejam na razie większość gdyż może Wam to coś ułatwi: Report : System_LCD_TOUCH PAD_rs485 Date : 04-17-2010 Time : 13:48:37 Compiler : BASCOM-AVR...
W zasadzie Twój kod działa ale nie bardzo wiem jak go zastosować :( To mój program $regfile = "m32def.dat" $crystal = 8000000 $baud = 19200 Config Serialin = Buffered , Size = 200 Dim Kod As Byte Dim Bufor As Byte Dim R As Byte Dim Q As Byte Config Portc = Input Portc = &HFF Config Porta = Output Porta = &B00000000 Do If Pinc.1 = 0 Then 'uzbrojenie...
No na logikę tak ale nikt przecież nie bronił ATMELowi zrobić wszystkich rejestrów 16-to bitowych w taki sposób. Szczególnie że tak było by prościej bo wszystkie rejestry wtedy były by takiego samego typu. No ale może jest tak jak mówisz. Nie sądzę że ATMEL dawałby specjalnie dodatkowy "hardware" (czyt. kasa) skoro nie byłoby takiej potrzeby, wtedy...
Witam. Dawno nie pisałem w BASCOM-ie a zdecydowałem się na niego bo myślałem, że tak będzie szybciej i prościej. Nic bardziej błędnego. Do napisania był dwu-trybowy program uśredniający do nieco przerobionego radiometru SOSNA. Ale nie w tym rzecz. O ile kod który zamieszczam powstał w miarę szybko o tyle błędu nie potrafię wyeliminować 3 dzień. Po krótce...program...
Ponieważ to jest Bascom to chyba szybciej będzie wstawić na linii E np w szeregu 6 jakiśch bramek, np inwerterów lub zwykłych buforów. Tylko żeby nie doszło do sytuacji że dane zmienią się a linia En jeszcze nie opadnie. Zresztą opóźnienia z bramek nie będą zbyt duże. Można też rozpatrzyć sterowanie prądowe o którym gdzieś tam na początku wspominałem....
ok, spróbuję go ściągnąć i zobaczymy jak będzie działał. Próbowałem jeszcze programować przez progisp, ale wyskakiwały podobne cuda przy próbach - podkreślam próbach, bo nigdy sie nie udało nim poprawnie zaprogramować uP. Nad Bascomem trochę posiedziałem i zauważyłem że z kasowaniem flasha (erase) nie ma problemów - kasuje za każdym razem(po operacji...
A jak inaczej czytać PCF-a jak nie przez I2C? Widzę że humor dopisuje :D Otóż, usiądź bo to może Cię zaskoczyć, TWI to sprzętowa, dużo lepsza od programowej, kiedy mamy możliwość skorzystania z dedykowanych pinów, obsługa I2C wbudowana w mikrokontroler. Żeby jej użyć należy ją najpierw skonfigurować dwoma komendami. W przeciwnym wypadku korzystasz...
Witam. Zna ktoś rozwiązanie jak ugryźć temat przesyłania danych taką trasą: PC <-RS232-> AVR <-RS232-> Układ docelowy Komputer i urządzenie docelowe mają ze sobą rozmawiać dwukierunkowo, AVR ma być pośrednikiem transmisji oraz dodawać / odejmować swoje dane kontrolne. Obie transmisje muszą być buforowane. Jakie znacie procki które spełnią...
A wiec po pierwsze to musisz miec programator ;) (polecam ten z elektrody pod bascoma), po drugie musisz sobie skompilowac ten program dajesz menu Program>>Compile (F7) a potem z tego samego menu dajesz "Send to chip" (F4), wtedy wlancza Ci sie okno z buforem i tam w menu masz funkcje Program chip itp, oto cala filozofia Oczywiscie wczesniej trzeba...
Miałem niedawno problem jak rozwiązać problem wielu hardware'owych uartów. Przychyliłem się do rozwiązania, w którym połączę parę układów AtTiny2313 przez SPI. Próbowałem nawiązać transmisję. Wszystko byłoby ok, gdyby nie to, że gdzieś gubią się bajty... Kod wygląda tak: SLAVE $regfile = "m32def.dat" $crystal = 16000000 $baud = 31250 Dim Cosik...
Odbieraj jeden duzy string, a potem funkcja SPLIT wyciągaj poszczegolne wartości. Albo na bieząco odczytuj znaki, az do przecinka, i wtedy sprawdzaj wartosc. To lepszy sposob, bo wymaga mniej ramu na bufor.
Niestety nie. Plik BAS to zwykły plik tekstowy, BIN to wersja binarna po kompilacji. Można, co prawda użyć deasemblera, który da kod programu napisany w asemblerze, ale jak ktoś go nie zna to i tak niewiele z tego skorzysta. Ale jeśli ten plik to kod programu do twojego kitu to masz, już wszystko, co potrzebujesz. Teraz trzeba tym tylko zaprogramować...
Witam, takie małe pytanko, czy zawartość biblioteki Bascoma może być napisana w Bascomie? kombinuję z czymś takim już: [mk_lcd_cls(i2c_tx_buf As Byte , Byval Amode As Byte] I2c_tx_buf(1) = _lcd I2c_tx_buf(2) = 1 I2c_tx_buf(3) = Amode I2creceive _uvga_slave_adr , I2c_tx_buf(1) , 3 , 1 [end] pomijam...
spróbuj: Loadadr K3 , X Do push XL push XH K6 = Inkey(#1) pop XH pop XL lds R16, {K6} cpi R16, 13 breq Loop_end st X+, R16 Loop !Loop_end: clr R16 st X+, R16 Dodano po 3 Już nie wspomnę że w kodzie jest błąd, bo jak trafi na znak #13, to go nie dopisze do bufora. Mój kod w assemblerze też zawiera taki błąd, bo nie wiem czy przypadkiem...
Mam taki fragment programu: $eeprom Data &HFF , 60% 'pierwsza komórka pusta, potem sekundy Matryca1: 'matryca definiująca elementy LED które składają się na pierwszą cyfrę Data &B01111011 , &B01000001 , &B00110111 , &B01100111 , &B01001101 Data &B01101110 , &B01111110 , &B01000011 , &B01111111 , &B01101111 Data &B00000100 Matryca2: 'matryca...
Chłopak po prostu chce prościej. Ja bym zapuścił PWMa i w przerwaniu od niego uaktualniał zawartość rejestru OCR0A (a mowa o ATTINY13). Obsługę przerwania i wogóle wszystkiego zrobił bym w assemblerze bo to będzie bardzo krótki kod. A BASCOM strasznie by to skomplikował. Nawet żadnych rejestrów nie trzeba by odkładać bo program główny nic by nie robił....
No, coś mi się wydaje, że jednak może nie do końca rozumiesz właśnie to wszystko i stąd takie podajęcie. Co to w ogóle dla ciebie znaczy, że: Bo niby po czym innym program ma poznać czy odczytane dane pasują w tym określonym miejscu ? .... toż twoja próba obsługi tego przerwania - pokazuje, że w 1000% mógłbyś wykorzystać mechanizm z Bytematch Ustawiłbys...
Witam, ja się w ogóle nie dziwię, że masz taki efekt, ja gdybym był na miejscu procesora i gdybym otrzymał taki kod to też bym zwariował na maxa ;) Na prawdę jeszcze czegoś takiego to nie widziałem, żeby : 1. nie skorzystać ze sprzętowego UARTA - gotowca w bascomie 2. nie skorzystać z pięknych buforów cyklicznych - gotowca w bascomie tylko w zamian...
Witam, Mam mały problem z komunikacją między uC. Ale od początku. Schemat układu pochodzi z EP Samą komunikację udało mi się zestawić i działa bardzo dobrze (załączony kod poniżej). Master non stop odpytuje slave i jest git. I teraz mój problem, chcę dodać w masterze odpytywanie powiedzmy co 0,5 s i tu zonk. Kiedy dodam Waitms 500 po każdej pętli komunikacja...
Dobrze rozumujesz z tym ,że w telefonie stan wysoki to 3,3V tzw. LVTTL i bezpośrednie podpięcie się TX z kabla do RX telefonu może skutkować brakiem zasięgu, a nawet uszkodzeniem UARTu w telefonie. Trzeba więc dostosować się do 3,3V. Mona to zrobić na różne sposoby, od najprostszego ogranicznika diodą Zenera, lub np. zastosować bufor.
Twoim podstawowym błędem jest to że ciągle czyścisz ekran. Ta operacja zajmuje prawie 2 ms Nie wiem po co to robisz ? Wystarczy zdefiniować bufor w który bedziesz wpisywać swoje wyniki i ten bufor cyklicznie wyświetlać ale tylko wtedy kiedy to będzie konieczne czyli w zależności od ustwienia ew. flag sygnalizujących np. zmianę czasu. Inna sprawa czy...
Oczywiście próbowałem ale bez efektu, sprawdzę jeszcze na tych tranzystorach. Jak nie zatrybi to zostanie mi chyba tylko dobudować bufor.
Jeżeli dobrze zrozumiałem to inkey() zwraca jeden znak z bufora w kodzie ascii, czy tak? Napisałem kod, który w przerwaniu (bytematch=all) odczytuje bufor, w formacie c/ss:mm (zmienna typu string), ale nie wiem jak z tego wydzielić zmienne ss i mm (sekundy i minuty) jako "byte". Wolałbym nie wstawiać pętli w odczycie, ponieważ mam sporo danych do obrobienia...
Witam wszystkich w tym ostatnim dniu roku 2011 i przesylam serdeczne zyczenia na nadchodzacy rok. Ostatnio zainteresowalem sie sposobem sterowania powiedzmy na poczatek LEDami (on/off) za pomoca telefonu. Po przeszukaniu forum i innych stron, zdobylem wiele wiedzy (komendy AT, kodowanie PDu, itp), postanowilem stworzyc swoj sterownik. I teraz sie nasuwaja...
case to taka imitacja warunków. Toszto wiecej kodu żre, niż byś miał do każdego porownania zastosować if : then Nie rozumiem powiazania przerwania urxc z buforowaniem. Po to się buforuje, zeby nie przerywać
Witam szanownych kolegów! Piszę mając nadzieję, że ktoś pomoże mi rozwiązać mój problem z którym borykam się już któryś dzień :( Otóż programuję w Bascomie Atmegę 644pa-pu do komunikacji po UART z modemem ZTE2639AT. Mam problem ze sprawdzaniem siły sygnału GSM. Otóż chciałbym przy pomocy przerwania od timera0 wykonywać takie sprawdzanie a jego wynik...
Generalnie, W Bascomie obsługa RC5 pozostawia wiele do życzenia dlatego też Mark w najnowszej wersji ma wprowadzić obsługę RC5 na przerwaniu ICP ("prawdziwie" w tle) według poniższego kodu, który udostępniam i polecam: [syntax=basic4gl] $regfile = "m8def.dat" $crystal = 8000000 Config Timer1 = Timer , Capture Edge = Falling , Prescale = 8 '1 tick= 1...
Teraz spróbowałem połączyć nasz program do odtwarzania z programem sterownika domowego i pojawił się problem.Panel i czas liczony w timer2 działa ok, ale piosenki są odtwarzane w spowolnionym tempie.Zauważyłem że jeśli w konfiguracji timer2 wpiszę "prescale=1024" to piosenki odtwarzają się prawidłowo, panel działa ok, ale czas liczy źle (był obliczony...
Witam. Chciałbym uzyskać efekt parametru echo on instrukcji input (mikrokontroler otrzymuje znaki po UART, i natychmiast wysyła je spowrotem) dzięki czemu na ekranie monitora portu COM będę miał wyświetlane wpisywane przez siebie znaki. Niestety używam konwertera Oczywiście w takim przypadku ustawienie parametru echo na on niczego nie zmienia (nie widzę...
Witam wszystkich. Koledzy zwracam się do Was z prośba o pomoc z następującym problemem. Programuje amatorsko w bascomie, procesor to atmega 644p z 2 uartami sprzętowymi. Składam urządzenie, które będzie się komunikowało z dwoma pozostałymi i wymieniało dane za pomocą transmisji rs232. Mój problem dotyczy 2 uartu sprzętowego w atmedze 644P. Pierwszy...
Tu masz przykład odbierania tekstu po RS-232 w Bascomie: [syntax=basic4gl]$regfile = "attiny2313.dat" $crystal = 8000000 $baud = 19200 Const Maxlen = 40 'Deklaracje stalych Dim Akey As Byte 'Deklaracje zmiennych Dim I As Byte Dim Pwm As Integer Dim Cmd As String * 4 Dim Buffer As String * Maxlen Dim E As Eram String * Maxlen I = 0 Config Pinb.2 = Output...
Niestety pomimo wielokrotnych prób nie udało mi się uruchomić układu. Pomiędzy TXD atmegi a RXD telefonu dałem rezystor 260 Ohm oraz diodę zenera 3V9, a program w bascomie jest następujący: [syntax=basic4gl]$regfile = "m8def.dat" $crystal = 8000000 $Baud = 19200 Config Serialin = Buffered , Size = 200 Dim Kod As Byte Dim Bufor As Byte Do Print "ATE0"...
To można rozwiązać na wiele sposobów. Jeśli tylko cześć ramki jest stała a zależy Ci na wartościach odebranych to można użyć bufora kołowego i kiedy wykryjesz koniec ramki to wciągasz z bufora poprzednie siedem bajtów. Tutaj jednak sprawa jest prostsza. Poniższy mikroprogram powinien sprawdzać po kolei nadchodzące bajty. Jeśli się zgadzają to wskaźnik...
W pętli głównej czekasz na odebranie znaku (bodaj Ischarwaiting()), jeśli tak, to go czytasz i sprawdzasz, czy to znak początku (.), jeśli tak to przechodzisz do właściwego odczytu (to może być oddzielna funkcja) i czytasz kolejnych 12 znaków do bufora, oraz dodatkowy znak terminujący (.), jeśli znak terminujący jest poprawny kopiujesz bufor do zmiennej...
SPI sam wysyła dane z ustawioną częstotliwością, trzeba tylko odpowiednio szybko wpychać w niego kolejne bajty, co na AVR nie musi być takie proste, ale daje się zrobić (w C lub asemblerze, nie w Bascom). W Bascomie da się zrobić, ja zrobiłem. Proszę :) [youtube][/youtube] Do tego wykorzystuję wewnętrzny oscylator RC 8MHz i ATTINY85 nadaje jak szalony...
Najprosciej napisz ja na przerwaniu - port RS 232 ustawia flage ze odebral bajt do bufora i mozna ja sprawdzac i wyjmowac bajt gdy flaga - lub podpiac to pod przerwanie i wtedy wyjac bajt - podstawa sprawnego programu.
witam Mam takie pytanko: zlutowalem programatorek (zaczerpniety z sieci) kompatybilny niby z STK200. Ustawiam go w Bascom AVR i oczywiscie nie dziala. Jak jeszcze chwilke poszukalem to wersji tego programatorka jest pelno tylko wyprowadzenia mikrokontroler sa laczone z roznymi pina DB25. JAk sie domyslam istnieje jedna poprawna wersja. Czy ma ktos PEWNE...
A jeśli chodzi o AVR to: ON źródło_przerwania nazwa_podprogramu [ NOSAVE ] gdzie: źródło_przerwania - symboliczna nazwa źródła przerwania, nazwa_podprogramu - etykieta określająca gdzie znajduje się podprogram obsługi przerwania. jako żródło przerwania można: URXCprzerwanie układu sprzętowego UART – odebranie znaku UTXCprzerwanie układu sprzętowego...
proszę Kolegów , mam Bascoma z tymi dodatkami. Otwiera i edytuje bez problemu 8kb kod. Urcuhamiam kompilator i wyskakuje błąd że kod się nie mieści w buforze . Po za tym w okienku wyboru procka nie ma 89c5x są tylko 89cx051 , może cos źle robie ?? Pozdro
Mam kilka pytań: 1. czy w BASCOMie można programować ATMega8535. Na liście znalazłem tylko 90S8535. 2. czy można to zrobić na programatorze z rezystorami czy musi byćz buforem Nie mogę wykryć swojego procka. Programator złożyłem na 3 rezystorach. Mam kilka wątpliwości co do niego: przewód do lpta ma długość około 2m (ale na 90S2313 działał), czy w tym...
Pierwsze to dzięki za zainteresowanie A co do spróbuj czegoś takiego niewiem czy działa na procku ale w symulatorze chodziło Spróbowałem-niby chodzie ale nie uruchamia procedury przerwania Wygląda na to jak by nie dochodziło do przepełnienia buforu Może należy jakoś zdefiniować źródło impulsów jak w bascomie 8051 poleceniem GATE ?? Dalej nic z tego...
Witam, Używam w Bascomie polecenia: Dane_uart1 = Inkey() Gdy chcę wyświetlić dane na LCDku to wyświetla mi liczbę po liczbie. Np. Gdy wysyłam do tego procka za pomocą polecenia PRINT "1234" To otrzymuję kolejno 1, 2, 3, 4 . Chciałem otrzymać 1234 a nie kolejne liczby w stringu. Już trochę się z tym męczę i proszę o pomoc w tej sprawie....
Juz po części przyśpieszyłem działanie dokładając miedzy dwa odczyty temperatury funkcje odczytu z bufora. teraz to wygląda tak: Odczyt z bufora odczyt temperatury 1 Odczyt z bufora odczyt temperatury 2 Pętla wcześniej było tak: Odczyt z bufora odczyt temperatury 1 odczyt temperatury 2 Pętla jednak nadal jak dla mnie czas reakcji jest za długi 1wreset...
Witam ! Uruchamiam program na Atmega644 w Bascomie i napotkałem ciekawy problem. Wkleję kod i wyjaśnię poniżej. Sub Wykonaj_regule_in(wri_reg As Byte) Wri_out = Wej_par_2(wri_reg) 'odczytaj numer wyjścia Wri_out = Wri_out And &B00000111 Wri_rw = Wej_par_2(wri_reg) 'odczytaj reakcję wyjścia Wri_rw = Wri_rw And &B00111000 Shift Wri_rw , Right...
przerwanie od portu szeregowego obsługujesz w ten sam sposób jaki i każde inne przerwanie. Ale to nie wszystko ;) Jeśli skonfigurujesz seriala do pracy z buforem , to Bascom sam "podłoży" przerwanie i będzie za Ciebie odbierał znaki z uarta i zapisywał do bufora kołowego.Instrukcję obsługi Bascoma trzeba czytać , czytać , czytać... , a nie tylko pytać...
Witam, Aktualnie buduje parę urządzeń porozumiewających się poprzez magistralę RS485. Jest to sterownik gniazdek elektrycznych - pierwsza część to pulpit sterowniczy (8 ledów i 8 przycisków) a druga to moduł wykonawczy załączający/odłączający zasilanie od poszczególnych gniazdek. Transmisja między nimi jest poprzez full-duplexowy MAX488 po dwóch parach...