Przeszukaj forum
Pokazywanie wyników dla tagów 'Atmega328P'.
Znaleziono 3 wyniki
-
Atmega328P połączenie mikrokontrolera(atmega 328p) z arduino
szymarduino opublikował temat w Mikrokontrolery
chcąc programować mikrokontrolery avr, ale niestety mój programator nie jest zbyt dobry dokładnie usbasp. Słyszałem o możliwości programowania tych mikrokontrolerów za pomocą arduino ale nie wiem jak to zrobić -
Mam takie prawdopodobnie proste pytanie na które nie znalazłem jasnej odpowiedzi. Tak jak w tytule dotyczy odczytu stanu na konkretnym pinie: 1. Czy taki zapis będzie poprawny/optymalny? ISR(TIMER1_CAPT_vect) { //przerwanie co 100ms PORTB ^= 1<<PB5; //zmiana stanu pinu __asm__ volatile ("nop"); // odczekaj jeden cykl w celu synchronizacji if ((PINB>>PB5) & 0x01) timer1=0xFF00; //odczytaj stan pinu i ustaw wartość else timer1 = 0x00FF; }
-
Hej, Umieszczam tutaj sposób wypalenia bootloadera na Atmega328P (Arduino Uno) za pomocą Arduino Leonardo. Nie jest to tak proste jak z użyciem Uno i długo się z tym męczyłem, wiec wrzucam dla potomnych. Nie jestem pewien dlaczego tak się robi, ale działa 😉 Potrzebujesz: Leonardo, Atmega328P, rezonatora kwarcowego, rezystora 10k om, dwóch kondensorów 22pF. Niestety musisz przeinstalować Arduino IDE do wersji 1.0.5. Wersje tą znajdziesz na oficjalnej stronie Arduino (https://www.arduino.cc/en/main/OldSoftwareReleases). 1. odinstaluj Arduino IDE 2. zainstaluj Arduino IDE 1.0.5 3. otwórz przykład ArduinoISP (Plik->Przykłady->ArduinoISP) 4. zmień "#define RESET SS" na "#define RESET 10" (druga linijka po komentarzu) 5. zmień "#define LED_HB 9" na "#define LED_HB 13" 6. wybierz płytkę Leonardo (Narzędzia-> Płytki->Arduino Leonardo) 7. wybierz port (COM) 8. wgraj program 9. przejdź do folderu "hardware" (C:\Program Files (x86)\Arduino\hardware) (ścieżka może się trochę różnić, ale chyba wyłapałeś o co chodzi) 10. utwórz w folderze hardware folder o nazwie "leofix" 11. otwórz notatnik i przekopiuj : " arduinoispleo.name=Arduino as ISP (Leonardo) arduinoispleo.communication=serial arduinoispleo.protocol=arduino arduinoispleo.speed=19200 " 12. zapisz to jako programmers.txt 13. podłącz układ : Atmego328P: Arduino Leonardo: RX pin 2-------------------------------------digital pin 0 TX pin 3-------------------------------------digital pin 1 MISO pin 18-----------------------------------ICSP pin MISO MOSI pin 17-----------------------------------ICSP pin MOSI SCK pin 19-----------------------------------ICSP pin SCK RESET pin1-------------------------------------digital pin 10 oraz 5v i GND (pamiętaj, że GND jest w dwóch miejscach, 5V również ) 14. dodaj rezonator, rezystor i dwa kondensatory. Schemat znajdziesz na oficjalnej stronie: https://www.arduino.cc/en/Tutorial/ArduinoToBreadboard. 15. zrestartuj Arduino IDE 16. wybierz płytkę UNO (Narzędzia-> Płytki->Arduino UNO) 17. wybierz port (COM) 18. wybierz Leonardo jako programator (Narzędzia->Programator-> Arduino as ISP (Leonardo) ) 19. wypal bootloader (Narzędzia->Wypal Bootloader) Jeżeli ktoś wie jak to zrobić prościej to piszcie 😉 (np. nie przeinstalowywanie Ardiuno IDE). Sorry ale nie wiem jak się wstawia zdjęcia źródło: 1. https://www.instructables.com/id/Arduino-Leonardo-as-Isp/ 2. można też obejrzeć Elektro Marsa (62. Jak przenieść projekt z Arduino na ATmega 328 )