dajesz tak $regfile = "m8def.dat" $crystal = 8000000 lcd "jestem atmega" wait 1 cls lcd "cos tam znowu" wait 1 cls lcd "i tak dalej" ... do 'własciwy pogram loop end
Unknown statement Atmega 8 nie ma portu "A". (tylko "B", "C" i "D"). Nie zmieniłeś też $REGFILE na poprawny!
Na razie nie ma problemów z działaniem przy : $regfile = "m2560def.DAT" 'ATMEGA 2560 $crystal = 4000000 $hwstack = 64 $swstack = 64 $framesize = 64 Ale karta SD chodzi za wolno. Fakt że na soft-spi . Na Hardware zapewne można by poszaleć ale nie potrafię tego opanować niestety <rozkłada ręce>. Na moje oko procesor chodzi na 4MHz więc...
Witam, Przedewszystkim na początku umieć informację, która wskaże kompilatorowi dla jakiego procesora ma utworzyć kod: $regfile = "m8535.dat" Nie jest to konieczne jeśli wybierzesz ręcznie w ustawieniach Bascoma jaki to procek a vcd_a tak właśnie zrobił
Kurcze tylko mam kolejny problem bo mój program zajmuje już 40kb a będzie dalej rozbudowywany. Więc mnie blokuje znowu wersja demo. Chyba będe musiał zostawić tą atmege i zakupić atmegę64 i przegladnąć program i go jeszcze bardziej zmodyfikować, żeby zmniejszyć rozmiar. Dziwne jest to że mam wersję Bacoma 2.0.7.3 i tam również nie ma. Nie bardzo rozumiem...
To już załatwia bascom - jest ustawione na Auto. co do sedna, sprawdziłem dziś na swoim układzie kanały 0-7 ADC następującym programem: [syntax=basic4gl] $regfile = "m2560def.dat" $crystal = 16000000 Config Adc = Single , Prescaler = Auto , Reference = Avcc Dim Wart_adc1 As Word Dim Wart_adc2 As Word Start Adc 'AVCC bezpośrednio do 5V, AREF w powietrzu,...
Programu napisanego pod ATmege8 nie można bezpośrednio wrzucić na ATtiny i odwrotnie. Pokaż lepiej oba swoje programy, bo link, który podałeś nie działa. Dodano po 2 Trzeba pewnie przynajmniej zmienić dyrektywę $regfile definiującą typ mikrokontrolera.
Faktycznie, masz chyba jakąś starszą wersję Bascoma i brakuje pliku m644pdef.dat Musisz też pamiętać o ustawieniach opcji Bascoma i zmianie zapisu na początku programu na $regfile = "m644pdef.dat".
Pozwolę sobie umieścić post pod postem żeby wiadomość dotarła do zainteresowanego. Jeszcze lepszym wyjściem dla takiego zegara będzie zastosowanie dedykowanego rezonatorka 32768Hz (32,768KHz) Wartość 32768 to w zapisie binarnym dokładnie piętnaście bitów. Jeśli więc Timer będzie zliczał generowane impulsy to po 32768 uzna że mineła sekunda :D Bascom...
Witam ! Przetestowałem ten kod: $regfile = "m8def.dat" $crystal = 1000000 Config Lcd = 20 * 4 Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc , E = Portc.4 , Rs = Portc.5 Lcd "witam!" Fourthline Lcd "4" End i wszystko jest OK, program się kompiluje Prawdopodobnie powodem nie kompilowania...
Nie rozumie twojego postu . W warunkach kempingu nie wezne sieci . Zmodyfikuje aby przelaczalo na zmiane. $regfile = "m8def.dat" 'atmega 8 $crystal = 8000000 '8 mhz 'INNE KONFIGURACJE Config Timer1 = Timer , Prescale = 256 Config Portd = Output On Timer1 Juz '625 Enable Interrupts Enable Timer1 Load Timer1 = 624 ' powinnno byc 625 ale 0 to...
Hahahaha :D tak! W IDE sa wpisane takie dla małego projektu i małego procesora. Mając większy projekt i procesor trzeba je albo tam zmienić albo wpisać bezpośrednio w projekcie. Kompilator się nie pyta o nie bo ma wpisane te domyślne, ale one są za małe. Musisz wiedzieć jaki masz mikrokontroler i ile ma RAM`u. Na przykład ATmega 32 ma 2kB RAM`u (dwa...
Witam. Nie wiem jak deklarujesz w programie dany mikrokontroler, ja wpisuję w ten sposób i nigdy nie miałem problemu. $regfile " m8def.dat" Każdą Atmegę 8. ATmega 8L może mieć większy zakres zasilania 2.7V - 5.5V.
Te Waity do diody Led żeby patrzeć czy program się zawiesił nie są szczęśliwym rozwiązaniem dla programowego portu :D Zobacz tak. Dioda błyśnie jak coś odbierze i oczywiście wyśle Ci to drugim portem software`owym. [syntax=vbnet]$regfile = "m328pdef.dat" $crystal = 8000000 $hwstack = 32 ' default use 32 for the hardware stack $swstack = 10 ' default...
Jtag możesz wyłączyć nawet w kodzie: [syntax=vbnet]$regfile = "m32adef.dat" $crystal = 8000000 $hwstack = 64 $swstack = 32 $framesize = 32 Disable Jtag[/syntax] Do tego wszystkie aliasy przycisków powinny się odnosić do PIN a nie PORT. W niektórych masz PINA i tam jest dobrze ale niektóre masz PORTD i tam zawsze mikrokontroler będzie odczytywał 0.
Np. tak możesz zrobić:D 'Program pod Atmega8 'S1 pomiedzy PINB.1 a GND 'Taktowanie standardowe 1MHz $regfile = "m8def.dat" 'Atmega 8 $crystal = 1000000 'taktowanie 1MHz Config Portd.0 = Output 'przekaznik Config Pinb.1 = Input 'napiecie podane na PORTB.1 Set Portb.1 'dolaczenie rezystora podciagajacego S1 Alias Pinb.1 'przypisanie nazwie PINB.1...
Twoja konfiguracja jest dobra. $regfile = "m8def.dat" $crystal = 8000000 Config Lcdpin = Pin , Db7 = Pb.0 , Db6 = Pd.7 , Db5 = Pd.6 , Db4 = Pd.5 , E = Pb.7 , Rs = Pb.6 cls Do locate 1,1 Lcd " Test " Loop End Wgraj ten program i pokręć potencjometrem od kontrastu.
To chyba powinno wyglądać tak: $regfile = "m8def.dat" Config Portb = Output Portb = &B00000000 Config Portd = Input Portd = &B11111111 Do If Pind.5 = 0 Then Portb.4 = 1 Loop End Oczywiście można i tak, ale mi działa tak jak ja napisałem. I autor tematu musi zbudowac programator STK200/300(pod LTP) lub STK500 pod USB.
Tak też można: $regfile = "m8def.dat" Config Portd.1 = Output:Config Portd.4 = Output Portd.1 = 0:Portd.4 = 1 Do Waitms 100 Toggle Portd.1:Toggle Portd.4: Loop Nie naruszasz wtedy innych końcówek portu D, które możesz wykorzystać do innych bardziej szczytnych celów. (A z końcówkami czasem jest krucho.)
Kochani, kompilator (1.11.8.6) wyrzuca błąd: 22 Line : 120 Out of SRAM space , in File : C:\PROGRAM FILES\MCS ELECTRONICS\BASCOM-AVR\CONFIG_AVR-DOS.Ba... Pozdrawiam i proszę o pomoc. idla Jakiego procesora używasz w $regfile ? Błąd dotyczy małej ilości Ram-u.
Przeciez powyzej zamiescilem kod programu ktory ma wgrany Atmega $regfile = "m8def.dat" $crystal = 16000000 $baud = 9600 Dim Znak As String * 6 Config Portd.2 = Output Config Serialin = Buffered , Size = 15 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 Wait 5 Set...
[syntax=vbnet] $regfile = "m16adef.dat" 'mikrokontroler $crystal = 8000000 'częstotliwości oscylatora taktującego mikrokontroler Poziom Alias Pina.7 : Config Poziom = Input : Set Poziom 'wew podciągnięcie do VCC Obudowa Alias Pinc.5 : Config Obudowa = Input : Set Obudowa 'wew podciągnięcie do VCC Led_p Alias Portc.4 : Config Led_p = Output 'po starcie...
Czy ATmega8535 ma tylko mierzsyć napięcie i wysyłać? Jeśli tak to po co taki duży uK do tego? :) Program może wyglądać tak: $regfile = "m8535.dat" $crystal = 16000000 $hwstack = 32 $swstack = 10 $framesize = 40 Dim W As Word Config Watchdog = 2048 Start Watchdog Reset Watchdog Config Adc = Single , Prescaler = Auto , Reference = Internal Start...
Ok zrobiłem takie coś i jedynie co robi to ściemnia diodę :-( Dane z odbiornika podpięte pod ADC0 w Atmega [syntax=vbnet]$regfile = "m8adef.dat" $crystal = 8000000 'zewn. L:FF, H:D9 Config Adc = Single , Prescaler = Auto , Reference = Avcc Dim Pomiar As Integer Spiinit Config Portb.1 = Output 'TX ON, disable CLK Start Adc '=======================================...
Chciałeś kod to masz, ale co to zmieni jak na attiny ten program działa a na atmega nie, to jest troche dziwne nie uważasz? $regfile = "attiny2313.dat" $crystal = 4000000 Config Portb.2 = Output Do Toggle Portb.2 Waitms 50 Loop PS: nie zadawajcie pytań czy podłączyłem dobrze bo dobrze podłączyłem. Za wszelkie sugestie dzięki. Aha i druga atmega którą...
Witam, Atmega 8, Timer1. Prosty generator: przerwanie od timera1 ze skróconym cyklem, pętla główna pusta, w przerwaniu zmieniam stan portu. Niby proste... Oto kod: http://obrazki.elektroda.pl/8467182600_1... Są to regularne skrócenia cyklu z 1.085ms na 0.6355ms. Proszę o wyjaśnienie co to jest i jak sie tego pozbyć?
Witam. Po raz pierwszy zaczynam używać Atmegi128. Chciałem odpalić programik testowy który zapali diody. Zapalam cztery diody na PORTC i to działa. Problemem pojawia się kiedy wstawię do programu dowolne polecenie wait waitms waitus. Program tak jakby się wtedy zatrzymuje. Atmega pracuje na zewnętrznym kwarcu 8MHz. [syntax=basic4gl] $regfile = "m128def.Dat"...
e marcus to jest tak jest cała linia 8-bitowa na której lecą non stop jakieś dane do różnych układów, są też dodatkowe 4 linie sterujące na której lecą tylko impulsy "0" i wtedy właśnie lecą właściwe dane które chcę odczytać AVR'em. W sumie z tych 4-linii sterujących na jednej lecą impulsy "0" 128-raz y które wywołują Czy masz jakiś powód aby tą 8-bitową...
Witam, niestety ale chyba coś jest nie tak? Na wstępie należałoby wyjaśnić że nie ma czegoś takiego jak "automatyczne przeładowanie timera" (reload/load timer1 powiedzmy). Termin ten jest związany z procedurą konfiguracji timerów występującą tylko w trybie "Normal", gdzie każdorazowo początkowa wartość timera musi być wpisana przez processor. Taka...
Co masz na myśli: 'jak chcę wyświetlić normalne liczby' ? Zamieszczony kod działa poprawnie, ale ... Wysyłasz na port C dane co jakieś 1/8000000 sekundy. Masz taką potrzebę, czy to przypadek ? Może zrób to tak : $regfile = "m16def.dat" 'atmega 16 $crystal = 8000000 'taktowanie 8 MHZ (kwarc zewne;trzny) Config Portb = Output ' Port...
Witam, Jak byś zobaczył do HELPa Bascoma to byś dużo się dowiedział :) $regfile = "m128def.dat" $crystal = 16000000 $baud = 9600 'set the baud rate for the first hardware UART. $baud1 = 9600 'set the baud rate for the second hardware UART. 'when CONFIG COMx is not used, the default N,8,1 will be used Config Pinb.7 = Output Config Com1 = Dummy...
Witam Moja propozycja jest taka sciagnij note katalogowa z atmela tam masz spis rejestrow z adresami tego procka ,utworz swoj plik np. atm168DEF.dat a w nim wpisz te rejestry(na podstawie jakiegos innego procka) . W pliku *.bas na poczatku wstaw $regfile ="atm168DEF.dat" i powinno dzialac Pozdrawiam
Jeśli masz Atmegę 16 to zmień w porgramie $regfile = "m8def.dat" na: $regfile = "m16def.dat" Zakładam, że fuse bity ustwiłeś na taktowanie 8MHz, gdyż tyle masz w kodzie.. Jeśli to nowa ATmega i nie bawiłeś się fusebitami, to zamień w kodzie programu $crystal na $crystal = 1000000 ,gdyż takie taktowanie jest domyślnie ustawione fabrycznie.
Witam, Atmega 8, Timer1. Używam instrukcji LOAD która skraca czas między przepełnieniami timera, a nie mogę uzyskać odpowiednio krótkiego czasu gdyż w pewnym momencie skracanie timera juz ic nie daje. Oto kod: [syntax=vbnet]$regfile = "m8def.dat" $crystal = 1000000 'Atmega 8 fusy E1 D9 => 1MHz internal RC $hwstack = 64 $swstack = 32 $framesize = 32...
Witam, poniżej zamieszczam kod z Bascoma mojego sterownika BMS, w tej chwili kontroluje temperaturę, czas, Rs232, LCD 2x16. Obsługa z klawiatury lub pilota RC5, w obecnej chwili rozwiajm go o dostęp przez internet. zajmuje ok 8kb pamięci więc w A162 będziesz miał jeszcze drugie tyle pamięci. Ja kożystam z A32 Pozdrawiam. PS. daj znać jak zakończysz...
marcinek.p - to gotowiec dla ciebie, nie mam jak go przetestować ale jestem pewien że zadziała jak trzeba. Masz tu przerwanie, miganie led i zliczanie migniec z incr Mozna to wszystko wkleic do przerwania ale dobra zasada nakazuje w przerwaniach umieszczać jak najmniej kodu. [syntax=basic4gl] $regfile = "m8def.dat" $crystal = 1000000 $hwstack = 32 $swstack...
Witam Na atmega8 program działa idealnie lecz na atmega 16 nie działa timer2 w ogóle nie zlicza nie mogę go uruchomić.. Czy na atmega16 uruchamia się go innaczej niż na atmega8. [syntax=basic4gl]$regfile = "m16def.DAT" $crystal = 1000000 $baud = 1200 Config Timer2 = Timer , Async = On , Prescale = 128 On Timer2 Zegarek Enable Interrupts Enable Timer2[/syntax]...
Grala1 - Nie wiem czy ta wersja spełni oczekiwania : '$prog &HFF , &HE1 , &HD9 , &H00 ' Fusebity fabryczne !!! $sim ' dyrektywa opuszczania zwłoki (usunąć ten wiersz przy wgrywaniu w chip) $regfile = "m8def.dat" ' dyrektywa kompilatora o rodzaju procka ATMega 8 $crystal = 16000000 ' określenie kwarca 16 MHz Config Pinb.1 = Output...
W takim razie nie trzeba żadnych rezystorów. Jeden koniec przycisku podłączasz do wybranego portu mikrokontrolera, a drugi do masy. W programie musisz dać "0" zamiast "1", ale to chyba wiesz sam. Przykładowo przycisk dołączony do PB1 ma zrobić podniesienie wartości I o jeden: $REGFILE="m8def.dat" $CRYSTAL=8000000 Config Pinb.4 = Output Config...
aaaa, no dobra, a w programie zmieniłeś plik na "$regfile = "m32def.dat". Wektorami przerwań się nie martw, bo to powinien obsłużyć kompilator, ale musisz mu najpierw wskazać, jakiego procka używasz.
Program ma pobierać dane z tablic i ustawiać odpowiednie bity na PORTB. Timer0 ma co 0,5s pobrać z tabeli aktualną prędkość z jaką timer2 ma zmieniać stan na PORTB. Osobno timer'y działają, razem nie chcą . [syntax=vbnet] $regfile = "m2560def.dat" $crystal = 16000000 Config Portb.7 = Output Config Portb.6 = Output Config Portb.5 = Output Config Portb.4...
Witam wszytkich, Od kilku dni próbuję się nauczyć obsługi modbus rtu w bascomie i na podstawowym programie z helpa się wyłożyłem. Poradźcie dlaczego wpisując mój procesor w poniższy kod wywala mi błędy? Czy ta biblioteka jest tylko pod dany procesor? Proszę podpowiedzcie. https://obrazki.elektroda.pl/7527367800_... [syntax=vbnet]'-------------------------...
$Regfile="m128def.dat" $Crystal=8000000 Config porta=Output Porta=&B01010101 Do Rotate Porta,Left Waitms 200 Loop End Procek zapala co drugiego leda ale ruchu brak.Sprawdziłem fuse... mam włączoną 103 jak przełącze na "atmega 128 mode" świecą wszystkie ledy i nic
Mam układ w konfiguracji jak w tytule ( do tego czujniki DS, BME280, zapis SD, RFM12 ) Ostatni etap to wysyłanie przez JSON do Domoticz. Niestety szwankuje wysyłanie i robi to losowo, czasem po wysłaniu danych z kilku czujników, czasem przejdzie cały "cykl" Odstęp pomiędzy wysyłaniem wynosi pomiędzy 20 a 30 sekund, natomiast odstęp pomiędzy wysyłaniem...
ale z tego co się już dowiedziałem nie będzie działać na mojej płytce Nie prawda, będzie działał po zmianie kilku linijek kodu. [syntax=basic4gl]$regfile = "8515def.dat" $crystal = 10000000 [/syntax] To zmień na swojego procka i częstotliwość oscylatora, jaki Masz. Na przykład [syntax=basic4gl]$regfile = "m32def.dat" $crystal = 8000000 [/syntax] Tą...
Proszę, może to Cię zachęci do przeczytania reszty we własnym zakresie. Program "miga" nośną 38kHz co 1ms ;) http://obrazki.elektroda.pl/5631733100_1... [syntax=vbnet] $regfile = "m8def.dat" $crystal = 8000000 $hwstack = 64 $swstack = 32 $framesize = 32 Config Timer2 = Timer , Prescale = 1 , Compare = Toggle , Clear Timer = 1 Compare2...
Diodę gaś tak jak ją zapalasz. [syntax=basic4gl]$regfile = "m8def.dat" $crystal = 1000000 Config Portb.0 = Input Config Portb.1 = Input Config Portd.5 = Output Przycisk1 Alias Pinb.0 Dioda Alias Portd.5 Przycisk2 Alias Pinb.1 PORTB.0 = 1' to jest podciąganie do Vdd - działaj w tym celu na rejestrze 'PORTX lub PORTX.Y PORTB.1 = 1 Reset Dioda Do If Przycisk1...
W Bascom to parę linijek. Proszę bardzo: [syntax=vbnet] $regfile = "m32def.dat" 'wybor typu procesora $crystal = 8000000 'ustalenie czestotliowsci taktowania Config Pina.1 = Output ' diody Config Pina.2 = Output ' diody Config Pina.3 = Output ' diody Config Pina.4 = Output ' diody Config Pina.5 = Output ' diody Dioda_1 Alias Porta.1 'Wygodne aliasy...
Pobór prądu mierzę z odpiętym programatorem, obniżam napięcia do 2.2V (mniej nie mogę bo wyłącza się lcd) W programie mam tak : [syntax=basic4gl] $Regfile="m169def.dat" $Crystal=1000000 $hwstack=40 $swstack=16 $framesize=32 config portf=input set portf config porte=input set porte config portb=input set portb config portg=input set portg config portd=input...
O K Widzę,że sam muszę sobie odpowiedzieć. Po żmudnych próbach z konfigurowaniem PWM w Bascomie doszedłem do wniosku, że żadna z wersji tego kompilatora nie jest w stanie prawidłowo skonfigurować PWM na procesorze ATMEGA. Trzeba to zrobić przez bezpośrednie oddziaływanie na rejestry. Np.: $regfile = "m16def.dat" 'Deklaracja rodzaju procesora Ddrd =...
Dodaj na początku dim flaga as byte. Resztę masz- podprogramy i główną pętlę. 'PROGRAM DO STEROWANIA SILNIKIEM KROKOWYM $regfile = "m8def.dat" $crystal = 8000000 Config Portb = Output 'czyli uaktywniam porty D Portb = &B01110111 'określam który z portów będzie jako pierwszy aktywny Config Pind.2 = Input Pind.2 = 1 Config Debounce = 30 'czekaj...
super działa. swieci na niebiesko. dzieki za pomoc. tylko ze teraz ładuje program i nic sie nie wyświetla $regfile = "2313def.dat" $crystal = 8000000 Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.6 , Db7 = Portb.7 , E = Portb.3 , Rs = Portb.2 Config Lcd = 16 * 2 Do Cls Lcd "JEST OK" Wait 1 Cls Lcd "DZIAŁA...
Dobra to dam 10 k i zaraz napisze czy działa ;) ----------------------------------------... Sprawdziłem i działa na tej cewce 680µH bez rdzenia i przy napięciu zasilania 3.72 V generuje 5.07 v i więcej nie dało rady prawdopodobnie przyczyną jest cewka bez rdzenia. Poniżej zamieszczam aktualny kod programu $lib...
Chce zrobić aby atmega pracowała tak samo jak układ ULN2803 tylko odwrotnie (wszystkie 8Bity) Zrobiłem tak: $regfile = "m16def.dat" $crystal = 8000000 Config Lcdpin = Pin , Rs = Portb.0 , E = Portb.2 , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.6 , Db7 = Postb.7 Config Lcd = 20 * 2 Ddrc = 00000000 Config Porta = Output Portc = 1 Deflcdchar...
Zrobiłem i dalej lecą same 0 :(( oto kod w 2 Atmega 128 (ten co ma mierzyć): $regfile = "m128def.dat" $crystal = 16000000 $baud = 9600 $hwstack = 32 $swstack = 10 $framesize = 40 Dim W As Integer Dim L As Integer Config Watchdog = 2048 Start Watchdog Reset Watchdog Config Adc = Single , Prescaler = Auto , Reference = Internal Start Adc L =...
Witam. Mam problem z z komunikacją Mojej ATMEGI z wyświetlaczem LCD na porcie C. Na każdym innym działa to bezproblemowo. w przypadku Portu C dostaje na wyświetlaczu czarne prostokąty. Pytanie gdzie jest błąd lub czy przyczyną może być sama ATMEGA (aktualnie posiadana ATMEGA32A PU 1111 szt.4). na każdej to samo. [syntax=basic4gl] $regfile = "m32def.dat"...
W zakładce Fusebits, w najniższej linijce ustawia się źródło taktowania. Wybierz 1111:1111 External Xtal. Na początku pisanego programu umieść $crystal = 8000000 $regfile = "m8535.dat" To wszystko. Pzdr.
Robi się to prosto na wejściu ICP Atmegi, mierzysz czas pomiędzy kolejnymi zboczami, raz jest opadające, raz narastające itd.. potem to tylko interpretacja wyników, liczenie bitów i po odliczeniu 64 bitów z transmitowanych 66, bo dwa ostatnie dla uproszczenia procedury pomijasz. wyświetlasz na LCD lub wysyłasz po RS232 do komputera, a tam wyświetlasz...
Witam! Chciałbym uzyskać przebieg o wypełnieniu 50% i f~33kHz w trybie CTC na pinie PB3 Atmega 8L (OC2). Podpiąłem wyjście OC2 na oscyloskop i ciągle stan wysoki. Pierwszy raz i na szybko potrzebuję wygenerować taki przebieg. Proszę o pomoc. Późno już i coś mnie chyba przyćmiło. Namieszałem coś z ustawieniami portów czy jakiś rejestr nie jest ustawiony?...
$regfile = "m32def.dat" $crystal = 16000000 $framesize = 16 $hwstack = 24 $swstack = 16 'Konfiguracja SPI Config Spi = Soft , Din = Pina.0 , Dout = Porta.3 , Ss = None , Clock = Porta.1
Kurde, masz zle skonfigurowany wyświetlacz !!! To samo co w poprzednim moim poście zrób z tym przykładem, następnie zdjęcie i wiadomo co dalej. [syntax=vbnet]$regfile = "m644pdef.dat" $crystal = 16000000 $framesize = 80 $hwstack = 50 $swstack = 50 Config Graphlcd = 128 * 64 , Dataport = Porta , Controlport = Portb , Ce = 2 , Cd = 5 , Wr = 3 , Rd = 4...
Witajcie, mam pewien problem z komunikacją mojej Atmegi z komputerem. Póki co chciałem wysłać do komputera zwykły tekst, ale niestety mi się to nie udaje... Aktualnie pracuję na zestawie ZL3AVR i Atmega16. Zgodnie z instrukcją, aby korzystać z RS232 zwarłem złącze JP4 (RxD Enable). Do komputera podpinam płytkę za pomocą kabla 1:1 Atmega pracuje na zewnętrznym...
Mam mały problem chcę zrobić prosty miernik częstotliwości w bascomie do ok. 600KHz Warunek ma mierzyć z dokładnością 1Hz i niestety nie wychodzi mi to. Taimer 1 mam skonfigurowany jako taimer (Config Timer1 = Timer , Prescale = 8) taimer 0 skonfigurowany jako licznik (Config Timer0 = Counter , Edge = Falling ) z resztą zamieszczam fragment kodu [syntax=basic4gl]$regfile...
Mówisz masz na timerze. $regfile = "m16def.dat" $crystal = 1000000 $hwstack = 32 $swstack = 8 $framesize = 16 Config Timer1 = Timer , Prescale = 1024 Enable Interrupts Enable Timer1 Start Timer1 On Timer1 Odmierz_czas Const T = 6942 Config Portb.1 = Output : Portb.1 = 1 : Led Alias Portb.1 Config Portb.2 = Input : Portb.2 = 1 :...
Jak to mówią diabeł tkwi w szczegółach... $crystal = 8000000 $regfile = "m16def.dat" Config Portb = Output Config Pina.1 = Input Do If Pina.1 = 1 Then Reset Portb.6 End If If Pina.1 = 0 Then Set Portb.6 End If Loop End
Witam. Mam procesor atmega 8. Napisałem prosty programik zapalający i gaszący diodę. Oto jego treść: $regfile = "m8def.DAT" $crystal = 8000000 Do Set Portd.4 Waitms 500 Reset Portd.4 Waitms 500 Loop Jednak nie zgadzają mi się czasy. Czas świecenia diody jest ok 5 s, a nie jak w programie 0,5 s. Sprawdzałem ustawienia bascom, jest prawidłowo wszystko...
No to spróbuj tego: $regfile = "m16def.dat" $crystal = 4000000 $hwstack = 32 $swstack = 32 $framesize = 32 config 1wire= portb.7 Do 1wreset if err=0 then print "PP_ok" ' czy LCD "PP_OK" - co tam masz else print "PP_err" ' j/w endif waitms 500 Loop Napisz o wyniku doświadczenia :D Piotrek
Do Reset Portb.1------- tu ustawiasz na wyjscie niskie Wait 1 ------- tu czekasz sekunde Set Portb.1 ---- tu ustawiasz na wyjsciu wysokie Loop -------A TU ODRAZU WRACASZ DO POCZATKU PETLI I TAM ZNOW USTAWIA SIE NA NISKIE End Rozumiesz gdzie jest bład? $crystal = 16000000 $regfile = "m32def.dat" $baud = 9600 Config Portb.1 = Output Do Reset Portb.1 Wait...
Masz tu prosty, sprawdzony, działający program do sterowania portami. $regfile = "m16def.dat" $crystal = 1000000 ' przelicz u siebie te zera :) Dim B As Byte Config Portb = Output Portb = &HFF Waitms 100 Open "comd.1:9600,8,n,1" For Output As #1 Open "comd.0:9600,8,n,1" For Input As #2 Do B = Inkey(#2)...
chyba moja atmega tego nie ma ;P $regfile = "m8def.dat" $crystal = 1000000 Config Portc.0 = Input Config Portb.5 = Output Config Timer2 = Timer , Prescale = 64 Config Int1 = Rising If Portc.0 = 0 Then ' opuznienie = 1wartosc z tabeli jak to zrobic? If Portc.0 = 1 Then ' opuznienie = 2wartosc z tabeli jak to zrobic? ... PWM_Table: Data...
Witam. Szukam 2 dni i nic. Jakiś przykład kodu czy coś. Atmega 16, podłączony kwarc zegarkowy do TOSC1/2. Kod programu to: $regfile = "m16def.dat" $crystal = 8000000 'Oscylator wewnętrzny Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portb.2 , Db5 = Portb.3 , Db6 = Portb.4 , Db7 = Portb.5 , E = Portb.1 , Rs = Portb.0 Config Clock = Soft...
Zacznijmy od tego Skopiowałem program do zliczania impulsów w języku Baskom $regfile = "m8def.dat" $crystal = 8000000 Dim Count As Integer Config Lcd = 16 * 2 Config Lcdbus = 4 Config Lcdmode = Port Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc.0 , E = Portc.4 , Rs = Portc.5 On Int0 Int0_int Do Enable Interrupts...
Proszę. Można to zrobić na kilka sposobów. Pokazuję taki najprostszy żeby pokazać mechanizm. Kiedy bit w bajcie na danej pozycji ma wartość 1 to pin nadawczy jest ustawiany w stan wysoki i po 500us jest zerowany i znów czekamy 500us. Po tej operacji licznik wskazujący o który Bit w Bajcie nam chodzi jest zwiększany. Bity występują w ilości 8 ale numerowane...
Chyba nie zauważasz różnicy. Po pierwsze jeśli tam pisze Go_lo to na pinie ma być ustawiony stan niski. Można to zrobić tylko ustawiając stan wysoki w rejestrze DDR.x Mniejsza o to bo zrobiłem Ci takie makra jak tam. Po drugie po wpisaniu wartości bitu czeka się ponad 10 ms a nie 10 us - to chyba wydatna różnica? Testnij tak. [syntax=vbnet]$regfile...
Problem był w odbiorniku. Napisałem coś takiego jak poniżej i było OK. Ale będę próbował tą drogą którą proponujecie,bo z tego co wyczaiłem to instrukcja Print przesyła zmienną np. 467 po jednym znaku, a na końcu CR, ale tak mogę przesłać jedną zmienną, zastanawiam się jeszcze jak w najprostszy sposób przesłać kilka zmiennych. [syntax=basic4gl]$regfile...
Witam Posiadam silnik z dołączonym enkoderem i tarczą (z drukarki), steruję prędkością obrotową za pomocą PWM, natomiast przerwanie INT wykorzystuje do zliczania obrotów silnika. Problem polega na tym że zliczanie obrotów silnika bez uruchomionego PWM działa poprawnie, gdy go włączę szaleje (nawet gdy obracam tarczkę palcem). Sygnały od enkodera są...
Są Święta więc łap :D https://filmy.elektroda.pl/56_1450976796... Tylko trochę poprawiłem co tam napisałeś bo można by więcej... Możesz tez zerknąć [url=http://bart-projects.cba.pl/bargraf... tę kolekcję - Link. Napisałem w międzyczasie kilka innych i "szybszych" ale nie było czasu wrzucić. [syntax=vbnet]$regfile = "m16def.dat" $crystal = 1000000...
W tym momencie jest tylko cos takiego testowego (na różne sposoby probowalem zmieniac stany portów) $regfile = "m128def.dat" $crystal = 14745600 Config Portf = Output Config Porta = Output Config Portb = Output Config Portc = Output Porta = 255 Portb = 255 Portf = 255 Portc = 125 Do Toggle Portf.2 Wait 1 Porta.0 = 1 Porta.1 = 1 Porta.2 = 1 Porta.3 =...
Witam Schemat http://obrazki.elektroda.pl/2081870200_1... Kod: [syntax=basic4gl] $regfile = "m2560def.dat" $crystal = 16000000 $lib "glcd.lib" Config Graphlcd = 240 * 128 , Dataport = Porta , Controlport = Portc , Ce = 4 , Cd = 5 , Wr = 2 , Rd = 3 , Reset = 6 , Fs = 7 , Mode = 8 Cursor Off _podswietlenie Alias Porth.6 Config _podswietlenie...
Podstawowa sprawa - w drugiej linijce kodu masz napisane, że $crystal = 8000000 podczas gdy na schemacie nie masz podłaczonego żadnego kwarca. Jeśli używasz wewnętrznego oscylatora (i oczywiście masz tak ustawione FuseBit'y), to ATmega pracuje na 1MHz i taką wartość powinieneś ustawić w programie, bo nic nie będzie działać, albo będzie, ale "dziwnie"...
Motam się znowu okrutnie z uartami. Mam dwa urządzenia i chcę aby w każdym nadawanie i odbieranie chodziło w przerwaniach. Urządzenia A odpytuje cyklicznie co kilka sekund urządzenie B. Całe odpytywanie polega na tym że: Moduł A wysyła poleceniem: Print #6 , "RED" ; chr(13) ; zapytanie o treści "RED" i na to zapytanie urządzenie B...
program pisze w bascomie (poniewaz narazie taki język znam, dopiero uczę sie C), w wersji prostej mial to byc zwykly sterownik do urzadzenia wentylacyjnego (pomiar cisnienia i sterowanie dmuchawą itd.), jednak z biegiem czasu zostały dodawane dodatkowe funkcje, a najwiecej miejsca zajmuje "historia modyfikacji" zapisywana do eepromu, ponieważ w bascomie...
informującego o zmianie temperatury co 1 stopień w górę lub dół To są założenia więc co każdy stopień ma być krótki sygnał. Warunek If T >= 200 then spowoduje że przekroczenie 20 stopni spowoduje sygnał. Muszę chwilę pomyśleć. Trzeba badać także różnicę pomiędzy odczytem poprzednim a następnym. Sprawdź to: (zmień procesor, konfigurację LCD, portów,...
Dodaję cały program łącznie z plikami: [syntax=vbnet] $regfile = "m2560def.dat" '$regfile = "xm128a1def.dat" $hwstack = 128 $swstack = 128 $framesize = 128 Config Submode = New Const False = 0 Const True = 1 #if _xmega = True $crystal = 32000000 $include "XMegaPLL.inc" #else $crystal = 16000000 #endif 'Const Lcd_enable_spi = True 'Const Lcd_use_soft_spi...
Witam! 1. od początku: pełna deklaracja procesora to: [syntax=vbnet]$Regfile = "m32def.dat" $Crystal = 16000000 $swstack = 16 $framesize = 32[/syntax] "mój" Bascom nie toleruje niepełnych deklaracji. 2. w zakładce WIDOK proponuje włączyć "CodeExplorer", to bardzo ułatwia wyszukiwanie błedów. 3. błędy formalne to: a. cytuję: "[syntax=vbnet]Do If Pina.0...
W międzyczasie edytowałeś post i przedstawiłeś nowe dane. Mój teraz na razie będzie się tyczył tego co pisało wcześniej. Jeśli chciałbym rozdzielić dwa impulsy na dwa różne piny to zrobiłbym tak: Podłączył sygnał do zewnętrznego przerwania. Kiedy nadchodzi pierwszy plus to ustawiam flagę na 1 i wracam do pętli głównej. W niej tak długo jak pin jest...
No to kupiłem drugi mikrokontroler i ISP działa. Mam pełne porty A B D ale za to nie mam PC2-PC5. Znalazłem, że to porty od JTAG i chciałem ustawić JTAGEN na 1 w AVR8 Burn-O-Mat v2 ale niestety jest on na czerwono i nie mogę go przełączyć. Czy jest jakaś możliwość za pomocą programatora ISP dokładnie usbasp wyłączyć JTAG? Może zamiast programatora...
"Jak ustawisz minimalną dla 2 stanów to wykresem jest linia prosta" Oczywiście, jak sama nazwa wskazuje PWM to Pulse-width modulation.(modulacja szerokości impulsu) Jeśli zasilisz układ napięciem 24V to przy wypełnieniu PWM=255 będziesz miał 24V. Jeśli ustawisz wypełnienie 50% czyli PWM= 127 to teoretycznie powinieneś otrzymać 12V. Dlatego proponowałem,...
Uzywam bascoma wersji 1.11.7.4 demo, poprzednio uzywalem wersji 1.11.6.2 (ale nie ma definiji nowych procesorow) zalaczam listing programu testowego z procesorem 90s8535 i Atmega16 pracuje, nie chce dzialac z atmega8535 (po zmianie deklaracji uzywanego procesora oczywiscie ), napiecie odniesienia zewnetrzne dolaczone do nozki procesora 1,2V, moze ktos...
Witam Chciałem zbudowac układ który liczył by 0-9 i wyświetlane to było na siedmiosegmentowym wyświetlaczu... .......... prosze o pomoc i o jakies proste wytłumaczenie moich błędów. myslalem jeszcze o robieniu tego za pomoca rozkazu INC i dodawania tylko nie wiem jak zawartośc rejestru wystawic na wyjscia z gory dziekuje za pomoc pozdrawiam Tu masz...
Masz całego gotowca z napięciem, paliwem i początkowym pomiarem. Przetestowałem w symulatorze i wygląda że jest ok. Na początku swojego programu musisz zrobić porządek z deklaracjami DIM. Bo jak widzisz ja użyłem ich tylko kilka. Więc wywal w pełnym programie te które już nie są używane. [syntax=basic4gl] $regfile = "m16def.dat" $crystal = 8000000 'zmienne...
Wydaje mi się że masz bład w transmisji ze względu na to że masz kwarc 4Mhz i baud 1200. Tak przy okazji zegar masz przestawiony na wewnetrzne 4MHz czy zewnetrzny kwarc? Jesli na zewnetrzny to ustawiles prawidlowo fuse bity?? Podam Ci prosty program który u mnie dziala bez zarzutu przy kwarcu 8MHz i predkosci transmisji 9600: $regfile = "m32def.dat"...
Na forum pomagamy osobom które wykazują chęć nauki lub maja konkretny problem. Jak uruchomić zegarek z pełnym kalendarzem itd. jest opisane w Helpie przy instrukcji "Config Clock" Jeśli Ci się nie chce czytać lub nie masz czasu to zleć napisanie tego programu. Osoba z doświadczeniem napisze Ci go w jeden dzień z wszystkimi wodotryskami. Pisze to bo...
'///////////////////////////////////////... '// Police Alarm With ATmega8 (Use 4%) // '// Compiler: Bascom 1.11.9.0 // '// Programmer: Behnam zakizadeh // '// Web: www.avr64.com // '// Email: Behnamzaki(at)hotmail.com // '///////////////////////////////////////...
Cześć! Od jakiegoś czasu próbuję połączyć się przez i2c z eepromem. Problem w tym, że Atmega się zawiesza zanim jeszcze cokolwiek zrobi. [syntax=vbnet]$regfile = "m8adef.dat" $crystal = 8000000 $baud = 19200 Config Scl = Portc.5 Config Sda = Portc.4 Config I2cdelay = 10 I2cinit Dim Eep As Byte Const Adrw = 160 Const Adrr = 161 Do Eep = 233 I2cstart...
Witam chce zbudować cyfrowy przedwzmacniacz z tunerem fm o nazwie GAMP. W nim został użyty mikroprocesor atmel at90s8535. W sklepie powiedziano mi, że takiego już nie kupie i zaoferował mi atmega8535. I moja prośba brzmi, czy ktoś mógłby mi go skompilować pod atmege. Wydaję mi się, że wystarczy zmieniź regfile na atmege, ale nie jestem pewien i nie...
Nie,ma liczyć litry tak jak dystrybutor . Dodano po 2 Nie wiem w jaki sposób dodawac litry do zmiennej po przekroczeniu okreslonej liczby impulsów z przepływomierza to co znalazłem to liczone wszystkie w czasie a tu chyba chodzi o przepełnienie licznika Czas tu nie ma znaczenia! Użyj dowolny timer w charakterze licznika (Counter), i tak jak sugerowano...
chyba mamy trop 'Odebranie jakiejkolwiek informacji z modułu GPS $regfile = "m16def.dat" $crystal = 8000000 Config Portd = Output Portd.0 = 1 Do Toggle Portd.0 Wait 1 Loop dioda świeci się 7s, gaśnie na 7s... do programatora mam wpięty kwarc 8Mhz. Czy mam rozumieć że Atmega używa wbudowanego zamiast niego? Edit: Wszystko jasne - AVRdude programował...
Depresja.... Dodano po 1 Tak się zastanawiam czemu tu jest to: 'The GETRC5 function uses TIMER0 and the TIMER0 interrupt. a w helpie że Timer=2
Ja mam taki program zrealizowany na Atmedze8. [syntax=basic4gl]$regfile = "m8def.dat" $crystal = 8000000 $hwstack = 32 $swstack = 40 $framesize = 40 Config Portb.1 = Output 'wyjscie triak Triac Alias Portb.1 Config Rc5 = Pind.7 'rc5 pin timer0 Dim Level As Word 'poziom sciemniania 1 - 20 Dim Timer_val As Word 'wartosc timer1 dla sciemniania Dim Command...
regfile attiny13 bascom regfile regfile attiny2313
kostki brukowej tranzystor to220 ranking dysków
hewalex sterownik hewalex sterownik
Pomarańczowa lampka i zakres 28 - interpretacja sygnałów w urządzeniach technicznych Ford Escort 1.4 1991 - Ograniczenie obrotów do 3000 RPM