Kto traktuje tak samo? TME czy Ty? To jest zupełnie inne. TTL, TTL-l, TTL-s, TTL-ls-to jest co innego. Dodano po 2 A, jeszcze było TTL-h. Ale teraz jest tylko TTL-ls-mocno przestarzałe.
PORTC &= ~_BV(3); - wyzerowanie PORTC |= _BV(3); - ustawienie i jeszcze: PORTC ^= _BV(3); - zmiana stanu.
W uzupełnieniu dodać trzeba by AVCC (niby zasilanie ADC) też mieć podłączone, bo nieużywanie ADC wcale nie zwalania od jego zasilenia. Boleśnie przekonają sie o tym Ci, którzy będą chcieli uruchomić np. PORTC w ATMega32, ale nie zapomnieli o JTAGEN=1.
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...
Witam Oto kod w języku C. Odnośnie schematu - będzie wszystko działało prawidłowo, gdy zastosujemy diody LED niskoprądowe (np. /*Czestotliwosc taktowania procesora 1 MHz (korzystamy z wewn. RC 1MHz) *Procesor ATmega 8 */ #define F_CPU 1000000UL #include <avrio.h> #include <utildelay.h> #define Czas_zalaczania 400//Czas oczekiwania...
napisz config pind.1 = input config pind.0 = input do debounce pind.0,0,klawisz1,sub debounce pind.1,0,klawisz2,sub loop klawisz1: jakas akcja1 /np set pin.c=1/ return klawisz2: jakas akcja2 /np set pin.c=0/ return A zasilanie i mase musisz podpiąć też do tych 2 pinów co pisałeś. Tylko podłącz tak jak jest w programia albo zmień porty Aha mogą...
Witam... Generalnie rzecz biorąc procedury opóźnienia czasowego nie nadają się do modulowania diody IR... Częstotliwość nie jest zbyt stabilna to raz... Dwa nie uzyskasz 36kHz musisz skorzystać z dobrodziejstw timera... Np. tak... #include<avr/io.h> #include <avr/interrupt.h> #include <avr/signal.h> #include <inttypes.h> int...
Brakuje klamer, być może miało być tak: [syntax=c]#define F_CPU 1000000L #include <avr/io.h> #include <util/delay.h> int main(void) { DDRD = 0xff; DDRB = 0x02; DDRC = 0x00; PORTC = 0x03; while(1) { if(!(PINC&(1<<PC0))) { if(!PORTD) { PORTB |= 0x02; _delay_ms(100); PORTB &= ~0x02; } else { PORTD >>= 1; _delay_ms(80); }...
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...
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"...
Zmien ten fragment: \code #define OW_PORT PORTD #define OW_BIT 2 \endcode na: \code #define OW_PORT PORTD #define OW_BIT 0 \endcode bo bylo ustawione na Port D.2 - chyba, ze tam podepniesz DS'a to bedzie smigac... Pozdro! Dodano po 3 a ten plik z kad wziasc?? 1wire_lib.h To jest wlasnie ten fragment: #include <avr/io.h> #include <inttypes.h>...
Po pierwsze, jest zmienna o nazwie "swr" oraz próba deklaracji podprogramu o tej samej nazwie. Najprościej zmienić nazwę podprogramu na inną. Taki kod mi się skompilował: [syntax=vbnet] '---------------------------------------... ' SWR-Meter DL8UA '---------------------------------------... $regfile = "m8def.dat" $crystal...
http://obrazki.elektroda.pl/7995180000_1... Witam! Jakiś czas temu rozpocząłem naukę pisania programów na mikrokontrolery AVR w języku C++. Przeczytałem wiele tutoriali, poradników, itp., aż w końcu doszedłem do pisania własnych, prostych programów. Po kilku takich „pseudoprogramach” zdecydowałem, że teraz czas napisać coś...
Mam problem z plikiem w którym brakuje zamykającej klamry. Szukam jej od dwu dni i już dostaje oczopląsów. POMÓŻCIE proszę ślepemu odnaleźć błąd. // ################################## // ###### SOLAR_MONITOR SYSTEM ###### // ######## ZEGAR STERUJACY ########## // ################################## // created margas 2012 modify 2025 // fusebity atmega...
Witam ! (at)emarcus Dziękuję za wyjaśnienia. Pytałem o portC ATmega8 bo chcę pobawić się posiadaną płytką NE406-k, a tu mam LCD podłączone do poru C, część do portu B. https://obrazki.elektroda.pl/5435745300_... 30 albo i więcej lat leżała ta płytka u mnie, przyszedł czas żeby się nią pobawić. W sieci szukałem gołych płytek które by...
No to robię na urodziny prezent dla kogoś z LEDów na ATmega324A-PU. No i będę programował pierwszy mikrokontroler, który nie jest Arduino. Schemat połączenia LEDów wygląda mniej więcej tak: https://obrazki.elektroda.pl/1592528100_... Główną zmianą jest to, że rezystory oznaczone jako 250 mają 200R. Reszta układu: https://obrazki.elektroda.pl/5253513800_...
To w końcu gdzie masz podpięte diody, na PORTB czy PORTC ?
http://obrazki.elektroda.pl/5959558100_1... Witam :) Razem z kolegą chcielibyśmy się pochwalić naszą maszyną :) Jest to ramie robota oparte na serwomechanizmach modelarskich. Ja zająłem się sterowaniem i elektroniką, a kolega robił projekt 3D w SketchUp i konstrukcje http://obrazki.elektroda.pl/9008440700_1... Początkowo...
Witam Chcę podłaczyć 2 wyświetlacze ILI 9486 tryb 8bit do atmegi 2560 . I mam pytanie , bo mam problem następującej treści. Układ połaczeń jest taki : ATMEGA - LCD PORTC LCD_D0 - D7 bei 8Bit Mode ' PORTG.0 LCD_Reset ' PORTG.1 LCD_CS ' PORTD.7 LCD_RS ' PORTG.2 LCD_WR Rs_disp Alias Portd.7 'Display DC RS Cs_disp Alias Portg.1 'Display CS Res_disp Alias...
http://obrazki.elektroda.pl/4926270100_1... Diagnozer joysticków (np. do Pegasusa) na Atmega 8 Projekt Przyszedł wreszcie czas naprawić posiadane przeze mnie joysticki do Pegasusa. Zwykle uszkodzeniu (urwaniu) uległ kabel lub taki niesprawdzony/niesprawny joystick został zakupiony bez znajomości jego przeszłości. Jeśli kable się urwały,...
Ale DHT11 podczas oczekiwania jest w stanie wejścia, a więc czyta linię a nie coś nadaje. Dodano po 13 Pewnie będzie "#define PC4 4" w "iom8.h". Nie można było odrazu tak :) Ten przykład pokazuje upierdliwość programowania w C. Takie wielopoziomowe wyłuskiwanie informacji powoduje, że zakres wiedzy na temat programowania w tym języku jest niepotrzebnie...
Program wygląda na ok. Chyba musi sie wypowiedzieć jakiś znawca bascoma ;) . Myslalem ze atmega ma jtaga na portc ale okazało sie ze nie :)
Witam programu do sterownika schodów nie mam jeszcze napisanego ponieważ nawet taki prosty program nie działa. Niewiem co jest problemem jak wgrywam program to weryfikacja przebieg pozytywnie a atmega nie reaguje tylko ustawia porty wg. pierwszej pozycji. Nawet na tym programie atmega nie zmienia stanu na porcie c [syntax=vbnet][ Config Portc = Output...
Kolego Fredy wszystkie programy testuje na zestawie uruchumieniowym z atmega 644 ,portc.0 i portc 1 jest zarezerwowany dla SDA i SCI ,dlatego w program który dla Ciebie napisałem musiałem pominąć port.0 i port.1
Jeżeli pin jest ustawiony jako wyjście to może albo "dać" prąd czyli stan wysoki albo zwierać do masy czyli stan niski... Jeżeli jest ustawiony jako wejście to albo jest w stanie wysokiej impedancji (bit odpowiadający pinowi w rejestrze jest wyzerowany np PORTC &= ~_BV(5)) lub ma włączony pullup (PORTC |= _BV(5))...
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"...
W ramach ćwiczeń z lutowaniem SMD postanowiłem zbudować prosty układ na ATMEGA + CH340G. Płytka wyszła udało się polutować, posprawdzałem czy niema zwarć itp... Generalnie niemal wszystko się udało i układ działa - diody migają komunikacja po porcie szeregowym śmiga. Niestety niezależnie od tego czy układ zasilam z USB czy poprzez programator ISP procesor...
Po pierwsze na niektorych pinach PORTC masz JTAG, wylaczyles go? Po drugie - ATMega potrzebuje ok. 6 cykli zegara, zeby wejsc w przerwanie, a twoje instrukcje tez nie wykonuja sie w jednym takcie. Zobacz jaki kod dla przerwania generuje gcc, okaze sie, ze osiagniecie przebiegu rownego clk/2 w ten sposob jest niemozliwe.
A może trzeba dodać $crystal = 80000 Config Portc = &B0010000 Portc = &B0010000
Witam. Atmega328p łączy mi się z bluetooth'em wszystko wydaje się ok dopóki nie zacznę obsługiwać znaków odebranych przez BT. Jeżeli ATmega odbierze 1 lub jakąkolwiek cyfrę wszystko działa ładnie ale jak odbierze jakikolwiek inny znak nie chce działać (znaczy jak będę wysyłał dłuższy czas to zadziała ale to nie o to chodzi). Poniżej wrzucam mój prosty...
Wydaje mi się, że użycie słowa "pochwalić" jest błędne lub przynajmniej nieprecyzyjne, bo kod niestety nie działa, więc nie ma się czym chwalić :cry: Bardzo dziękuję za zainteresowanie i chęć pomocy. Natomiast wspomniany kod (jedna z wielu wersji) ograniczony do niezbędnego minimum wygląda tak: [syntax=c] #include <avr/io.h> #include <util/delay.h>...
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ć...
qurde pisze 2 raz:) Najpierw literóweczka :P : //generujemy dodatnia połowke przebiegu PORTc |=_BV(PC4); //sbi,sbi zapalanie PORTc &=~_BV(PC5);//sbi,cbi gaszenie //teraz czekamy przez połowkę okresu sinusoidy for(f=0;f<freq;f++) { delay(1); } "c" z duzej litery :) I jeszcze jedno co to za _BV jakies makro ?? Skąd to wzioleś ?? Podaj jakie błędy?...
Dla testu daje na PORTC same jedynki i tylko na dwoch pinach PC4,PC5 wymuszam stan a na PC0-PC3 cały czas jest 0 napięcie 0,5V podczas stanu 1 podczas 0 - 0. ATMEGA 8 - fusebity bez zmian, zegar węwnętrzny. PORTD działa bez zarzutów. coś robie źle? ale co? #define F_CPU 1000000L #include <avr/io.h> #include <util/delay.h> int main(void)...
Proszę - tak w świątecznym nastroju ;) Dodałem korekcję mojego pomysłu. Bardzo prosta ale skuteczna. Nadmienić trzeba, że sterowanie trzema kanałami ma sens wtedy, kiedy potem, gdzieś w kodzie, te kanały mają różne wartości. https://filmy.elektroda.pl/1_1450952163.... [syntax=vbnet]$regfile = "m8def.dat" $crystal = 8000000 $hwstack = 80 $swstack = 64...
oki, dzieki, Jest jeszcze jedna kwestia. W Atmega mamy trzy rodzaje rejestrow I/O: PORTx - z ktorego mzna cos odczytac i zapisac - rejestr zawiera dane we/wy DDRx - okresla tym lini (czy jest to wejsci czy wyjscie) PINx - skad mozna odczytac wartosc bezposredni stanu lini Na czym polega roznica pomieczy PORTx a PINx? oraz Jaki bedzie skutek wykonania...
napisałem ten kod trochę inaczej i teraz robi 2 kroki w lewo 1 w prawo.. Przedtem w kodzie miałem od pc1 do pc6 zamiast pc0 do pc5.. Teraz ogarnąć w jakiej kolejności podłączać uzwojenia i będzie dobrze, a atmega nic się nie grzeje ? - to dobrze czy źle ? - silnik po dostaniu napięcia trzyma dosyć mocno
Na moje oko odczytuje tak: A = PortB a zapisuje tak: DDRC = 0 PortC = 255 Ot i cały problem.
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 =...
jakies pomysly? Przestać używać wartości numerycznych i zacząć używać symbolicznych z odpowiednimi operatorami bitowymi, takich, jak w plikach nagłówkowych. Nie ma wtedy prawa się nic p... w kodzie... ;) Niestety jestem bardzo początkujacy w programowaniu i tych operatorów logicznych nie rozumiem... A dajac wartosci liczbowe przynajmniej poczesci rozumiem...
piotrwzk - wlasnie udalo mi sie uruchomic rf12.... powiedz w jakim jezyku piszesz ... Ja uruchomilem rfm na atmedze 8 z wewnetrznym oscylatorem 8mhz zasilanie to 3,3V .. Postaram sie pomoc ...a no i zamiescic jakis ludzki opis :) ... powiem ze nie udalo mi sie uruchomic tych modolow w Bascomie - czasem cos dzialalo , czasem nie ,,, nie wiem wydaje mi...
mam jeszcze jedno pytanie dorwałem program w bascomie wsad do innego sterownika na podstawie jego zaprojektowałem schemat . Moje pytanie jest takie czy nie popełniłem błędu w rozumowaniu i na podstawie tego będzie to chodzić ?. I ostatnie pytanie nie rozumiem co ma w programie robić pinD.2 program się wiesza jak zaremuję to (input ster) to program w...
atmega wyświetlacz PC0 RS PC1 RW PC2 E PC3 DB4 PC4 DB5 PC5 DB6 PC6 DB7 F_CPU 1000000UL JTagów nie wyłączałem, FUSEbity nie ruszane. nagłówek w bibliotece HD44780.h [syntax=c]#define LCD_RS_DIR DDRC #define LCD_RS_PORT PORTC #define LCD_RS_PIN PINC #define LCD_RS (1 << PC0) #define LCD_E_DIR DDRC #define LCD_E_PORT PORTC #define LCD_E_PIN PINC...
Nioptrzebne nawiasy, jak ci juz pisali PORTC = 0x18 - szkoda czasu na analiwoanie magicznych liczb. Wciecia jak nalezy. A na;isałem ci bo nawet nie widziałem prób w tym kodzie własnorecznego zdebuggowania.
100mA i taki program jak wyżej... powinszować:> Wyświetlacze za długo nie podziałają... Świetna porada kolego zerpo. Nie zaniżajmy poziomu forum... Piszesz, że PORTC wybiera diodę...a czy jest to jakaś atmega i nie atmega8/atmeg88? Jak tak...to czytaj wyróżnione/przyklejone tematy...słowo klucz... JTAG.
Witam Napisalem bardzo prosty programik. .INCLUDE "m16def.inc" .CSEG .ORG 0 jmp Reset Reset: ldi R17, high(RAMEND) ldi R16, low(RAMEND) out SPH, R17 out SPL, R16 ; call INI_Klawiatury sei Main: rjmp Main INI_Klawiatury: ; Inicjalizacja klawiatury push R16 ldi R16, 0x0F out DDRC, R16 ldi R16, 0xF0 out PORTC, R16...
Atmega jest taktowana zewnętrznym kwarcem 12MHz, żeby jeden tick timera trwał ~1us. 1. Czy timer 8-bitowy przyjmujący zewnętrzne impulsy, może je przyjmować w takich samych odstępach czasowych jak 16-bitowy? Niestety na etapie projektowania nie zauważyłem, że żeby użyć 16-bit timera do przyjmowania impulsów zewnętrznych należy użyć nóżki T1, a nie T0,...
Witam , Mam do zaprojektowania układ zbudowany z silnika dc,mostka l293d oraz z AtMegi32 z zegarem kwarcowym 8MHz Moim celem jest sterownie silnika lewo/praw oraz szybciej/wolniej. Na wyświetlaczu ma się wyświetlać prawo/lewo oraz szybkość(w %) Program jaki mam jest napisany w Bascomie. [syntax=vbnet]$regfile = "m32def.dat" $crystal = 1000000 Config...
Próbuję zrozumieć działanie przerwań i coś mi to nie wychodzi, chciałem uzyskać efekt że po naciśnięciu przycisku program który jest w pętli nieskonczonej obsługuje przerywanie ale mi to nie wychodzi, o to fragmenty kodu: #include <avr/io.h> #include <avr/interrupt.h> #include <avr/signal.h> ENABLE_INT0_FLAGING; waitms(unsigned...
Sprawdź na portc taki programik. $regfile = "m16def.dat" $crystal = 4000000 Config Lcd = 20 * 4 Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.5 , Db6 = Portc.6 , Db7 = Portc.7 , E = Portc.3 , Rs = Portc.2 Cls Do Lcd "ok" Waitms 250 Loop End U mnie tak działa bez problemu. TYLKO NIEZAPOMNIJ USTAWIĆ FuseByts dla portu C Pozdrawiam
[syntax=c] ISR(USART_RXC_vect) { i = uart_recieve(); PORTC |= (1<<PC5); } [/syntax] W powyższej funkcji wywołujesz funkcję: [syntax=c]// function to receive data unsigned char uart_recieve (void) { while(!(UCSR0A) && (1<<RXC0)); // wait while data is being received return UDR0; // return 8-bit data }[/syntax] która wykouje sprawdzenie...
OK, wywaliłem to powielanie i zrobiłem po prostu if i potem else if. Co masz na myśli brak nop ? asm("nop"); ? [syntax=c]PORTA = 0b01111111; if((PINA & 0x08)==0) PORTC = wyswietlacz(1); else if((PINA & 0x04)==0) PORTC = wyswietlacz(2); else if((PINA & 0x02)==0) PORTC = wyswietlacz(3); PORTA = 0b10111111; asm("nop"); if((PINA & 0x08)==0) PORTC = wyswietlacz(4);[/syntax]...
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...
Witam Mam problem. Próbuje napisać program do atmegi8. Atmega ma sterować 2 silnikami przód tył. Program działa Config Pind.0 = Output Config Pind.1 = Output Config Pind.2 = Output Config Pind.3 = Output Config Portc = Input Do Reset Portd.0 Waitms 60 Set Portd.0 Reset Portd.1 Waitms 60 Set Portd.1 Reset Portd.2 Waitms 60 Set Portd.2 Reset Portd.3 Waitms...
Generalnie diod LED nie łączy się równolegle, bez rezystora wyrównującego. Tutaj to mały błąd, ale złe nawyki mszczą się w przyszłości. Dlaczego uważasz, że jeśli odwrócisz te dwie diody i je podłączysz do masy, to port nie wytrzyma? Dla ATMega obciążalność portów w obu stanach jest taka sama. Ale generalnie nie do końca rozumiem o co ci chodzi.
układ został w całości zmontowany. niestety po uruchomieniu jest cicho i głucho. próbowałem uruchomić poniższy program z PWM (na diodach działał): [syntax=c] #include <avr/io.h> int main() { DDRC = 0xFC; //klawiatura PORTC = 0xFF; DDRD = 0xFF; PORTD = 21; // stan wysoki na OCR1A i PD4 TCCR1A = 0b10000010; TCCR1B = 0b00011001; TCNT1 = 0; OCR1A...
Same z siebie się raczej nie ustawiają. Nawet jeżeli gdzieś byś ustawił rejestry przypadkiem to i tak w mainie nie masz sei(); Bardzo ciężko analizować Twój kod, szczerze - nie podejmowałem nawet próby bo też wrzuciłeś jakiś bałagan. Pokomentowane fragmenty kodu, miliardy parametrów i obliczenia z kosmosu, niepotrzebnie includy - naprawdę ciężko się...
Czesc, No niestety nie hula... probowałem tego. Myśle ze atmega jest zryta jakos... Mimo tego, ze mam obsługe przerwań i tak, wiem ze to musi działać bo skopiowałem to z mojego poprzedniego projektu, to mi się restartuje atmega. Zwrać na płytce nie ma. [syntax=c] #include <avr/io.h> // Załaduj bibliotekę input/output #include <avr/interrupt.h>...
ale, czy dołączone są biblioteki zmiennoprzecinkowe? Jeśli tak, to jak wygląda definicja (struktura) pomiar_temperatury; bo w kodzie tego nie widzę.[/quote] [syntax=c] * pomiartemperatury.h * * Created on: 15 lut 2014 * Author: root */ #ifndef POMIARTEMPERATURY_H_ #define POMIARTEMPERATURY_H_ #include <avr/io.h> #include <util/delay.h> #define...
Wiem, że temat pullupów jest prosty i omówiony wiele razy, ale jednak mam problem. Po kilkumiesięcznej przerwie wróciłem do programowania uC. I na początek wziąłem banalny program dla atmega: #include <avr/io.h> int main(void) { DDRC =0xFF; PORTC =(1 << 5); PORTB =(1 << 1); for (;;) { if (bit_is_clear(PINB,1)).....
w uC: while(1) { USART_String("test OK\r\n"); _delay_ms(1000); PORTC ^= _BV(3); } Jak mam wcześniej sparować? dodałem urządzenie w systemie Windows 7, wpisując pin "1234". Jeszcze coś trzeba zrobić? Bo nie rozumiem.
Witam, uściślij swoją wypowiedź. jako Controlport wykorzystuję PORTC (Dataport = Portd) Podłączasz zatem do PortuC czy D? Jeśli do portu C, to możliwe, że przyczyną jest aktywny interfejs JTAG w procesorze. Pozdrawiam, aleexander Przecież piszę wyraźnie: jako Controlport wykorzystuję PORTC (Dataport = Portd) - dataport to nie to samo co Controlport...
Mam procesor ATMega 16, najnowszego bascoma w wersji demo i klawiaturę podłączoną do portu C. Niestety nie działa poprawnie funkcja GETKBD. Zwraca wartość 7 gdy nic nie jest wciśnięte. Pod pozostałymi portami działa ok. W ramach rozwiązania problemu zacząłem testować portc i okazuje się że nie mogę wpisać na niektóre wyprowadzenia "1" Ustawiam Portc...
Pojawia się taka opcja tylko jest ona akurat teraz niedostępna. W jaki sposób jeszcze mogę przywrócić poprzednie ustawienia jeżeli doszło do ich zmienienia. Dodam że wgrywałem program w obsługą przetwornika AC. Dziękuję Ci za podpowiedzi. #define LED1 PB4 #define LED2 PB5 #define ADCIN PC2 DDRC=0xff; DDRC &=~ (1<<KLAWISZ); DDRC &=~ (1<<ADCIN);...
Witam! Zająłem się zabawą z Atmegą 88 i mam problem z uzyskaniem katalogowego poboru prądu w głębokim uśpieniu. Atmega podłączona minimalnie, tylko 2 kondensatory 100n przy zasilaniu i 2 ledy które pomagają upewnić się że Atmega śpi. Przy zasilaniu 1,8V udało mi się zejść do 8uA. ADC, komparator, watchdog i brown out wyłączone. Taktowanie wewnętrznym...
Dziękuję za informację kod poprawiłem jednak teraz już nie wyświetla się kompletnie nic. Próbuje podświetlać jakieś pixele ale na ekranie cisza. Dodam że atmega nie zawiesza się kod wykonuje się cały na oscyloskopie widać że dane się transmitują. Wyświetlacz jednak milczy. Wrzucam cały kod gdyż jest jego nie dużo a może ktoś coś zauważy. [syntax=c]...
Nie łapie ; proste inaczej.... [syntax=csharp] //przykładowo zmienna c to cyfry //przykładowo zmienna a to anody lamp nixie // struct pin_ { uint8_t *port; uint8_t pinmask; } pin[] = { { PORTB &= ~(_BV(0) } // dla cyfry 0 { PORTB &= ~(_BV(1)} // dla cyfry 1 { PORTB &= ~(_BV(2)} // dla cyfry 2 { PORTB &= ~(_BV(3)} // dla cyfry 3 { PORTB &= ~(_BV(4)}...
Ten fragment ma właśnie to robić:) Tzn do tablicy tab wprowadzane są znaki które użytkownik wprowadził na klawiaturze. Może problem jest właśnie w wprowadzaniu tych znaków? [syntax=c] if(flaga250ms == 1) { klaw = KLAW_Skan(); flaga250ms = 0; if(klaw != 0) { tab[i] = klaw; if(klaw>0 && klaw<11) { i++; } if(i==2 && klaw == 11) {...
Witam Mam problem z wykorzystaniem regulatora PWM wbudowanego w atmega. Zbudowany układ wykonawczy pracuje prawidłowo i wykonany jest następująco: http://obrazki.elektroda.pl/4062235800_1... Elementy: MOC3042 BTA136 2x rezystor 330R Układ wykonawczy działa i podanie wysokiego stanu zapala żarówkę, zadanie niskiego ją gasi. Jako obciążenie...
Witam. Mam podobny problem i nie moge sobie z nim poradzic. Atmega ma wysylac dane jezeli dwa odpowiednie piny zostana zwarte do masy. Transmisja odbywa sie ale na terminalu odbieram rozne dziwne znaczki i nie mam pojecia o co chodzi. Do atmegi nie mam podpietego zadnego kwarcu. Oto moj program #include <avr/io.h> #include <util/delay.h>...
Zmieniłem piny i działa, zmieniłem mikrokontroler na inny i wykorzystałem PortC i działa. Winny był zatem tylko procek (pozyskany zresztą z innego układu). Trudno, jedna niepełnosprawna atmega a ile może problemów sprawić. Gorzej, że gdy kupowałem ostatnio to tqfp leciały w okolicach 3.80zł/szt a teraz jest to ~8zł - co się porobiło to nie wiem. Zresztą...
Witam Serdecznie PanowieTemat mam pewiennieaktualny problem a mianowicie zrobiłem ten sterownik http://mirley.firlej.org/prosty_sterowni... wszystko ładnie się zaprogramowało fuse bity ustawione po załączeniu działają wszystkie funkcje lecz niestety nie pokazuje mi temperatury niby trzeba trzymać przycisk s1 na pierwszy cujnik ds18b20 i go wpisać...
Witam Kupiłem robota klasy mini sumo. Zawiera on 2 mikrokontrolery Atmega8 służącą do obsługi dalmierzy, oraz Atmega32, która jest główną jednostką. Atmegi są połączone ze sobą przez SPI. Atmega 8 jest już zaprogramowana i wysyła przez SPI 2 bajty ( 1 dalmierz lewy, 2 dalmierz prawy), jeżeli obiekt jest w odległości 10cm to wysyła bajt o wartości 10....
Kurdę no przerwanie jest wywoływane co 310us a to jest bardzoooo wiele cykli zegara na to by mogła się wykonać cała pętla while, cały czas nie rozumiem czemu na atmega 16 działa a na atmega128 nie chce działać :/ sprawdzałem bity ustawiające timer i przerwanie, są one takie same dla mega 16 i 128 więc nie wiem w czym jest problem :( Ten program działa...
Dziekuje Działa - oczywiście kliknełm wiadomo co a jak używam w programie - przykład kodu If A = 1 Then Lcd "program 1" Portc = &B00000001 Waitms 50 Portc = &B00000011 Waitms 50 Portc = &B00000111 Waitms 50 Portc = &B00001111 Waitms 50 Portc = &B00011111 Waitms 50 Portc = &B000111111 Waitms 50 Portc = &B01111111 Waitms 50 Portc = &B11111111...
Witam proszę o sprawdzenie kodu który ma za zadanie włączać i wyłączać dwie diody co sekundę . [syntax=c] /* * main.c * * Created on: 05-03-2013 * Autor: Wojciech Kasprzak */ #include <avr/io.h> #include <util/delay.h> #define LED1_PIN (1<<PC1) #define LED2_TOG PORTC ^= LED1_PIN #define LED2_PIN (1<<PC2) #define LED1_TOG PORTC...
Co do makr //definicja polaczen #define D7_ON sbi(DDRC, PC5);sbi(PORTC, PC5); #define D7_OFF sbi(DDRC, PC5);cbi(PORTC, PC5); #define D6_ON sbi(DDRC, PC4);sbi(PORTC, PC4); #define D6_OFF sbi(DDRC, PC4);cbi(PORTC, PC4); #define D5_ON sbi(DDRC, PC3);sbi(PORTC, PC3); #define...
To czekamy na prezentację jak już wszystko będzie działać :) Prezentacja na pewno będzie jak już wszystko złożę w całość. Jak na razie w wolnych chwilach pomiędzy zajęciami staram się dopracowywać wszystko na płytce stykowej. Zaobserwowałem dziwną rzecz. Atmega po kilku przejściach programu (czyt. po kilku uaktywnieniach ledów z czujnika) samoistnie...
Witam, proszę o pomoc. Chcę wysłać jeden bajt do mojego układu, w którym na porcie C są podpięte diody i włączają się przy 1 a wyłączają przy 0. Chce stan tych diod ustalać z poziomu komputera (piszę w javie). Coś tam na pewno działa ponieważ widzę reakcję na przerwanie (jak cokolwiek przesyłam z aplikacji i w ISR(USART_RXC_vect) nakazuję zmianę stanu...
Witam, posiadam już gotową płytke z atmega 8 gdzie są zainstalowane czujniki CNY70 - zgodnie z schematem "Przepis na robota" Mam jednak problem z sprawdzeniem działania czujników. Pisze taki program w C: /* ATmega 1MHz */ #define F_CPU 1000000L #include <avr/io.h> #include <util/delay.h> int main(void) { //wyjscia DDRD=0xff;...
Witam wszystkich bardzo serdecznie. Z okazji ukończenia szkoły elektronicznej postanowiłem zrobić sobie zegarek/wyświetlacz widmowy. Niestety utknąłem na funkcji, która ma odczytywać znaki z tablicy w pamięci i wyświetlać je w zrozumiały dla ludzi sposób ;). I tu zwracam się do was z prośbą o pomoc w poprawieniu tej funkcji abym mógł wyświetlić jakąkolwiek...
Z tego co wiem transmisja radiowa w przez moduły RFM01 i RFM02 odbywa się poprzez magistrale SPI. Takie może retoryczne pytanie, jeśli w Attiny2313 pod piny z SPI mam podpięty LCD, to będę miał zakłócenia? Zmienić lokalizacje LCD? Próbuje radiowo połączyć attiny2313 MASTER i atmega16 SLAVE. Na początku chcę połączyć przewodami żeby sprawdzić jak działa...
Witam, Potrzebuję zrobić na TDA1543A i Atmega8 regulowane napięcie stałe w zakresie napięc podawanych przez TDA1543A. Znalazłem przykładowy program i zmontowałem układ, atmega wysyła dane lecz na wyjściach TDA mam jedynie napięcie stałe bliskie napięciu zasilania. Atmega8A taktowana kwarcem 12MHz. Próbowałem także 1MHz i 8MHz i nic to nie zmieniało....
Pull-upy są w BMA220. Teoretycznie konwerter powinien być, i jest już zamówiony, ale to nie może być powód. Dziś uruchomiłem sobie jeszcze ten sam kod na płytce Arduino (zaprogramowałem układ w języku C przez złącze ISP na płytce), gdzie w języku arduino na tej płytce ten akcelerometr działa. Próbowałem z adresami, bo trzeba go przesunąć w lewo i dopisać...
Witam, napotkałem problem dotyczący generowania od dwóch do czterech sygnałów PWM na dwóch timerach - 8 i 16 bitowym. Posiadam Atmegę 328p z kwarcem 16 Mhz. Timer 8 bitowy ma generować przerwanie z czestotliwością 800 Hz (po 200 Hz na kanał, przy obsłudze czterech kanałów.). Timer 16 bitowy ma generować przerwanie by w efekcie PWM miał szerokość od...
SCL i SDA powinieneś podciągać do 3,3V, ale i to nie najlepsze rozwiązanie. Znajlepiej zasilić ATMegę z 3,3V albo zastosować dwukierunkowe konwertery 5<-->3,3V. Piny są konfigurowane automatycznie. Jedynie rejestrem PORTC można włączyć albo wyłączyć rezystory podciągające. Po za tym. Czytasz Ty w ogóle to forum? Obok jest bardzo podobny wątek...
czesc od niedawna (tygodnia) zaczalem bawic sie mikrokontrolerkami. na podstawie roznych zrodel robilem sobie zestaw startowy z atmega 32 programuje w jezyku C za pomoca programu avr studio 4,13 z pluginem avr gcc (win avr gcc). poniewaz nie mam wejscia com w moim pc-cie, to urzywam programu ponyprog2000 i portu lpt (programator na bazie ukladu 74ls244n...
Witam! Mam problem z transmisją RC5. Gdy odpalam układ to na LCD Adres=0 i Komenda=0 gdy natomiast nacisnę jakikolwiek przycisk to Adres=255 a komenda=127. Posiadam układ do odbioru RC5 TSOP31236 połączony wg schematu poniżej. http://obrazki.elektroda.pl/6312431800_1... Atmega jest ustawiona na wewnętrzny kwarc 8Mhz. Próbowałem też zrobić...
http://obrazki.elektroda.pl/7218266900_1... Chronograf jest urządzeniem służącym do pomiaru prędkości obiektu. W najprostszej formie pomiar polega na wykorzystaniu dwu czujników, które będą „śledzić” obiekt, urządzenia do pomiaru czasu i interfejsu wyświetlającego wynik pomiaru. W niniejszym artykule zostanie przedstawiony...
Zamiast PORTC i DDRC piszesz tak jak masz u siebie, czyli PORTD i DDRD (to rejestry odpowiedzialne za sterowanie i kontrolę portami IO). I potem jak u siebie masz np. pin 2 (czyli PD2) podpięty do lcd-D4 to na taki zmieniasz definicję (czyli np. zamiast PC4 piszesz PD2).
Witam, od wczoraj zmagam się z problemem odbioru kodu RC5 w urządzeniu, w którym mam multipleks dużej ilości wyświetlaczy 7-segmentowych LED. Przerwania na multipleks przychodzą co około 4ms. Multipleksowanych cyfr jest łącznie 48, ale pogrupowane są one, tak jakby były tylko 4 cyfry. W każdym przerwaniu kody segmentów wysyłane są szeregowo na 3 rejestry...
Witam, Moja przejściówka USB - RS232 okazała się być jakimś chińskim szajsem więc nie mogę chwilowo sprawdzić poprawności kodu. Czy ktoś mógłby rzucić okiem i stwierdzić czy poniższy kod ma szansę funkcjonować? ATmega jedynie odbiera jeden bajt po RS'sie i w zależności od tego czy jest to 1 czy 0, ustawia cały port C w stan aktywny bądź niski. Mikrokontroler:...
Witam Mam od pewnego czasu problem z ktorym sie borykam, a mianowicie nie umiem uruchomic wyswietlacza graficznego 128x128 ze sterownikiem T6963C, nie wiem dlaczego, to jest moj pierwszy projekt na ATmedze 16, ten sam program napisany pod ATmega 8 dziala bez problemu... Program napisany jest w BASCOM a sterowanie wyswietlacza mam ustawione tak: Config...
Witam Chce zrobić zdalnie sterowany pojazd, w tym celu chcę użyć nrf24l01 oraz 2x atmega8. Skożystałem z gotowych plików ze strony Proszę poprawić treść wiadomości - 3.1.13
Mam problem z tranmisja AVR->PC. Uzywam ATmega32-16PU(at)10MHz, zew. krysztal. Fusy ustawione highbyte 0xC9, lowbyte 0xFF. Zasilanie 5V, kowerter poziomow to MAX232N, piny podpiete tak ATMEGA MAX232 input MAX232output PC RS TXD T2IN T2OUT RX ( pin 2) RXD R2OUT R2IN TX (pin3) GND (pin5) Kod programu testowego: #define BAUDRATE 64 // 9600 at 10MHz...
Procek Atmega 16, JTAG wyłączony,adres/dane podłączone pod portd a w porciec CS=portc.0 , ALE=portc.1 , R/W=portc.2 , DS=portc.3 poprawiłem część kodu Portc = 12 Portd = &B00000000 <- jeżeli wyzeruję wcześniej to już mi adres nie wraca Ddrd = &B00000000 Dana = Pind Natomiast dziwi mnie fakt że nie działa z avr'em.Jeżeli ręcznie podaję 1 na...
Hej. Zbudowałem sobie wyświetlacz widmowy, tylko po wgraniu właściwego programu nie działa jak należy. Ale gdy wrzucę do procka coś prostego np. żeby mrugał naprzemiennie diodami to wszystko działa jak należy i zero mrugania wiec wnioskuję że prędkość obrotowa jest wystarczająca. Mój procesor to Atmega 8, wyświetlacz ma 8 diod 6 diod jest podłączonych...
Nie definiujesz nigdzie F_CPU dla biblioteki delay.h Mam zdefiniowane to w pliku F_CPU, ale dla pewnosci przetestowalem dodajac definije do pliku glownego. Moja Atmega pracuje z czestotliwosci 16MHz (wewenetrzny7 rezonator)<ATMEGA16-16PU>, link do niej: http://www.seguro.pl/sklep/?zobacz=3997&... http://radzio.dxp.pl/hd44780/ Skopiowalem...
Czy ktoś z Was spotkał sie z dziwnym działaniem portuC ATmegi16L ?? Mianowicie pisze program w C i po kompilacji tego samego programu tylko o działaniu wynikowym na portA wszystko działa OK a po kompilacji ze zmianą tylko portu na portC program nie działa. Sprawdzałem fuse-bity czy czasem debug nie jest włączony ale tam wszystko jest ok, sprawdzałem...
Witam , jestem początkującym elektronikiem jak i programistą dlatego proszę o wyrozumiałość. Schemat elektroniczny już mi ktoś sprawdził i powinien być dobrze ale w skrócie to chcę sterować za pomocą Atmegi8 poprzez układ L293 silnikiem krokowym dwufazowym bipolarnym. Wiem że ten listing nie jest poprawny, ale tyle udało mi się napisać i nie wiem co...
atmega portc atmega32 portc portc atmega8
w25q16 grundig glowica laserowa agregat prądotwórczy pompa wtryskowa
philips 40puh6400 dedietrich smart
IGBT IGW30N60 Infineon – model SPICE subckt, parametry, symulacja, tekstowy opis Chrysler Voyager 3.8 V6 1997 – schemat elektryczny skrzyni biegów A604/41TE, pinout, czujniki