Na przedstawionych schematach masz zamienione linie Rx i Tx.
Witam, zrobiłem prościutką testową komunikację po RS232 Atmega8 oraz PC-ta i wszystko śmiga jak zwkle ładnie że aż szok ale .... ... mały problem, bo zrobiłem sobie coś takiego: w głównej pętli mam: S = "" If Ischarwaiting() = 1 Then Gosub Obslugars232 następnie w procdeurze przychodzących znaków z PCta: Sub Obslugars232 Input S Noecho...
Przy kwarcu 8MHz $baud=1200 jest "not possible". O czym grzecznie Bascom w zakładce communication informuje. No i ten Enable serial. Nigdy tego nie używałem- ale w helpie Z.G. jest napisane- blokuje jednocześnie URXC, UDRE i UTXC.
Pracuję nad odczytem ramki z ALPINE M-BUS i wysyłaniu do Terminala po RS232 Temat był kiedyś poruszany.Ogólnie M-BUS pracuje na zasadzie PWM ,tzn, 0 i 1 są transmitowane z różną szerokościa impulsów . Joerg Hohensohn zrobił już coś takiego w języku C. www.jevinskie.com/mbus/ Chce zrobic tosamo w bascomie. Docelowo ma być pózniej emu zmieniarki na module...
najprostszy test zrób - czyli odłącz procka - i zewrzyj nogi TxD z RxD (tam gdzie był procek) jeśli po tym - nie będzie ci się pokazywało w terminalu dokładnie to co wpisujesz to znaczy, że masz problem z kablami, połączeniami itp itp to powyżej powinieneś jako pierwsze sprawdzić
Już z wypowiedzi z pierwszego postu wnioskowałem sobie coś o Twojej osobie. To jednak zostawię. Żeby procesor odliczył poprawnie 500ms za pomocą funkcji Waitms to trzeba mu podać rzeczywiste taktowanie uC a nie takie jak Ty myślisz że masz albo chciałbyś mieć. To z tego powodu że przy taktowaniu 1MHz zegar musi tyknąć 500 000 razy a dla taktowania 8MHz...
Zwiększ bufor odbiorczy, a do sprawdzenia czy jest nowy bajt w buforze użyj Ischarwaiting() : [syntax=basic4gl] Config Serialin = Buffered , Size = 20 ' bufor 20 bajtów ........ Do If Ischarwaiting() = 1 Then P = "" Input P Gosub Przelicz End If Loop[/syntax]
http://obrazki.elektroda.net/61_11887643... Witam, ten temat chyba już był poruszany na elektrodzie, wielu ludzi szukało różnych sposobów na jak najprostszy sposób aby korzystać z komunikacji poprzez USB w swoich układach mikroprocesorowych. wiele jest różnych rozwiązań w necie jak choćby cesko.igor czy na niemieckich stronach Powerswitch...
Używasz terminala czy realterma?
http://obrazki.elektroda.pl/9418966600_1... Witam wszystkich na forum. Jest to moje pierwsze publikowane DIY. Słowo wstępu… Projekt powstał z jednego, bardzo ważnego powodu: bo bardzo chciałem coś takiego mieć! Jest to układ odczytujący kod karty poprzez interface EM4095 z anteną, dekoduje, sprawdza i wysyła poprzez port szeregowy....
Procesor Atmega8 oscylator wewnętrzny 1MHz w Bascomie stosując instrukcję: print "dowolny znak ASCII" w terminalu na PC otrzymuję znaki przesunięte decymalnie o 64 np: print "01245" otrzymuję "pqrstu". Co może być tego przyczyną? Serdecznie pozdrawiam
Witam Złożyłem sobie prosty układzik do komunikacji z autem, założenie było takie, możliwość wysyłania kodów odpowiedzialnych za podgłaszanie, ściszanie itp, oraz odbiór paczek danych i wyświetlanie na lcd podpiętym do atmegi. Druga część wyszła znakomicie, po trzeciej poprawce idealnie odbierał kody z auta, jednak nadawanie nijak mi nie wychodzi......
Witajcie Postanowiłem pobawić się RS232. Używam do tego przejściówki USB->FT232->RS232. Atmega8 ustawiona: 8MHz Baud: 9600 UBBR: 51 Po przeczytaniu Datasheet i innych tutków napisałem coś takiego: [syntax=c]#include <avr/io.h> #include <inttypes.h> void USARTInit(uint16_t ubrr_value) { UBRRL = ubrr_value; UBRRH = (ubrr_value>>8);...
Mam pewien problem , buduje konwertor PS/2 <-> RS-232 na mega8 (program w bascomie) $regfile = "m8def.dat" $crystal = 8000000 $baud = 4800 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc.0 , E = Portc.4 , Rs = Portc.5 Config Keyboard = Pinb.2 , Data = Pinb.3 , Keydata = Keydata Dim...
Chciałbym się dołączyć do tematu. 3.1.19. Nie wysyłaj wiadomości w tematach archiwalnych, jeśli jest to kolejne pytanie, w szczególności inne niż osoby pytającej. Z racji szacunku do pytającego załóż własny temat. Możesz dopisać tylko sposób rozwiązania problemu. Walczę z programem w Bascom na Atmege32 połączoną poprzez MAX232 z czujnikiem wyposażonym...
Witajcie, Zacząłem pisać ostatnio program w bascom, jednak nie działał, okazało się że część kodu odpowiedzialna za przejście do podprogramu nie działa, długo kombinowałem, wklejałem części kodu znalezionych w internecie, ale wciąż nie działa. Kod: [syntax=basic4gl] $regfile = "m8adef.dat" $crystal = 8000000 $hwstack = 40 $swstack = 16 $framesize =...
Witam, mam problem z przesyłem danych tz. chciałbym wysłas ramke z PC do atmegi 1bajt-identyfikacja,1bajt-adres,i 4bajty(zmienna typu long)dane,no i za cholere nie moge poradzić sobie z tą zmienną , nie wiem jak ją odczytać a chciałbym tak : przesyłm K skocz tu.....dalej K skocz tu...... i zapisz zmienna IMPULS = 123456 Pozdrawiam
Witam Mam problem z transmisją uC -> PC przez rs232. Problem polega na tym, że zamiast wartości wpisanych do zmiennych odbieram litery. Ustawienia portu com1, terminala i uC są zgodne. Według data sheeta uC przy transmisji danych 38400bps i taktowaniu 8Mhz błąd wynosi 0,2%. Poza tym sprawdzałem inne prędkości transmisji i efekt wciąż ten sam :/ Komputer...
Witam Potrzebuje porady jak zrobić przesyłanie znaku z PC do avr. Dokładnie o co mi chodzi. Mam układ, który mierzy temperaturę z jednego czujnika 1 wire i wysyła pomiar do komputera, co 1 sekundę. Chciałbym teraz rozbudować układ o możliwość wpisywania danych z komputera do avr. (0 lub 1) Wyczytałem ze do tego służy komenda input tylko ze ów komenda...
Witam w jaki sposób w bascomie odbierać informacje z rs232 w pętli to znaczy mam w pętli kilka poleceń np a=a+1 pętla leci cały czas dodaje jak zrobić aby pętla działa i jednocześnie sprawdzać czy na port coś dotarło jak dotarło to to odebrać. Męczę się z tym i nie mogę sobie z tym poradzić.
Witam szanownych kolegów,i prosze o pomoc.Interesuje mnie sterowanie przez port Rs232 8 diodami led .Wszystko ma wygladać w ten sposób że program do obsługi rs232 musi byc napisany w jezyku Basic nastepnie kabelkiem pc ma byc podłączony do procka AT89C2051 lub ewentualnie do Atmega8 lub atmega8535 do którego bedą podłaczone diody led i nacisniecie przycisku1...
Wyświetlacz jest sprawny. Testowałem na nim inne projekty i zawsze działał bez zarzutu. Podłączyłem również inny wyświetlacz i to samo. Po wysłaniu danych przez rs232 z terminala BASCOM AVR wszystko wyświetla się poprawnie. W sumie to dziwny przypadek.
Ja tam mówię, że db9 z ttl to raczej rzadki znajdek. Dorzuć kolego MAX232 po drodze lub inny transceiver:) Ja się z kolegą zgadzam to przejściówka z usb na rs232 i do niej potrzebny jest konwerter na max 3232 w wejsji 3,3V .
Ale na czym to zrobić. Jaki układ lub moduł zastosować? Chodzi mi generalnie o coś takiego, że jeden układ wyśle zapytanie drogi da odpowiedz i tak na zmianę. Jako procka używam ATmega8
A więc wniosek , że program to jedno , a sprzęt to ... drugie :D Heh ..no niestety a ja jakos olalem stroen sprzetowa myslac ze na defaultowych ustawieniach powinno smigac ;) Czyli telefon wysyła echo. W takim raznie niestety wysyla ...i wylanczyc sie go nie da ..bo nie przyjmuje ATE=0 ..... Bufor ..in , czy ..out jest buforem tzw. kołowym. mam rozumiec...
Raczej nie zamienić atmegę tylko sprawdzić co masz nie tak w kodzie. Istnieje możliwość, że uszkodziłeś dany pin procesora, przełożenie czujnika pod inny ADC w takim wypadku powinno pomóc. Najpierw sprawdź co tak naprawdę do Ciebie dokładnie wraca z ADC (wyrzuć tą wartość z ADC albo na diody, albo na LCD albo po RS232 na komputer).
Mam problem z Terminalem RS232 w Bascom AVR. Pod port COM podłączona jest ATMEGA8 która wysyła "TEKST". Na starym komputerze Celeron 700Mhz RAM 256MB Dysk 15GB karta graficzna Nvidia 16MB Wszystko działało OK Ostatnio wymieniłem go na: AMD Athlon XP 1150Mhz RAM 768MB Dysk 15GB karta graficzna Nvidia 16MB i pojawił się problem [url=http://i31.tinypic.com/1zi6ad.jpg]F...
Nie miałem nigdy problemów z komunikacją na wewnętrznym generatorze 8MHz przy szybkości 19200. Ustaw więc wewnętrzny generator na 8MHz.
Kończąc ten gigantyczny i niewiele wnoszący offtop pytam: W jaki sposób realizowany jest pomiar temperatury? Przetwornik/1-wire/../? Sterowanie tranzystorem - coś bardziejsz szczegółowo? Może da się to zrobić sprzętowym PWMem. Transmisja do PC - Jaka prędkość? Sprzętowy RS232 załatwi sprawę. W bascomie może i wygląda to kiepsko, ale bez trudu można...
Mam mały problem: Napisałem program w Bascomie, który odbiera rozkazy przez RS-232 i odpowiada na nie. W HyperTerminalu wszystko jest OK. W VisualStudio 2005 (Visual Basic) napisalem miniprog który ma po kliknięciu na przycisk wysyłać dane do rs232 (Serialport.WriteLine) a po chwili odbierać odpowiedź przez (Serialport.ReadLine). I niestety po kliknięciu...
[url=http://www.elektroda.pl/rtvforum/to... post [/code] 100% podobny problem naj efektywniej będzie zrobić emulator ds18b20 2 przewody mnogość czujników standardowe procedury obsługi na różnych platformach Jetem z okolic Gostynia mam kody emulatorów w asm , c , i bascom potrzebuje pomocy przy przekonwertowaniu dla atmega8 bo takie mam...
Dzięki za odp. nie napisałem oczywiście mówię o bascom AVR. Ale coś mi tu nie pasuje atmega8-16p... czyli oscylator no właśnie? mogę sobie ustawić dowolnie do 16Mhz czy tylko 16Mhz? Miałem wrażenie że można to ustawić dowolnie a może się mylę :?: A o tym że wew. oscylator jest nie dokładny to wiem ale że jego dokładność zmienia się losowo po 10 minutach...
Cześć, Od dwóch dni próbuję wrzucić wsad do µC z bootloaderem MCS po RS232 za pomocą linii komend AVRdude, i nie mogę sobie z tym poradzić. W bascom µC za pomocą RS232 programuje się poprawnie. Dodam że do komunikacji używam FT232RL. próbowałem tak: avrdude.exe avrdude.conf -p m8 -P com8 -c <programator> -b 38400 -U flash:w:temp.hex...
Witam, ja właśnie dokładnie taką samą konfigurację 2 procków czyli łączyłem Atmega8 oraz Atmega16 po tym właśnie i2cslave w Bascomie i mogę się coś niecoś na ten temat wypowiedzieć.... ... otóż biblioteka ta I2cslave dla softwarowego rozwiązania układu SLAVE w I2C rzeczywiście działa dobrze tak jak jest opisana ale... jest właśnie jedno i to dosyć spore...
połączenie kwarcu 4MHz z protokołem RS232 to naprawdę wielce "błędoróbna" kombinacja nawet przy 19.2kb/s Z tego co widzę, mniejszy błąd osiąga się przy 250kb/s ale nie jestem pewien czy Bascom się wyrobi. Może wymień go na 8 czy 16MHz i poczytaj datasheet zakładka USART-->Examples of baud rate settings Pozdrawiam
Niestety pochwaliłem się za wcześnie Kod: [syntax=vbnet] $regfile = "m168def.dat" ' the used chip $crystal = 8000000 ' frequency used $hwstack = 80 $swstack = 60 $framesize = 80 $baud = 9600 Config Portb.0 = Output 'CLK Config Portb.1 = Output 'Data Out Config Portb.2 = Output 'Reset Config Portc.1 = Input 'busy status Clk Alias Portb.0 ' Clk - zielony...
Od razu obraza majestatu czy co, nie mówiłem, że jest zły ale od inżyniera wymagałbym więcej niż od hobbysty, który sobie wymyśli urządzenie napisze mniej lub bardziej skomplikowany kod przy pomocy narzędzia nie wymagającego znajomości architektury uC. Zresztą napisałem też, że sam czasami używam tego środowiska tak więc nie neguje samego Bascom'a tylko...
najprościej? bierzesz procek ATmega8 - szt.1 , progrmator STK200 - szt.1 (np z allegro za ok 15zł) , bierzesz BASCOM wersję demo (do zassania z netu www.mcselec.com) na PC i piszesz w nim program do obsługi tego rejestratora, w Bascomie będzie to dla ciebie chyba najmniejsza pestka. Jeśli chcesz się dowiedzieć jak pisać programy w Bascomie to kupujesz...
Cześć wszystkim. Napisałem parę miesięcy temu programik w BASCOM do urządzenia, które ma możliwość odczytu pamięci EEPROM i wysłania jej zawartości przez RS232 do PC. Urządzonko wróciło do mnie niedawno ze względu na pojawiające się nieraz błędy podczas transmisji. Program używa tylko instrukcji PRINT i nie używa przerwań. Przerwania globalne wyłączone....
witam W bascom zrobiłem tak Locate 1 , 1 Wart_nap = Int(t ) Lcd "boj:" ; Wart_nap ' napis w cudzysłowie możesz zmienić na dowolny Print Chr(2) ; Wart_nap ; Chr(3); Zmienna = 125 Print Waitms 3 Locate 1 , 9 Wart_nap1 = Int(t1 ) Lcd "piec:" ; Wart_nap1 ' napis w cudzysłowie możesz zmienić na...
Myślę że każdy potencjometr powinien być stereo. Jeden kanał powinien działać z urządzeniem audio a drugi powinien dostarczać informacji do ADC , Uc o pozycji potencjometru. Dane do PC mógł byś przesyłać za pomocą RS232 lub innego. To w programie Uc musisz uwzględnić kiedy i w jaki sposób dane będą przesyłane do PC. No i musisz mieć program który będzie...
ATMega8 w wersji SMD ma 2 dodatkowe wejścia do przetwornika ADC i nie mogą one pracować jako normalne linie I/O. W ATMega8 w DIP28 tych 2 dodatkowych linii nie ma ich wcale. Wewnętrzny oscylator nie nadaje się do żadnego zegara ale nadaje się do UARTa, bo według datasheeta ma on dokładność 3%, a RS232 dopuszcza błąd do 4%. Mi działał nawet UART przystosowany...
Błędy mówią że program nie zmieści się do wybranego procka Bascom AVR w moim przypadku nie programuje procka i nie ma pojęcia jaki procek zostanie "obdarzony" jego prograqmem. Do samego programowania przez ISP służy mi program AVR studio. Ja robie tak, że piszę program w bascomie i w tym programie kompiluje plik hex. Następnie uruchamiam AVR studio...
pozwolę sobie wrzucić jeszcze bardziej dopracowaną wersję ;) może ktoś sprawdzi ??? i napisze swoją opinię tutaj hmmm? program działa pod każdym windowsem XP czy VISTA bez żadnych specjalnych jakichś dodatkowych sterowników. załączam także świeżą wersję kodu źródłowego w AVR GCC akurat dla ATmega8. Jednak teraz o wiele prościej przerabiać ten bootloader...
W Helpie Bascoma masz przykłady jak w podstawowy sposób obsługiwać i RS485 i RS232 więc może zacznij od tego ? Gdybym ja miał Helpa po polsku lub ew. angielsku to byłbym zbawiony... Wiesz może gdzie mozna takowego zdobyć? Może ta ATmega644p to lekki przerost formy nad treścią bo to olbrzymi procek jak na te potrzeby Czy ja wiem czy przerost formy nad...
Skoro masz podlaczony procek do rs to mozesz zastosowac takie sprzetowe rozwiazanie (MCS Electronics - bootloader) : http://www.mcselec.com/images/stories/mc... To initiate a Bootloader programming session, a reset needs to be applied to the controller. You can do this manually, with a reset button or by powering down and...
Witam, Jak można zainicjować dwa odrębne pola tekstowe tak aby wyświetlały dwie zmienne wysłane przez UART -Atmegi kod VB [syntax=basic4gl] Option Explicit On Imports System Imports Microsoft.VisualBasic Imports System.Configuration.ConfigurationSettin... Imports System.Windows.Forms Imports System.IO Imports System.Data Public Class Form1 Public comm_stat...
Witam! Mam problem z wyświetlaniem liczb na 5 wyświetlaczach LED. Docelowo ma to być wyświetlacz sterowany poprzez RS232 i wyświetlający liczby z zakresu -999 do +29999. Na razie jednak zatrzymałem się na etapie samego wyświetlania. Problem polega na tym, że co jakiś czas pojawiają się "śmieci" na wygaszonych segmentach , czasami także zapalona cyfra...
Chciałbym kupić jeden z tych zestawów uruchomieniowych i prosze o opinie. Chciałbym pozanać wasze zdanie o ich wyposażeniu. Moduł ZL12AVR opracowano z myślą o ułatwieniu powszechnego stosowania mikrokontrolerów ATmega16 przez konstruktorów, którzy nie mogą lub nie chcą inwestować w zautomatyzowany montaż elementów o relatywnie gęstym rastrze rozmieszczenia...
napisalem taki kod w delphi procedure TForm1.Button1Click(Sender: TObject); var hCOM:THandle; nrWrit:DWORD; nrRead:DWORD; Errors:DWORD; Dcb:TDCB; ComStat:TComStat; buf:array Dodano po 42 DOŁOŻYŁEM PETLE POMIEDZY WYSYŁANIE ZNAKÓW DO BUFORA A ODBIERANIE I WTEDY TO DZIAŁ, ALE CAŁY PROBLEM POLEGA NA TYM ŻE POWINIENEM CHYBA DANE WYSYŁANE Z MIKROKONTROLERA...
http://obrazki.elektroda.net/26_12188856... Termometr domowy wersja 2.0 by skomy Termometr wykonany jest z wykorzystaniem procesora Atmega8 (oprogramowanie w BASCOM): - posiada interfejs 1wire - do podłączania czujników DS18B20 (programowo ograniczone do 4) - wejście odizolowane galwanicznie transoptorem - do wyciszania aktywnych alarmów -...
W twoim programie jest tak: [syntax=basic4gl]If Wart_ac > 1000 Then Gosub Wykrywanie Elseif Wart_ac < 1000 Then Gosub Czujnik1przeciwnik Elseif Wart_ac1 < 1000 Or Wart_ac2 < 1000 Then ' ###### ta czesc petli nie reaguje na zmiany w ukladzie ### Gosub Czujnik12lini End If [/syntax] w jaki sposób 3 opcja ma zostać spełniona? Przecież jeśli...
Masz na myśli książkę „Programowanie mikrokontrolerów AVR w języku BASCOM”. Mam fajna. Kilka pytań odnośnie samego układy: 1.Jaki zegar to taktuje, 4, 8 MHz. 2.Po co ci zewnętrzny EEPROM jak ATMEGA8 ma w sobie 512B, co przy kompresji danych ASCII daje 576 znaków tekstu. 3. LCD 16*2 jest za wielki lepiej 8*2, będzie to łatwiej schować. Dodaj...
Naprawde zrobiłem już wszystko. Oto dyrektywy początkowe: $regfile = "m8def.dat" $crystal = 16000000 $baud = 9600 Wszystko oczywiście zgodne z rzeczeczywistością. Przy pomocy instrukcji print wysyłam przez RS-a napis. No i: NIC!!! Ciekawostką jest to, że jak zmniejsze w terminalu prędkość transmisji do np. 1200 (a wszystko pozostaje jak wyżej) to wyswietla...
Mam użyć Timera do zliczania ilości impulsów i jeśli jest mniej niż 55 to ma sygnalizować że połączenie zostało zerwane? Czy jak mam użyć tego timera?
RS485
MAX232 jest konieczny, przecież standard RS232 to nawet +/-12V, a mikrokontrolery nie lubią -12V na wejściu, dlatego MAX 232 zamienia +12 na 0V a -12 na +5V, albo odwrotnie, nie pamiętam, ale mniejsza o to, w każdum razie konwersja TTL<->RS232 jest niezbędna. Jak na moje oko to winny jes niedziałający konwerter poziomów na MAX'ie, może sam układ...
Po pierwsze ten wewnetrzny to nie kwarc tylko generator RC. Proponowalbym ci jednak jesli zamierzasz wykorzystac rs232 dac kwarc do procesora. Twoja stacja bedzie narazona na skrajne temperatury, a wtedy wewnetrzny RC niezle plywa. No i pytanie zasadnicze - po co ci az ATMega128, BASCOM jest az tak pamieciozerny? No i po co ci dwa procesory? Prosciej...
To nie są problemy Bascoma, w bascomie można wiele rzeczy szybko zrobić, tylko jak ktoś go nie zna to najłatwiej i naszybciej jest na niego psioczyć i wylewać swe żale. ale ok, skoro ty (o ile dobrze zrozumiałem) w jakimś tam przerwaniu wysyłasz coś poleceniem PRINT przez łącze RS232 a następnie w tym samym przerwaniu czekasz na odbiór przez RS232 (waitkey)...
Witam, zanim zabierzesz się za pisanie własnej obsługi przerwań do RS232 w Bascomie, to może najpierw spróbuj zrobić to w oparciu o dobrodziejstwa jakie daje ci Bascom. nie znasz poleceń INPUT , INKEY czy PRINT ???? do tego jeszcze może Config Serialin bo w powyższym kodzie odstawiasz niezły "miszmasz" i nie ma co się dziwić, że ci nie działa. Oczywiście...
atmega8 rs232 bascom bascom atmega8 rs232 rs232 atmega8
zatkać wtrysk wentylator chłodnica aster płyta gazowy siemens palnik
Cykliczne wywołanie makra z licznikiem w Excel VBA i Arduino Koło zamachowe: Poziome czy pionowe?