Перейти к содержанию

Ну очень странное поведение ATmega2560


Vit@lik

Рекомендуемые сообщения

Здравствуйте, пишу программу на АТмега2560. И возникла очень странная проблема.
Код такой:

#define F_CPU 16000000

#include <avr/io.h>
#include <util/delay.h>
#include <avr/interrupt.h>
#include <stddef.h>
#include <math.h>
#include <avr/eeprom.h>
#include <avr/wdt.h>

//#include "timer.h"
//#include "Output_devices/status_led.h"

int main(void){
	cli();
	//status_led_init();
	DDRB |= (1<<PB6);
	//timer0_init();
	//timer2_init();
	TIMSK0 |= (1<<TOIE0); // enable timer 0 overflow interrupt
	TCCR0B |= (1<<CS00) |(1<<CS01); // set timer 0 prescaler factor to 64
	sei();
	
	PORTB |= (1<<PB6);
	_delay_ms(200);
	PORTB &= ~(1<<PB6);
	_delay_ms(200);
	PORTB |= (1<<PB6);
	_delay_ms(200);
	PORTB &= ~(1<<PB6);
	_delay_ms(200);
	PORTB |= (1<<PB6);
	_delay_ms(200);
	PORTB &= ~(1<<PB6);
	
    while (1) {		
	}//while1
	
}

Внешний кварц 16мгц на XTAL1 и XTAL2.
На заводских фюзах работает.
Но на фюзах взятых из арудино мега не работает. Светодиод на PB6 просто светится непрерывно. Но если закомментировать инициализацию таймера-0 работает. Как это? В чем проблема?

Screenshot_7.png

Screenshot_8.png

Изменено пользователем Vit@lik
Ссылка на комментарий
Поделиться на другие сайты

Сравнительное тестирование аккумуляторов EVE Energy и Samsung типоразмера 18650

Инженеры КОМПЭЛ провели сравнительное тестирование аккумуляторов EVE и Samsung популярного для бытовых и индустриальных применений типоразмера 18650. 

Для теста были выбраны аккумуляторы литий-никельмарганцевой системы: по два образца одного наименования каждого производителя – и протестированы на двух значениях тока разряда: 0,5 А и 2,5 А. Испытания проводились в нормальных условиях на электронной нагрузке EBD-USB от ZKEtech, а зарядка осуществлялась от лабораторного источника питания в режиме CC+CV в соответствии с рекомендациями в даташите на определенную модель. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Прерывание таймера разрешили, а самого тела прерывания нет. Поэтому происходит постоянный перезагруз МК. Сам светодиод включается при инициализации порта, далее первая же задержка не успевает отработать, как наступает событие прерывания. МК выбрасывает в таблицу прерываний за инструкцией перехода на обработчик, а его нет(!!!). Происходит смещение по куче NOP и МК попадает опять на начало программы, т.е. опять инициализация и включение светодиода... И так по кругу.

Ссылка на комментарий
Поделиться на другие сайты

Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. 

Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств. Подробнее параметры и результаты тестов новой серии PLM по ссылке.

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

5 часов назад, Геннадий сказал:

а самого тела прерывания нет

ISR(TIMER0_OVF_vect){
	/*
	timer0_millis += 1;
	timer0_fract += 3;
	if (timer0_fract >= 125) {
		timer0_fract -= 125;
		timer0_millis += 1;
	}
	timer0_overflow_count++;
	*/
}

Есть. Но это ни на что не влияло и ничего не изменило. Пытался включить светодиод в прерывании но он не включался такое впечатление что оно не вызвалось вообще.
Я перепробовал все варианты, прежде чем писать сюда.

Ссылка на комментарий
Поделиться на другие сайты

Литиевые батарейки и аккумуляторы от мирового лидера  EVE в Компэл

Компания Компэл, официальный дистрибьютор EVE Energy, бренда №1 по производству химических источников тока (ХИТ) в мире, предлагает продукцию EVE как со склада, так и под заказ. Компания EVE широко известна в странах Европы, Америки и Юго-Восточной Азии уже более 20 лет. Недавно EVE была объявлена поставщиком новых аккумуляторных элементов круглого формата для электрических моделей «нового класса» компании BMW.

Продукция EVE предназначена для самого широкого спектра применений – от бытового до промышленного. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

19 минут назад, korsaj сказал:

TCCR0A и TIFR0

а что с ними нужно делать? TIFR кажется сам выставляется. А в TCCR0A ничего не нужно настраивать

Ссылка на комментарий
Поделиться на другие сайты

А вы уверены что TCCR0A  после сброса мк будет равен 0 или в регистре TIFR0 не будет взведет какой нибудь флаг?

Спойлер


 

.cseg
.org	0
	rjmp	Start	; Ïåðåõîä íà Start ïî ñáðîñó

.org	OVF0addr	; Timer/Counter0 Overflow
	rjmp	Timer0Ovf
;----------------------------------------------------
Timer0Ovf:
	inc		r16
	cpi		r16, 0x14
	brne	ExirTimer0Ovf
	clr		r16
		
	sbic	PORTB, PB0
	rjmp	ClrPortbit
	sbi		PORTB, PB0
	reti

ClrPortbit:
	cbi		PORTB, PB0
ExirTimer0Ovf:
	reti

;----------------------------------------------------
Start:
	ldi		r16, 0
	out		PORTB, r16

	ldi		r16, 0xFF
	out		DDRB, r16

	ldi		r16, 0
	out		TCCR0A, r16

	ldi		r16, (1<<CS00) |(1<<CS01)
	out		TCCR0B, r16

	ldi		r16, 1<<TOIE0
	sts		TIMSK0, r16

	ldi		r16, 0xFF	
	out		TIFR0, r16

	clr		r16

	sei
;----------------------------------------------------
Loop:
	rjmp Loop
;----------------------------------------------------


 

Изменено пользователем korsaj
Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...