СБОРКА ПРОГРАМАТОРА USBASP НА АТМЕГА32

Обсуждаем контроллеры компании Atmel.
Ответить
Первый раз сказал Мяу!
Сообщения: 33
Зарегистрирован: Пн дек 30, 2024 09:55:33

Сообщение СтасДимас22 »

доброго времени суток люди добрые помогите перекомпилировать прошивку под мегу16 или 32 собрал програматор изначально на мега16 переделал прошивку из под меги8 в месте с ChatGPT прошивается и верифицируется но комп пишет сбой дескриптора я сам не очень понимаю вэтом может сам чат не туда меня водит файлы прилагаю
Вложения
main.c
(5.54 КБ) 23 скачивания
isp.h
(1.56 КБ) 15 скачиваний
isp.c
(5.67 КБ) 15 скачиваний
clock.h
(663 байт) 16 скачиваний
clock.c
(549 байт) 16 скачиваний
Реклама
Первый раз сказал Мяу!
Сообщения: 33
Зарегистрирован: Пн дек 30, 2024 09:55:33

Сообщение СтасДимас22 »

добавляю
Вложения
eab510f5-821d-4aad-9bba-d1d55ab6e589.png
(220.28 КБ) 29 скачиваний
eab510f5-821d-4aad-9bba-d1d55ab6e589.png
(220.28 КБ) 20 скачиваний
Реклама
Это не хвост, это антенна
Сообщения: 1321
Зарегистрирован: Пт ноя 22, 2024 14:08:43

Сообщение Krismi70 »

видимо, ни у кого нет желания ходить по граблям, когда рядом ровная дорога.....
Первый раз сказал Мяу!
Сообщения: 33
Зарегистрирован: Пн дек 30, 2024 09:55:33

Сообщение СтасДимас22 »

пересобрал вроде все внимательно проверил все равно сбой дескриптора парни если кто может проверте пожалуйста
Вложения
clock.h
(675 байт) 18 скачиваний
usbconfig.h
(10.71 КБ) 18 скачиваний
main.c
(7.66 КБ) 16 скачиваний
Реклама
Эиком - электронные компоненты и радиодетали
Потрогал лапой паяльник
Сообщения: 398
Зарегистрирован: Чт май 07, 2026 00:30:38

Сообщение Zapolyarny »

Частота совпадает с указанной?
Реклама
Первый раз сказал Мяу!
Сообщения: 33
Зарегистрирован: Пн дек 30, 2024 09:55:33

Сообщение СтасДимас22 »

да вот именно что не могу проверить у меня ослик до 500кгц сейчас попробую написать програмку чтоб поделила частоту и залью попробую проверить
Реклама
OKF
Это не хвост, это антенна
Сообщения: 1430
Зарегистрирован: Вт июн 07, 2011 08:03:18

Сообщение OKF »

Обычно пишешь фоновый блинк и сразу всё видно.
Потрогал лапой паяльник
Сообщения: 398
Зарегистрирован: Чт май 07, 2026 00:30:38

Сообщение Zapolyarny »

СтасДимас22 писал(а): Вт июн 02, 2026 12:37:30 да вот именно что не могу проверить у меня ослик до 500кгц сейчас попробую написать програмку чтоб поделила частоту и залью попробую проверить
Но, вообще, по проекту, Ваш микроконтроллер тактируется от внешнего кварцевого резонатора 12 МГц и в настройках тоже установлено 12 МГц?

Мне кажется, Вам стоит выложить весь проект, а не часть заголовочных файлов. Вы считаете, что раз сбой дескриптора, то причина в его описании и выкладываете его, однако, причина может быть в том, что дескриптор не передаётся вообще. То есть, то, что Вы приложили ранее, может не иметь отношения к проблеме или лишь частично.
Первый раз сказал Мяу!
Сообщения: 33
Зарегистрирован: Пн дек 30, 2024 09:55:33

Сообщение СтасДимас22 »

ДОБАВЛЯЮ
Вложения
IMG_20260602_180410.jpg
(119.39 КБ) 28 скачиваний
ПРОГ16.lay69.lay6
(84.01 КБ) 15 скачиваний
ЛЛЛЛЛ.png
(245.91 КБ) 22 скачивания
Потрогал лапой паяльник
Сообщения: 398
Зарегистрирован: Чт май 07, 2026 00:30:38

Сообщение Zapolyarny »

Насколько я вижу, общая точка конденсаторов кварца имеет сомнительную правильность подключения к земле. Она не должна использоваться как земля для других компонентов. Не то, чтобы это не работало, но вероятность неустойчивой работы высока.
Но под полным проектом я имел ввиду всё же полный проект.
Первый раз сказал Мяу!
Сообщения: 33
Зарегистрирован: Пн дек 30, 2024 09:55:33

Сообщение СтасДимас22 »

Я заливал простую прогу для трёх ледов чтобы с задержкой горели led1 200ms led2 800ms led3 1.2s чтобы визуально было видно вывод кварц рабочий или возможно он дает какуюто погрешность
Первый раз сказал Мяу!
Сообщения: 33
Зарегистрирован: Пн дек 30, 2024 09:55:33

Сообщение СтасДимас22 »

Zapolyarny писал(а): Вт июн 02, 2026 15:53:08
СтасДимас22 писал(а): Вт июн 02, 2026 12:37:30 да вот именно что не могу проверить у меня ослик до 500кгц сейчас попробую написать програмку чтоб поделила частоту и залью попробую проверить
Но, вообще, по проекту, Ваш микроконтроллер тактируется от внешнего кварцевого резонатора 12 МГц и в настройках тоже установлено 12 МГц?

Мне кажется, Вам стоит выложить весь проект, а не часть заголовочных файлов. Вы считаете, что раз сбой дескриптора, то причина в его описании и выкладываете его, однако, причина может быть в том, что дескриптор не передаётся вообще. То есть, то, что Вы приложили ранее, может не иметь отношения к проблеме или лишь частично.
так из исходников же видно как собран hex я просто попросил если есть понимаюшие проверить если чтото не правильно то пнуть в нужном направлении только не слишком сильно
Первый раз сказал Мяу!
Сообщения: 33
Зарегистрирован: Пн дек 30, 2024 09:55:33

Сообщение СтасДимас22 »

Zapolyarny писал(а): Вт июн 02, 2026 16:32:15 Насколько я вижу, общая точка конденсаторов кварца имеет сомнительную правильность подключения к земле. Она не должна использоваться как земля для других компонентов. Не то, чтобы это не работало, но вероятность неустойчивой работы высока.
Но под полным проектом я имел ввиду всё же полный проект.
подскажите пожалуйста а как они должны подключатся я так подключил потому что много схем пересмотрел везде у них общая земля
Потрогал лапой паяльник
Сообщения: 398
Зарегистрирован: Чт май 07, 2026 00:30:38

Сообщение Zapolyarny »

СтасДимас22 писал(а): Вт июн 02, 2026 17:13:46 так из исходников же видно как собран hex
мне не видно. Начало:
СтасДимас22 писал(а): Вс май 31, 2026 14:40:03 прошивку под мегу16 или 32 собрал програматор изначально на мега16 переделал прошивку из под меги8 в месте с ChatGPT
Я даже не совсем понял, что из чего. А уж где и в каком месте Вам насоветовал ИИ - тем более. Может быть, я просто не заметил, но никаких комментариев в коде "Изменил по совету ChatGPT" не увидел. И сравнивать мне не с чем - нет полного проекта, то есть, базовых и изменённых файлов.

Нормальная трассировка (для односторонней платы) кварца очень проста: кварц и нагрузочные конденсаторы должны стоять максимально близко к микроконтроллеру, в идеале - кварц с противоположной стороны или на высоте, конденсаторы на его же посадочном месте. Их земля должна идти на вывод 6 микроконтроллера и всё. С обратной стороны (то есть, под корпусом) вывод 6 соединяется со всеми остальными выводами земли и общей землёй вообще. Сейчас поищу картинку.
Первый раз сказал Мяу!
Сообщения: 33
Зарегистрирован: Пн дек 30, 2024 09:55:33

Сообщение СтасДимас22 »

вот основной исходник
Вложения
usbasp.2011-05-28 (1).tar.gz
(518.86 КБ) 26 скачиваний
Потрогал лапой паяльник
Сообщения: 398
Зарегистрирован: Чт май 07, 2026 00:30:38

Сообщение Zapolyarny »

https://caxapa.ru/lib/emc_immunity.html вот, там на Фиг. 6 показано. И вообще имеет смысл прочитать весь текст статьи, она написано легкодоступно и небольшая, но полезна.
Впрочем, как говорил выше, вряд ли это причина текущей проблемы, это может быть причиной нестабильности работы.
Потрогал лапой паяльник
Сообщения: 398
Зарегистрирован: Чт май 07, 2026 00:30:38

Сообщение Zapolyarny »

СтасДимас22 писал(а): Вт июн 02, 2026 17:41:59 вот основной исходник
В основном исходнике линии D- и D+ на PD2/PB1 и PB0, а Вы перенесли на PD2/PD2 и PD4, верно?

просто смущает написанное у Вас в main.c:

Код: Выделить всё

/* output SE0 for USB reset */
	DDRB = ~0;
DDRB уже ведь не имеет отношения к USB? Перепроверьте всё, что связано с переназначением выводов USB цепей.
Первый раз сказал Мяу!
Сообщения: 33
Зарегистрирован: Пн дек 30, 2024 09:55:33

Сообщение СтасДимас22 »

да правильно USB я пренёс на PORTD вот так должно быть D+=PD3,D+=PD2(INT0) D-=PD4 а DDRB = ~0; это совет чата , подскажите как надо сделать?
перенос юсб пришлось сделать потомучто плату развел по совету чата надо было сначала исходник почитать потом плату разводить
Потрогал лапой паяльник
Сообщения: 398
Зарегистрирован: Чт май 07, 2026 00:30:38

Сообщение Zapolyarny »

СтасДимас22 писал(а): Вт июн 02, 2026 19:01:49 подскажите как надо сделать?
Нарисовать схему. Смотреть по картинке печатной платы - так никто не делает. Даже две линии USB посмотреть тяжко, а уж все - нафиг. Есть прекрасные программы сквозного проектирования (исключает ошибки между схемой и платой), притом бесплатные и простые. Например, KiCad.

Попробуйте заменить тело main() на это:

Код: Выделить всё

int main(void) {
	uchar i, j;

	/* no pullups on USB and ISP pins */
	PORTD = 0;
	PORTB = 0;
	/* all outputs except PD2 = INT0 */
	DDRD = ~(1 << 2);

	/* output SE0 for USB reset */
	DDRD = ~0;
	j = 0;
	/* USB Reset by device only required on Watchdog Reset */
	while (--j) {
		i = 0;
		/* delay >10ms for USB reset */
		while (--i)
			;
	}
	/* all USB and ISP pins inputs */
	DDRB = 0;
        DDRD = 0;
        
	/* all inputs except PC0, PC1 */
	DDRC = 0x03;
	PORTC = 0xfe;

	/* init timer */
	clockInit();

	/* main event loop */
	usbInit();
	sei();
	for (;;) {
		usbPoll();
	}
	return 0;
}
а, и опять же, частота. Убедитесь, что микроконтроллер сконфигурирован на работу от внешнего кварца. А то он может от своего внутреннего живёт, он там вроде бы 16 МГц? Это было бы неприемлемо.
Первый раз сказал Мяу!
Сообщения: 33
Зарегистрирован: Пн дек 30, 2024 09:55:33

Сообщение СтасДимас22 »

СПАСИБО БОЛЬШОЕ Я ТАК DDRB = 0;
DDRD = 0; Я ТАК УЖЕ ДЕЛАЛ НЕ ПОМОГАЕТ УЖЕ И ПЛАТУ РАЗВЕЛ ПОД ОРИГИНАЛ В Makefile ЗАМЕНИЛ ТОЛЬКО ИМЯ МК И В КЛОК РЕГИСТР НЕ СОВПАДАЛ С 32 МЕГОЙ И ВСЕ БОЛЬШЕ НЕ ЧЕГО НЕ ТРОГАЛ ПЕРЕСОБРАЛ ХЕКС НУ ДУМАЮ НАВЕРНОЕ ВСЕ СЕЙЧАС УЖЕ А ШИШ ТАМ ОПЯТЬ СБОЙ
КСТАТИ СПАСИБО ЗА СТАТЬЮ ОЧЕНЬ ПОЛЕЗНАЯ ДА И ЗА ВСЕ СПАСИБО ПОПРОБУЮ НАЙТИ ИМЕННО ПОД 32 ИЛИ 16 МЕГУ
Ответить

Вернуться в «AVR»