Форум РадиоКот • Просмотр темы - Начальная конфигурация ATMEGA 2560
Сообщения без ответов | Активные темы
Страница 1 из 1
[ Сообщений: 19 ]
Автор
Сообщение
vovik15
Заголовок сообщения: Начальная конфигурация ATMEGA 2560
Добавлено: Вс май 13, 2018 13:48:17
Карма: 4
Рейтинг сообщений: 1
Зарегистрирован: Сб ноя 08, 2008 18:32:36Сообщений: 764
Рейтинг сообщения: 0
Здравствуйте! планируется интересный проект на базе контроллера ATMEGA 2560. Купил китайскую ардуино мега, залил тестовый скетч Blink все работает. Но работы по написанию кода ведутся в Avr Studio 5 совместно с программатором AVRISP MK2. Написал тестовую програмку мигания светодиодом, фьюзы установил так :
BOODLEVEL 2.7V
SPIEN
WDTON
SUT_CKSEL EXTOSC_8MHZ_XX_16KCK_64MS
Но плата ведет себя неадекватно. Такое ощущение,как будто она постоянно перезагружается. Все всетодиоды установленные на плате мигают синхронно с одной частотой, и никаких действий больше не происходит. Питание стабильно 5 вольт. Подскажие в чем может может быть проблема?
Код:
#include <avr/io.h> int main(void) { StartChipConfig(); //начальная конфигурация контроллера while(1) { PORTB |= 1<<6; delay(); PORTB &= ~(1<<6); delay(); } } void StartChipConfig (void) { //все линии на выход DDRA=0b11111111; DDRB=0b11111111; DDRC=0b11111111; DDRD=0b11111111; DDRE=0b11111111; DDRF=0b11111111; DDRG=0b11111111; DDRH=0b11111111; DDRJ=0b11111111; DDRK=0b11111111; DDRL=0b11111111; //Обнуление портов PORTA=0x00; PORTB=0x00; PORTC=0x00; PORTD=0x00; PORTE=0x00; PORTF=0x00; PORTG=0x00; PORTH=0x00; PORTJ=0x00; PORTK=0x00; PORTL=0x00; } void delay (void) { unsigned int t=0xffff; while(t-->0); }
Вернуться наверх
Реклама
Z_h_e
Заголовок сообщения: Re: Начальная конфигурация ATMEGA 2560
Добавлено: Вс май 13, 2018 13:51:42
Собутыльник Кота
Карма: 29
Рейтинг сообщений: 645
Зарегистрирован: Сб май 14, 2011 21:16:04Сообщений: 2694Откуда: г. Чайковский
Рейтинг сообщения: 0
Медали: 1
vovik15 писал(а):
Подскажие в чем может может быть проблема?
vovik15 писал(а):
WDTON
_________________Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Вернуться наверх
Реклама
vovik15
Заголовок сообщения: Re: Начальная конфигурация ATMEGA 2560
Добавлено: Вс май 13, 2018 13:59:50
Карма: 4
Рейтинг сообщений: 1
Зарегистрирован: Сб ноя 08, 2008 18:32:36Сообщений: 764
Рейтинг сообщения: 0
Убрал галочку с WDTON ничего не изменилось
Вернуться наверх
Реклама
Z_h_e
Заголовок сообщения: Re: Начальная конфигурация ATMEGA 2560
Добавлено: Вс май 13, 2018 14:04:41
Собутыльник Кота
Карма: 29
Рейтинг сообщений: 645
Зарегистрирован: Сб май 14, 2011 21:16:04Сообщений: 2694Откуда: г. Чайковский
Рейтинг сообщения: 0
Медали: 1
Попробуйте выключить все остальные светодиоды. Много их? Дело в том что у МК есть не только ограничение по току для порта, но и через цепи питания.
_________________Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Вернуться наверх
Реклама
Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторов
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.
Подробнее>>
vovik15
Заголовок сообщения: Re: Начальная конфигурация ATMEGA 2560
Добавлено: Вс май 13, 2018 14:14:43
Карма: 4
Рейтинг сообщений: 1
Зарегистрирован: Сб ноя 08, 2008 18:32:36Сообщений: 764
Рейтинг сообщения: 0
вот видео происходящего
https://yadi.sk/i/fffq49-13VpESE здесь 100% проблема в коде. Потому что при этом же подключении ,родной ардуиновский код Blink работает отлично.
Вернуться наверх
Реклама
Реклама
Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Подробнее>>
Dimon456
Заголовок сообщения: Re: Начальная конфигурация ATMEGA 2560
Добавлено: Вс май 13, 2018 14:53:15
Карма: 20
Рейтинг сообщений: 145
Зарегистрирован: Вс дек 25, 2016 08:34:54Сообщений: 1849
Рейтинг сообщения: 0
Попробуйте добавить в начало программы
Код:
CLKPR=(1<<CLKPCE); CLKPR=(0<<CLKPCE) | (0<<CLKPS3) | (0<<CLKPS2) | (0<<CLKPS1) | (0<<CLKPS0);
Вернуться наверх
Реклама
vovik15
Заголовок сообщения: Re: Начальная конфигурация ATMEGA 2560
Добавлено: Вс май 13, 2018 15:02:34
Карма: 4
Рейтинг сообщений: 1
Зарегистрирован: Сб ноя 08, 2008 18:32:36Сообщений: 764
Рейтинг сообщения: 0
Этот код не компилируется. Может быть вы используете другой компилятор? у меня GCC. Если я правильно понял,то это настройка предделителя тактовой частоты?
Вернуться наверх
Реклама
Dimon456
Заголовок сообщения: Re: Начальная конфигурация ATMEGA 2560
Добавлено: Вс май 13, 2018 15:05:58
Карма: 20
Рейтинг сообщений: 145
Зарегистрирован: Вс дек 25, 2016 08:34:54Сообщений: 1849
Рейтинг сообщения: 0
Код:
CLKPR=0x80; CLKPR=0x00;
Вернуться наверх
Реклама
vovik15
Заголовок сообщения: Re: Начальная конфигурация ATMEGA 2560
Добавлено: Вс май 13, 2018 16:00:08
Карма: 4
Рейтинг сообщений: 1
Зарегистрирован: Сб ноя 08, 2008 18:32:36Сообщений: 764
Рейтинг сообщения: 0
Ага,добавил,все скомпилировалось,но опять то же самое, плату как буд-то в конвульсиях трясет. Все время перезаргужается. Может быть что то сделать с линией Reset?Добавлено after 25 minutes 54 seconds: записал вот такой код. Светодиод на указанной линии все время мигет с той же самой скростью, хотя должен был зажечься, и подвесить программу [code] #include <avr/io.h> #define F_CPU 16000000UL //16MHz #include <util/delay.h> int main(void) { DDRB |= 1<<5; PORTB &= ~1<<5; while(1) { PORTB |= 1<<5; _delay_ms(100);_delay_ms(100);_delay_ms(100); PORTB &= ~1<<5; _delay_ms(100);_delay_ms(100);_delay_ms(100); PORTB |= 1<<5; while(1); } } [code]
Вернуться наверх
Реклама
Dimon456
Заголовок сообщения: Re: Начальная конфигурация ATMEGA 2560
Добавлено: Вс май 13, 2018 16:22:57
Карма: 20
Рейтинг сообщений: 145
Зарегистрирован: Вс дек 25, 2016 08:34:54Сообщений: 1849
Рейтинг сообщения: 0
Для интереса, попробуйте мою прошивку залить
Вложение:
2560.rar [663 байт]
Скачиваний: 122
Спойлер Код:
/******************************************************* Project : Version : Date : 13.05.2018 Author : Company : Comments: Chip type : ATmega2560 Program type : Application AVR Core Clock frequency: 16,000000 MHz Memory model : Small External RAM size : 0 Data Stack size : 2048 *******************************************************/ #include <mega2560.h> #include <delay.h> // Declare your global variables here void main(void) { // Declare your local variables here // Crystal Oscillator division factor: 1 #pragma optsize- CLKPR=(1<<CLKPCE); CLKPR=(0<<CLKPCE) | (0<<CLKPS3) | (0<<CLKPS2) | (0<<CLKPS1) | (0<<CLKPS0); #ifdef _OPTIMIZE_SIZE_ #pragma optsize+ #endif // Input/Output Ports initialization // Port A initialization // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRA=(0<<DDA7) | (0<<DDA6) | (0<<DDA5) | (0<<DDA4) | (0<<DDA3) | (0<<DDA2) | (0<<DDA1) | (0<<DDA0); // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTA=(0<<PORTA7) | (0<<PORTA6) | (0<<PORTA5) | (0<<PORTA4) | (0<<PORTA3) | (0<<PORTA2) | (0<<PORTA1) | (0<<PORTA0); // Port B initialization // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRB=(0<<DDB7) | (0<<DDB6) | (0<<DDB5) | (0<<DDB4) | (0<<DDB3) | (0<<DDB2) | (0<<DDB1) | (0<<DDB0); // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTB=(0<<PORTB7) | (0<<PORTB6) | (0<<PORTB5) | (0<<PORTB4) | (0<<PORTB3) | (0<<PORTB2) | (0<<PORTB1) | (0<<PORTB0); // Port C initialization // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRC=(0<<DDC7) | (0<<DDC6) | (0<<DDC5) | (0<<DDC4) | (0<<DDC3) | (0<<DDC2) | (0<<DDC1) | (0<<DDC0); // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTC=(0<<PORTC7) | (0<<PORTC6) | (0<<PORTC5) | (0<<PORTC4) | (0<<PORTC3) | (0<<PORTC2) | (0<<PORTC1) | (0<<PORTC0); // Port D initialization // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRD=(0<<DDD7) | (0<<DDD6) | (0<<DDD5) | (0<<DDD4) | (0<<DDD3) | (0<<DDD2) | (0<<DDD1) | (0<<DDD0); // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTD=(0<<PORTD7) | (0<<PORTD6) | (0<<PORTD5) | (0<<PORTD4) | (0<<PORTD3) | (0<<PORTD2) | (0<<PORTD1) | (0<<PORTD0); // Port E initialization // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRE=(0<<DDE7) | (0<<DDE6) | (0<<DDE5) | (0<<DDE4) | (0<<DDE3) | (0<<DDE2) | (0<<DDE1) | (0<<DDE0); // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTE=(0<<PORTE7) | (0<<PORTE6) | (0<<PORTE5) | (0<<PORTE4) | (0<<PORTE3) | (0<<PORTE2) | (0<<PORTE1) | (0<<PORTE0); // Port F initialization // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRF=(0<<DDF7) | (0<<DDF6) | (0<<DDF5) | (0<<DDF4) | (0<<DDF3) | (0<<DDF2) | (0<<DDF1) | (0<<DDF0); // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTF=(0<<PORTF7) | (0<<PORTF6) | (0<<PORTF5) | (0<<PORTF4) | (0<<PORTF3) | (0<<PORTF2) | (0<<PORTF1) | (0<<PORTF0); // Port G initialization // Function: Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRG=(0<<DDG5) | (0<<DDG4) | (0<<DDG3) | (0<<DDG2) | (0<<DDG1) | (0<<DDG0); // State: Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTG=(0<<PORTG5) | (0<<PORTG4) | (0<<PORTG3) | (0<<PORTG2) | (0<<PORTG1) | (0<<PORTG0); // Port H initialization // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRH=(0<<DDH7) | (0<<DDH6) | (0<<DDH5) | (0<<DDH4) | (0<<DDH3) | (0<<DDH2) | (0<<DDH1) | (0<<DDH0); // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTH=(0<<PORTH7) | (0<<PORTH6) | (0<<PORTH5) | (0<<PORTH4) | (0<<PORTH3) | (0<<PORTH2) | (0<<PORTH1) | (0<<PORTH0); // Port J initialization // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRJ=(0<<DDJ7) | (0<<DDJ6) | (0<<DDJ5) | (0<<DDJ4) | (0<<DDJ3) | (0<<DDJ2) | (0<<DDJ1) | (0<<DDJ0); // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTJ=(0<<PORTJ7) | (0<<PORTJ6) | (0<<PORTJ5) | (0<<PORTJ4) | (0<<PORTJ3) | (0<<PORTJ2) | (0<<PORTJ1) | (0<<PORTJ0); // Port K initialization // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRK=(0<<DDK7) | (0<<DDK6) | (0<<DDK5) | (0<<DDK4) | (0<<DDK3) | (0<<DDK2) | (0<<DDK1) | (0<<DDK0); // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTK=(0<<PORTK7) | (0<<PORTK6) | (0<<PORTK5) | (0<<PORTK4) | (0<<PORTK3) | (0<<PORTK2) | (0<<PORTK1) | (0<<PORTK0); // Port L initialization // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRL=(0<<DDL7) | (0<<DDL6) | (0<<DDL5) | (0<<DDL4) | (0<<DDL3) | (0<<DDL2) | (0<<DDL1) | (0<<DDL0); // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTL=(0<<PORTL7) | (0<<PORTL6) | (0<<PORTL5) | (0<<PORTL4) | (0<<PORTL3) | (0<<PORTL2) | (0<<PORTL1) | (0<<PORTL0); // Timer/Counter 0 initialization // Clock source: System Clock // Clock value: Timer 0 Stopped // Mode: Normal top=0xFF // OC0A output: Disconnected // OC0B output: Disconnected TCCR0A=(0<<COM0A1) | (0<<COM0A0) | (0<<COM0B1) | (0<<COM0B0) | (0<<WGM01) | (0<<WGM00); TCCR0B=(0<<WGM02) | (0<<CS02) | (0<<CS01) | (0<<CS00); TCNT0=0x00; OCR0A=0x00; OCR0B=0x00; // Timer/Counter 1 initialization // Clock source: System Clock // Clock value: Timer1 Stopped // Mode: Normal top=0xFFFF // OC1A output: Disconnected // OC1B output: Disconnected // OC1C output: Disconnected // Noise Canceler: Off // Input Capture on Falling Edge // Timer1 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off // Compare C Match Interrupt: Off TCCR1A=(0<<COM1A1) | (0<<COM1A0) | (0<<COM1B1) | (0<<COM1B0) | (0<<COM1C1) | (0<<COM1C0) | (0<<WGM11) | (0<<WGM10); TCCR1B=(0<<ICNC1) | (0<<ICES1) | (0<<WGM13) | (0<<WGM12) | (0<<CS12) | (0<<CS11) | (0<<CS10); TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; OCR1CH=0x00; OCR1CL=0x00; // Timer/Counter 2 initialization // Clock source: System Clock // Clock value: Timer2 Stopped // Mode: Normal top=0xFF // OC2A output: Disconnected // OC2B output: Disconnected ASSR=(0<<EXCLK) | (0<<AS2); TCCR2A=(0<<COM2A1) | (0<<COM2A0) | (0<<COM2B1) | (0<<COM2B0) | (0<<WGM21) | (0<<WGM20); TCCR2B=(0<<WGM22) | (0<<CS22) | (0<<CS21) | (0<<CS20); TCNT2=0x00; OCR2A=0x00; OCR2B=0x00; // Timer/Counter 3 initialization // Clock source: System Clock // Clock value: Timer3 Stopped // Mode: Normal top=0xFFFF // OC3A output: Disconnected // OC3B output: Disconnected // OC3C output: Disconnected // Noise Canceler: Off // Input Capture on Falling Edge // Timer3 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off // Compare C Match Interrupt: Off TCCR3A=(0<<COM3A1) | (0<<COM3A0) | (0<<COM3B1) | (0<<COM3B0) | (0<<COM3C1) | (0<<COM3C0) | (0<<WGM31) | (0<<WGM30); TCCR3B=(0<<ICNC3) | (0<<ICES3) | (0<<WGM33) | (0<<WGM32) | (0<<CS32) | (0<<CS31) | (0<<CS30); TCNT3H=0x00; TCNT3L=0x00; ICR3H=0x00; ICR3L=0x00; OCR3AH=0x00; OCR3AL=0x00; OCR3BH=0x00; OCR3BL=0x00; OCR3CH=0x00; OCR3CL=0x00; // Timer/Counter 4 initialization // Clock source: System Clock // Clock value: Timer4 Stopped // Mode: Normal top=0xFFFF // OC4A output: Disconnected // OC4B output: Disconnected // OC4C output: Disconnected // Noise Canceler: Off // Input Capture on Falling Edge // Timer4 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off // Compare C Match Interrupt: Off TCCR4A=(0<<COM4A1) | (0<<COM4A0) | (0<<COM4B1) | (0<<COM4B0) | (0<<COM4C1) | (0<<COM4C0) | (0<<WGM41) | (0<<WGM40); TCCR4B=(0<<ICNC4) | (0<<ICES4) | (0<<WGM43) | (0<<WGM42) | (0<<CS42) | (0<<CS41) | (0<<CS40); TCNT4H=0x00; TCNT4L=0x00; ICR4H=0x00; ICR4L=0x00; OCR4AH=0x00; OCR4AL=0x00; OCR4BH=0x00; OCR4BL=0x00; OCR4CH=0x00; OCR4CL=0x00; // Timer/Counter 5 initialization // Clock source: System Clock // Clock value: Timer5 Stopped // Mode: Normal top=0xFFFF // OC5A output: Disconnected // OC5B output: Disconnected // OC5C output: Disconnected // Noise Canceler: Off // Input Capture on Falling Edge // Timer5 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off // Compare C Match Interrupt: Off TCCR5A=(0<<COM5A1) | (0<<COM5A0) | (0<<COM5B1) | (0<<COM5B0) | (0<<COM5C1) | (0<<COM5C0) | (0<<WGM51) | (0<<WGM50); TCCR5B=(0<<ICNC5) | (0<<ICES5) | (0<<WGM53) | (0<<WGM52) | (0<<CS52) | (0<<CS51) | (0<<CS50); TCNT5H=0x00; TCNT5L=0x00; ICR5H=0x00; ICR5L=0x00; OCR5AH=0x00; OCR5AL=0x00; OCR5BH=0x00; OCR5BL=0x00; OCR5CH=0x00; OCR5CL=0x00; // Timer/Counter 0 Interrupt(s) initialization TIMSK0=(0<<OCIE0B) | (0<<OCIE0A) | (0<<TOIE0); // Timer/Counter 1 Interrupt(s) initialization TIMSK1=(0<<ICIE1) | (0<<OCIE1C) | (0<<OCIE1B) | (0<<OCIE1A) | (0<<TOIE1); // Timer/Counter 2 Interrupt(s) initialization TIMSK2=(0<<OCIE2B) | (0<<OCIE2A) | (0<<TOIE2); // Timer/Counter 3 Interrupt(s) initialization TIMSK3=(0<<ICIE3) | (0<<OCIE3C) | (0<<OCIE3B) | (0<<OCIE3A) | (0<<TOIE3); // Timer/Counter 4 Interrupt(s) initialization TIMSK4=(0<<ICIE4) | (0<<OCIE4C) | (0<<OCIE4B) | (0<<OCIE4A) | (0<<TOIE4); // Timer/Counter 5 Interrupt(s) initialization TIMSK5=(0<<ICIE5) | (0<<OCIE5C) | (0<<OCIE5B) | (0<<OCIE5A) | (0<<TOIE5); // External Interrupt(s) initialization // INT0: Off // INT1: Off // INT2: Off // INT3: Off // INT4: Off // INT5: Off // INT6: Off // INT7: Off EICRA=(0<<ISC31) | (0<<ISC30) | (0<<ISC21) | (0<<ISC20) | (0<<ISC11) | (0<<ISC10) | (0<<ISC01) | (0<<ISC00); EICRB=(0<<ISC71) | (0<<ISC70) | (0<<ISC61) | (0<<ISC60) | (0<<ISC51) | (0<<ISC50) | (0<<ISC41) | (0<<ISC40); EIMSK=(0<<INT7) | (0<<INT6) | (0<<INT5) | (0<<INT4) | (0<<INT3) | (0<<INT2) | (0<<INT1) | (0<<INT0); // PCINT0 interrupt: Off // PCINT1 interrupt: Off // PCINT2 interrupt: Off // PCINT3 interrupt: Off // PCINT4 interrupt: Off // PCINT5 interrupt: Off // PCINT6 interrupt: Off // PCINT7 interrupt: Off // PCINT8 interrupt: Off // PCINT9 interrupt: Off // PCINT10 interrupt: Off // PCINT11 interrupt: Off // PCINT12 interrupt: Off // PCINT13 interrupt: Off // PCINT14 interrupt: Off // PCINT15 interrupt: Off // PCINT16 interrupt: Off // PCINT17 interrupt: Off // PCINT18 interrupt: Off // PCINT19 interrupt: Off // PCINT20 interrupt: Off // PCINT21 interrupt: Off // PCINT22 interrupt: Off // PCINT23 interrupt: Off PCMSK0=(0<<PCINT7) | (0<<PCINT6) | (0<<PCINT5) | (0<<PCINT4) | (0<<PCINT3) | (0<<PCINT2) | (0<<PCINT1) | (0<<PCINT0); PCMSK1=(0<<PCINT15) | (0<<PCINT14) | (0<<PCINT13) | (0<<PCINT12) | (0<<PCINT11) | (0<<PCINT10) | (0<<PCINT9) | (0<<PCINT8); PCMSK2=(0<<PCINT23) | (0<<PCINT22) | (0<<PCINT21) | (0<<PCINT20) | (0<<PCINT19) | (0<<PCINT18) | (0<<PCINT17) | (0<<PCINT16); PCICR=(0<<PCIE2) | (0<<PCIE1) | (0<<PCIE0); // USART0 initialization // USART0 disabled UCSR0B=(0<<RXCIE0) | (0<<TXCIE0) | (0<<UDRIE0) | (0<<RXEN0) | (0<<TXEN0) | (0<<UCSZ02) | (0<<RXB80) | (0<<TXB80); // USART1 initialization // USART1 disabled UCSR1B=(0<<RXCIE1) | (0<<TXCIE1) | (0<<UDRIE1) | (0<<RXEN1) | (0<<TXEN1) | (0<<UCSZ12) | (0<<RXB81) | (0<<TXB81); // USART2 initialization // USART2 disabled UCSR2B=(0<<RXCIE2) | (0<<TXCIE2) | (0<<UDRIE2) | (0<<RXEN2) | (0<<TXEN2) | (0<<UCSZ22) | (0<<RXB82) | (0<<TXB82); // USART3 initialization // USART3 disabled UCSR3B=(0<<RXCIE3) | (0<<TXCIE3) | (0<<UDRIE3) | (0<<RXEN3) | (0<<TXEN3) | (0<<UCSZ32) | (0<<RXB83) | (0<<TXB83); // Analog Comparator initialization // Analog Comparator: Off // The Analog Comparator's positive input is // connected to the AIN0 pin // The Analog Comparator's negative input is // connected to the AIN1 pin ACSR=(1<<ACD) | (0<<ACBG) | (0<<ACO) | (0<<ACI) | (0<<ACIE) | (0<<ACIC) | (0<<ACIS1) | (0<<ACIS0); ADCSRB=(0<<ACME); // Digital input buffer on AIN0: On // Digital input buffer on AIN1: On DIDR1=(0<<AIN0D) | (0<<AIN1D); // ADC initialization // ADC disabled ADCSRA=(0<<ADEN) | (0<<ADSC) | (0<<ADATE) | (0<<ADIF) | (0<<ADIE) | (0<<ADPS2) | (0<<ADPS1) | (0<<ADPS0); // SPI initialization // SPI disabled SPCR=(0<<SPIE) | (0<<SPE) | (0<<DORD) | (0<<MSTR) | (0<<CPOL) | (0<<CPHA) | (0<<SPR1) | (0<<SPR0); // TWI initialization // TWI disabled TWCR=(0<<TWEA) | (0<<TWSTA) | (0<<TWSTO) | (0<<TWEN) | (0<<TWIE); DDRB |= 1<<5; PORTB &= ~1<<5; while(1) { PORTB |= 1<<5; delay_ms(100);delay_ms(100);delay_ms(100); PORTB &= ~1<<5; delay_ms(100);delay_ms(100);delay_ms(100); PORTB |= 1<<5; while(1); } }
Вернуться наверх
vovik15
Заголовок сообщения: Re: Начальная конфигурация ATMEGA 2560
Добавлено: Вс май 13, 2018 16:37:31
Карма: 4
Рейтинг сообщений: 1
Зарегистрирован: Сб ноя 08, 2008 18:32:36Сообщений: 764
Рейтинг сообщения: 0
Вернуться наверх
Dimon456
Заголовок сообщения: Re: Начальная конфигурация ATMEGA 2560
Добавлено: Вс май 13, 2018 16:51:30
Карма: 20
Рейтинг сообщений: 145
Зарегистрирован: Вс дек 25, 2016 08:34:54Сообщений: 1849
Рейтинг сообщения: 0
Все равно перезапуск идет. Попробуйте выключить монитор питания BOODLEVEL 2.7V .
Вернуться наверх
vovik15
Заголовок сообщения: Re: Начальная конфигурация ATMEGA 2560
Добавлено: Вс май 13, 2018 17:03:12
Карма: 4
Рейтинг сообщений: 1
Зарегистрирован: Сб ноя 08, 2008 18:32:36Сообщений: 764
Рейтинг сообщения: 0
Я уже все повыключал,оставил только фьюз SPIEN, все то же самое. Интересное наблюдение,при изменении SUT_SKEL EXTXOSC _8MHZ_XX_16KCK_0MS EXTXOSC _8MHZ_XX_16KCK_4MS1 EXTXOSC _8MHZ_XX_16KCK_16MS светодиод мигает с разной скоростью
Вернуться наверх
Dimon456
Заголовок сообщения: Re: Начальная конфигурация ATMEGA 2560
Добавлено: Вс май 13, 2018 17:21:10
Карма: 20
Рейтинг сообщений: 145
Зарегистрирован: Вс дек 25, 2016 08:34:54Сообщений: 1849
Рейтинг сообщения: 0
Давайте еще раз попробуем, грузим вот эту прошивку
Вложение:
2560_2.rar [681 байт]
Скачиваний: 130
Спойлер Код:
/******************************************************* Project : Version : Date : 13.05.2018 Author : Company : Comments: Chip type : ATmega2560 Program type : Application AVR Core Clock frequency: 16,000000 MHz Memory model : Small External RAM size : 0 Data Stack size : 2048 *******************************************************/ #include <mega2560.h> #include <delay.h> // Declare your global variables here void main(void) { // Declare your local variables here // Crystal Oscillator division factor: 1 #pragma optsize- CLKPR=(1<<CLKPCE); CLKPR=(0<<CLKPCE) | (0<<CLKPS3) | (0<<CLKPS2) | (0<<CLKPS1) | (0<<CLKPS0); #ifdef _OPTIMIZE_SIZE_ #pragma optsize+ #endif // Input/Output Ports initialization // Port A initialization // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRA=(0<<DDA7) | (0<<DDA6) | (0<<DDA5) | (0<<DDA4) | (0<<DDA3) | (0<<DDA2) | (0<<DDA1) | (0<<DDA0); // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTA=(0<<PORTA7) | (0<<PORTA6) | (0<<PORTA5) | (0<<PORTA4) | (0<<PORTA3) | (0<<PORTA2) | (0<<PORTA1) | (0<<PORTA0); // Port B initialization // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRB=(0<<DDB7) | (0<<DDB6) | (0<<DDB5) | (0<<DDB4) | (0<<DDB3) | (0<<DDB2) | (0<<DDB1) | (0<<DDB0); // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTB=(0<<PORTB7) | (0<<PORTB6) | (0<<PORTB5) | (0<<PORTB4) | (0<<PORTB3) | (0<<PORTB2) | (0<<PORTB1) | (0<<PORTB0); // Port C initialization // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRC=(0<<DDC7) | (0<<DDC6) | (0<<DDC5) | (0<<DDC4) | (0<<DDC3) | (0<<DDC2) | (0<<DDC1) | (0<<DDC0); // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTC=(0<<PORTC7) | (0<<PORTC6) | (0<<PORTC5) | (0<<PORTC4) | (0<<PORTC3) | (0<<PORTC2) | (0<<PORTC1) | (0<<PORTC0); // Port D initialization // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRD=(0<<DDD7) | (0<<DDD6) | (0<<DDD5) | (0<<DDD4) | (0<<DDD3) | (0<<DDD2) | (0<<DDD1) | (0<<DDD0); // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTD=(0<<PORTD7) | (0<<PORTD6) | (0<<PORTD5) | (0<<PORTD4) | (0<<PORTD3) | (0<<PORTD2) | (0<<PORTD1) | (0<<PORTD0); // Port E initialization // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRE=(0<<DDE7) | (0<<DDE6) | (0<<DDE5) | (0<<DDE4) | (0<<DDE3) | (0<<DDE2) | (0<<DDE1) | (0<<DDE0); // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTE=(0<<PORTE7) | (0<<PORTE6) | (0<<PORTE5) | (0<<PORTE4) | (0<<PORTE3) | (0<<PORTE2) | (0<<PORTE1) | (0<<PORTE0); // Port F initialization // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRF=(0<<DDF7) | (0<<DDF6) | (0<<DDF5) | (0<<DDF4) | (0<<DDF3) | (0<<DDF2) | (0<<DDF1) | (0<<DDF0); // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTF=(0<<PORTF7) | (0<<PORTF6) | (0<<PORTF5) | (0<<PORTF4) | (0<<PORTF3) | (0<<PORTF2) | (0<<PORTF1) | (0<<PORTF0); // Port G initialization // Function: Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRG=(0<<DDG5) | (0<<DDG4) | (0<<DDG3) | (0<<DDG2) | (0<<DDG1) | (0<<DDG0); // State: Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTG=(0<<PORTG5) | (0<<PORTG4) | (0<<PORTG3) | (0<<PORTG2) | (0<<PORTG1) | (0<<PORTG0); // Port H initialization // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRH=(0<<DDH7) | (0<<DDH6) | (0<<DDH5) | (0<<DDH4) | (0<<DDH3) | (0<<DDH2) | (0<<DDH1) | (0<<DDH0); // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTH=(0<<PORTH7) | (0<<PORTH6) | (0<<PORTH5) | (0<<PORTH4) | (0<<PORTH3) | (0<<PORTH2) | (0<<PORTH1) | (0<<PORTH0); // Port J initialization // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRJ=(0<<DDJ7) | (0<<DDJ6) | (0<<DDJ5) | (0<<DDJ4) | (0<<DDJ3) | (0<<DDJ2) | (0<<DDJ1) | (0<<DDJ0); // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTJ=(0<<PORTJ7) | (0<<PORTJ6) | (0<<PORTJ5) | (0<<PORTJ4) | (0<<PORTJ3) | (0<<PORTJ2) | (0<<PORTJ1) | (0<<PORTJ0); // Port K initialization // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRK=(0<<DDK7) | (0<<DDK6) | (0<<DDK5) | (0<<DDK4) | (0<<DDK3) | (0<<DDK2) | (0<<DDK1) | (0<<DDK0); // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTK=(0<<PORTK7) | (0<<PORTK6) | (0<<PORTK5) | (0<<PORTK4) | (0<<PORTK3) | (0<<PORTK2) | (0<<PORTK1) | (0<<PORTK0); // Port L initialization // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRL=(0<<DDL7) | (0<<DDL6) | (0<<DDL5) | (0<<DDL4) | (0<<DDL3) | (0<<DDL2) | (0<<DDL1) | (0<<DDL0); // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTL=(0<<PORTL7) | (0<<PORTL6) | (0<<PORTL5) | (0<<PORTL4) | (0<<PORTL3) | (0<<PORTL2) | (0<<PORTL1) | (0<<PORTL0); // Timer/Counter 0 initialization // Clock source: System Clock // Clock value: Timer 0 Stopped // Mode: Normal top=0xFF // OC0A output: Disconnected // OC0B output: Disconnected TCCR0A=(0<<COM0A1) | (0<<COM0A0) | (0<<COM0B1) | (0<<COM0B0) | (0<<WGM01) | (0<<WGM00); TCCR0B=(0<<WGM02) | (0<<CS02) | (0<<CS01) | (0<<CS00); TCNT0=0x00; OCR0A=0x00; OCR0B=0x00; // Timer/Counter 1 initialization // Clock source: System Clock // Clock value: Timer1 Stopped // Mode: Normal top=0xFFFF // OC1A output: Disconnected // OC1B output: Disconnected // OC1C output: Disconnected // Noise Canceler: Off // Input Capture on Falling Edge // Timer1 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off // Compare C Match Interrupt: Off TCCR1A=(0<<COM1A1) | (0<<COM1A0) | (0<<COM1B1) | (0<<COM1B0) | (0<<COM1C1) | (0<<COM1C0) | (0<<WGM11) | (0<<WGM10); TCCR1B=(0<<ICNC1) | (0<<ICES1) | (0<<WGM13) | (0<<WGM12) | (0<<CS12) | (0<<CS11) | (0<<CS10); TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; OCR1CH=0x00; OCR1CL=0x00; // Timer/Counter 2 initialization // Clock source: System Clock // Clock value: Timer2 Stopped // Mode: Normal top=0xFF // OC2A output: Disconnected // OC2B output: Disconnected ASSR=(0<<EXCLK) | (0<<AS2); TCCR2A=(0<<COM2A1) | (0<<COM2A0) | (0<<COM2B1) | (0<<COM2B0) | (0<<WGM21) | (0<<WGM20); TCCR2B=(0<<WGM22) | (0<<CS22) | (0<<CS21) | (0<<CS20); TCNT2=0x00; OCR2A=0x00; OCR2B=0x00; // Timer/Counter 3 initialization // Clock source: System Clock // Clock value: Timer3 Stopped // Mode: Normal top=0xFFFF // OC3A output: Disconnected // OC3B output: Disconnected // OC3C output: Disconnected // Noise Canceler: Off // Input Capture on Falling Edge // Timer3 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off // Compare C Match Interrupt: Off TCCR3A=(0<<COM3A1) | (0<<COM3A0) | (0<<COM3B1) | (0<<COM3B0) | (0<<COM3C1) | (0<<COM3C0) | (0<<WGM31) | (0<<WGM30); TCCR3B=(0<<ICNC3) | (0<<ICES3) | (0<<WGM33) | (0<<WGM32) | (0<<CS32) | (0<<CS31) | (0<<CS30); TCNT3H=0x00; TCNT3L=0x00; ICR3H=0x00; ICR3L=0x00; OCR3AH=0x00; OCR3AL=0x00; OCR3BH=0x00; OCR3BL=0x00; OCR3CH=0x00; OCR3CL=0x00; // Timer/Counter 4 initialization // Clock source: System Clock // Clock value: Timer4 Stopped // Mode: Normal top=0xFFFF // OC4A output: Disconnected // OC4B output: Disconnected // OC4C output: Disconnected // Noise Canceler: Off // Input Capture on Falling Edge // Timer4 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off // Compare C Match Interrupt: Off TCCR4A=(0<<COM4A1) | (0<<COM4A0) | (0<<COM4B1) | (0<<COM4B0) | (0<<COM4C1) | (0<<COM4C0) | (0<<WGM41) | (0<<WGM40); TCCR4B=(0<<ICNC4) | (0<<ICES4) | (0<<WGM43) | (0<<WGM42) | (0<<CS42) | (0<<CS41) | (0<<CS40); TCNT4H=0x00; TCNT4L=0x00; ICR4H=0x00; ICR4L=0x00; OCR4AH=0x00; OCR4AL=0x00; OCR4BH=0x00; OCR4BL=0x00; OCR4CH=0x00; OCR4CL=0x00; // Timer/Counter 5 initialization // Clock source: System Clock // Clock value: Timer5 Stopped // Mode: Normal top=0xFFFF // OC5A output: Disconnected // OC5B output: Disconnected // OC5C output: Disconnected // Noise Canceler: Off // Input Capture on Falling Edge // Timer5 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off // Compare C Match Interrupt: Off TCCR5A=(0<<COM5A1) | (0<<COM5A0) | (0<<COM5B1) | (0<<COM5B0) | (0<<COM5C1) | (0<<COM5C0) | (0<<WGM51) | (0<<WGM50); TCCR5B=(0<<ICNC5) | (0<<ICES5) | (0<<WGM53) | (0<<WGM52) | (0<<CS52) | (0<<CS51) | (0<<CS50); TCNT5H=0x00; TCNT5L=0x00; ICR5H=0x00; ICR5L=0x00; OCR5AH=0x00; OCR5AL=0x00; OCR5BH=0x00; OCR5BL=0x00; OCR5CH=0x00; OCR5CL=0x00; // Timer/Counter 0 Interrupt(s) initialization TIMSK0=(0<<OCIE0B) | (0<<OCIE0A) | (0<<TOIE0); // Timer/Counter 1 Interrupt(s) initialization TIMSK1=(0<<ICIE1) | (0<<OCIE1C) | (0<<OCIE1B) | (0<<OCIE1A) | (0<<TOIE1); // Timer/Counter 2 Interrupt(s) initialization TIMSK2=(0<<OCIE2B) | (0<<OCIE2A) | (0<<TOIE2); // Timer/Counter 3 Interrupt(s) initialization TIMSK3=(0<<ICIE3) | (0<<OCIE3C) | (0<<OCIE3B) | (0<<OCIE3A) | (0<<TOIE3); // Timer/Counter 4 Interrupt(s) initialization TIMSK4=(0<<ICIE4) | (0<<OCIE4C) | (0<<OCIE4B) | (0<<OCIE4A) | (0<<TOIE4); // Timer/Counter 5 Interrupt(s) initialization TIMSK5=(0<<ICIE5) | (0<<OCIE5C) | (0<<OCIE5B) | (0<<OCIE5A) | (0<<TOIE5); // External Interrupt(s) initialization // INT0: Off // INT1: Off // INT2: Off // INT3: Off // INT4: Off // INT5: Off // INT6: Off // INT7: Off EICRA=(0<<ISC31) | (0<<ISC30) | (0<<ISC21) | (0<<ISC20) | (0<<ISC11) | (0<<ISC10) | (0<<ISC01) | (0<<ISC00); EICRB=(0<<ISC71) | (0<<ISC70) | (0<<ISC61) | (0<<ISC60) | (0<<ISC51) | (0<<ISC50) | (0<<ISC41) | (0<<ISC40); EIMSK=(0<<INT7) | (0<<INT6) | (0<<INT5) | (0<<INT4) | (0<<INT3) | (0<<INT2) | (0<<INT1) | (0<<INT0); // PCINT0 interrupt: Off // PCINT1 interrupt: Off // PCINT2 interrupt: Off // PCINT3 interrupt: Off // PCINT4 interrupt: Off // PCINT5 interrupt: Off // PCINT6 interrupt: Off // PCINT7 interrupt: Off // PCINT8 interrupt: Off // PCINT9 interrupt: Off // PCINT10 interrupt: Off // PCINT11 interrupt: Off // PCINT12 interrupt: Off // PCINT13 interrupt: Off // PCINT14 interrupt: Off // PCINT15 interrupt: Off // PCINT16 interrupt: Off // PCINT17 interrupt: Off // PCINT18 interrupt: Off // PCINT19 interrupt: Off // PCINT20 interrupt: Off // PCINT21 interrupt: Off // PCINT22 interrupt: Off // PCINT23 interrupt: Off PCMSK0=(0<<PCINT7) | (0<<PCINT6) | (0<<PCINT5) | (0<<PCINT4) | (0<<PCINT3) | (0<<PCINT2) | (0<<PCINT1) | (0<<PCINT0); PCMSK1=(0<<PCINT15) | (0<<PCINT14) | (0<<PCINT13) | (0<<PCINT12) | (0<<PCINT11) | (0<<PCINT10) | (0<<PCINT9) | (0<<PCINT8); PCMSK2=(0<<PCINT23) | (0<<PCINT22) | (0<<PCINT21) | (0<<PCINT20) | (0<<PCINT19) | (0<<PCINT18) | (0<<PCINT17) | (0<<PCINT16); PCICR=(0<<PCIE2) | (0<<PCIE1) | (0<<PCIE0); // USART0 initialization // USART0 disabled UCSR0B=(0<<RXCIE0) | (0<<TXCIE0) | (0<<UDRIE0) | (0<<RXEN0) | (0<<TXEN0) | (0<<UCSZ02) | (0<<RXB80) | (0<<TXB80); // USART1 initialization // USART1 disabled UCSR1B=(0<<RXCIE1) | (0<<TXCIE1) | (0<<UDRIE1) | (0<<RXEN1) | (0<<TXEN1) | (0<<UCSZ12) | (0<<RXB81) | (0<<TXB81); // USART2 initialization // USART2 disabled UCSR2B=(0<<RXCIE2) | (0<<TXCIE2) | (0<<UDRIE2) | (0<<RXEN2) | (0<<TXEN2) | (0<<UCSZ22) | (0<<RXB82) | (0<<TXB82); // USART3 initialization // USART3 disabled UCSR3B=(0<<RXCIE3) | (0<<TXCIE3) | (0<<UDRIE3) | (0<<RXEN3) | (0<<TXEN3) | (0<<UCSZ32) | (0<<RXB83) | (0<<TXB83); // Analog Comparator initialization // Analog Comparator: Off // The Analog Comparator's positive input is // connected to the AIN0 pin // The Analog Comparator's negative input is // connected to the AIN1 pin ACSR=(1<<ACD) | (0<<ACBG) | (0<<ACO) | (0<<ACI) | (0<<ACIE) | (0<<ACIC) | (0<<ACIS1) | (0<<ACIS0); ADCSRB=(0<<ACME); // Digital input buffer on AIN0: On // Digital input buffer on AIN1: On DIDR1=(0<<AIN0D) | (0<<AIN1D); // ADC initialization // ADC disabled ADCSRA=(0<<ADEN) | (0<<ADSC) | (0<<ADATE) | (0<<ADIF) | (0<<ADIE) | (0<<ADPS2) | (0<<ADPS1) | (0<<ADPS0); // SPI initialization // SPI disabled SPCR=(0<<SPIE) | (0<<SPE) | (0<<DORD) | (0<<MSTR) | (0<<CPOL) | (0<<CPHA) | (0<<SPR1) | (0<<SPR0); // TWI initialization // TWI disabled TWCR=(0<<TWEA) | (0<<TWSTA) | (0<<TWSTO) | (0<<TWEN) | (0<<TWIE); // Watchdog Timer initialization // Watchdog Timer Prescaler: OSC/1024k // Watchdog timeout action: Reset #pragma optsize- WDTCSR=(0<<WDIF) | (0<<WDIE) | (1<<WDP3) | (1<<WDCE) | (1<<WDE) | (0<<WDP2) | (0<<WDP1) | (1<<WDP0); WDTCSR=(0<<WDIF) | (0<<WDIE) | (1<<WDP3) | (0<<WDCE) | (1<<WDE) | (0<<WDP2) | (0<<WDP1) | (1<<WDP0); #ifdef _OPTIMIZE_SIZE_ #pragma optsize+ #endif DDRB |= 1<<5; PORTB &= ~1<<5; while(1) { PORTB |= 1<<5; delay_ms(100);delay_ms(100);delay_ms(100); PORTB &= ~1<<5; delay_ms(100);delay_ms(100);delay_ms(100); PORTB |= 1<<5; while(1){ #asm("wdr") // здесь сброс Watchdog } } }
Использован Watchdog.
Вернуться наверх
vovik15
Заголовок сообщения: Re: Начальная конфигурация ATMEGA 2560
Добавлено: Вс май 13, 2018 17:25:21
Карма: 4
Рейтинг сообщений: 1
Зарегистрирован: Сб ноя 08, 2008 18:32:36Сообщений: 764
Рейтинг сообщения: 0
Толи лыжы не едут,толи я ... но когда я подключил другую ардуино (уно) и считал с нее фьюзы, посмотрел как там, и подключил назад мегу, программатор стал записывать прошивку заметно дольше,и все заработало как положено. Кстати программатор AVRISP MK2 новый китайский, до этого не разу не использовался. Вот что там было нетак?
Вернуться наверх
BOB51
Заголовок сообщения: Re: Начальная конфигурация ATMEGA 2560
Добавлено: Пн май 14, 2018 08:51:27
Друг Кота
Карма: 93
Рейтинг сообщений: 1351
Зарегистрирован: Вт мар 16, 2010 22:02:27Сообщений: 14063Откуда: ДОНЕЦК
Рейтинг сообщения: 3
Вообще-то или работаем с ардуино в рамках прилагаемой к оным изделиям IDE
или
создаем свою схему "с нуля" и заряжаем ее собственным софтом (под ассемблером, Си или чего ешшо выдумаем).
А делать гибрид ... = пригласить на откорм БЕЛОГО И ПУШИСТОГО (ПЕСЕЦ который).
Вернуться наверх
Мурик
Заголовок сообщения: Re: Начальная конфигурация ATMEGA 2560
Добавлено: Пн май 14, 2018 11:07:11
Друг Кота
Карма: 1
Рейтинг сообщений: 157
Зарегистрирован: Пн окт 11, 2010 19:00:08Сообщений: 3328
Рейтинг сообщения: 0
BOB51 , хотите казать что для платы Arduino 2560 можно писать программу только в Arduino IDE?
Вернуться наверх
BOB51
Заголовок сообщения: Re: Начальная конфигурация ATMEGA 2560
Добавлено: Пн май 14, 2018 11:48:02
Друг Кота
Карма: 93
Рейтинг сообщений: 1351
Зарегистрирован: Вт мар 16, 2010 22:02:27Сообщений: 14063Откуда: ДОНЕЦК
Рейтинг сообщения: 3
Можно ВСЕ чего захочется, но смысла в таком действии значительно меньше, чем в самостоятельном изготовлении устройства на отдельной оптимально разработанной под конкретную задачу платке.
Вернуться наверх
vovik15
Заголовок сообщения: Re: Начальная конфигурация ATMEGA 2560
Добавлено: Ср май 16, 2018 10:20:23
Карма: 4
Рейтинг сообщений: 1
Зарегистрирован: Сб ноя 08, 2008 18:32:36Сообщений: 764
Рейтинг сообщения: 0
это просто прототип.Мега выбранна только из за нужного мне контроллера.Среду ардуино я не намерен использовать.В дальнейшем будет своя печатка,и все будет как положенно
Вернуться наверх
Страница 1 из 1
[ Сообщений: 19 ]
Кто сейчас на форуме
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 14
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения