Atmega168 не могу понять почему не работает на ней программа

Обсуждаем контроллеры компании Atmel.
Ответить
Alex_ka
Нашел транзистор. Понюхал.
Сообщения: 193
Зарегистрирован: Ср сен 04, 2019 17:59:23
Откуда: Гомель

Atmega168 не могу понять почему не работает на ней программа

Сообщение Alex_ka »

Есть вот такая программа. Порты выставлены, все остальное по нулям, необходимое прописано в бесконечном цикле. На тине 2313 и атмеге 8 это работает меняя значение а-необходимоя частота, получаем на выходе нужную частоту. А на 168 значение а-необходимая частота при смене, на выходе ничего не меняется и на первоначальном этапе выдаёт не ту частоту, не смотря, что В TCCR0 и TCCR2 выбираю стс и все остальное в программе подкорректировано под TCCR0 или TCCR2, но меняя значение "а"" частота не меняется.
Пример:
#include <tiny2313a.h>
flash unsigned char byte [] = {3, 3, 2, 2};
Дальше порты выставлены, все остальное нули
OCR1A = OCR1B = 0x00FF;
while(1)
{
unsigned long a = 275; // необходимая частота {(Гц)
unsigned long c = OCR1A ;
unsigned long d = 1;
unsigned long F_PU = 8005000;
char i;
c = (F_PU / a / 2);
for (i = 0; i < 4; i++)
{
if (c > 65536) {
d <<= byte;
c = (F_PU / a / 2 / d);
}
TCCR1B = (i + 1) | (1 << WGM12);
break;
}
}
OCR1A = c - 1; TCCR1A |= (1 << COM1A0);
TCCR1A |= (1 << COM1B0);
}
}

Подскажите пожалуйста, что не так в атмеге 168, я сообразить не могу. Почему меняя значение "а" не меняется частота, пусть бы менялась но не соответствовала, так нет, висит одна и та же постоянно, какое бы значение не присвоил.
Adrift
Вымогатель припоя
Сообщения: 539
Зарегистрирован: Вт окт 01, 2024 15:22:33

Re: Atmega168 не могу понять почему не работает на ней прогр

Сообщение Adrift »

Почему в примере для mega168 подключается хедер от tiny2313? И break непонятный в цикле...

ps. Научитель нормально форматировать код, чтобы у кого-то вообще было желание его проверять. Это первое, а во-вторых, сейчас гораздо проще скинуть ваш пост целиком какому-нибудь копилоту и сразу получить ответ, а на форум идти уже в запущенных случаях )
OKF
Это не хвост, это антенна
Сообщения: 1383
Зарегистрирован: Вт июн 07, 2011 08:03:18

Re: Atmega168 не могу понять почему не работает на ней прогр

Сообщение OKF »

[uquote="Adrift",url="/forum/viewtopic.php?p=4775476#p4775476"]Почему...[/uquote]
Потому что руки с головой не дружат. Посмотрел хотя бы как код вставлять для начала.
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15541
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Atmega168 не могу понять почему не работает на ней прогр

Сообщение BOB51 »

Дык... Названия и расположение регистров могут "чуток отличаться"...
На то даташит и соответствующий файлик описания в лапки.
8)
Alex_ka
Нашел транзистор. Понюхал.
Сообщения: 193
Зарегистрирован: Ср сен 04, 2019 17:59:23
Откуда: Гомель

Re: Atmega168 не могу понять почему не работает на ней прогр

Сообщение Alex_ka »

Я же написал, что на одних контроллерах работает на другом 168 нет и указал, что в этой программе меняю на TCCR0 или OCR0 или 2 для 168. выход есть, но частота не меняется. А это как пример с контроллера на котором все работает. Я смотрю, некоторые здесь лишь человека в говно макнуть и показаться самым умным вместо того, чтобы помочь самоучке. Так я бы посмотрел, как вы могёте сделать без схемы ремонт блоков управления автомобилей и задефектовать и откапиталить двигатель машины своими руками, или у некоторых тоже руки с головой не дружат?
OKF
Это не хвост, это антенна
Сообщения: 1383
Зарегистрирован: Вт июн 07, 2011 08:03:18

Re: Atmega168 не могу понять почему не работает на ней прогр

Сообщение OKF »

А макнуть потому что не соизволишь код нормально вставить и внятно описать проблему. Код один, неработает другой... Или приятно с твоим говном разбираться?
Ремонтируешь машины - молодец! Ну так и здесь делай не тяп ляп, если хочешь помощи.
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15541
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Atmega168 не могу понять почему не работает на ней прогр

Сообщение BOB51 »

Ремонт электроники без схем или с частичным их отсутствием - это НОРМА для радиолюбителя.
Навыки "восстановления/днешифровки схем по монтажу/печатной плате" ...
8)
Просто надо понимание иметь о том, что у каждого МК могут быть отличия о коих только прочтение даташитам понимание даёт. Тинька 2313 это одно, мега 8 другое, а мега 48, 88, 168, 328 третье. Да и буковки в конце могут сильное различие нежданчиком подкинуть.. Без буковки или с буковакми (A, P, PB и...)
К примеру атмега328 и атмега328PB...
:wink:
Alex_ka
Нашел транзистор. Понюхал.
Сообщения: 193
Зарегистрирован: Ср сен 04, 2019 17:59:23
Откуда: Гомель

Re: Atmega168 не могу понять почему не работает на ней прогр

Сообщение Alex_ka »

[uquote="OKF",url="/forum/viewtopic.php?p=4775523#p4775523"]А макнуть потому что не соизволишь код нормально вставить и внятно описать проблему. Код один, неработает другой... Или приятно с твоим говном разбираться?
Ремонтируешь машины - молодец! Ну так и здесь делай не тяп ляп, если хочешь помощи.[/uquote]Тебя никто не заставляет разбираться. Не видишь это сразу взял и промолчал. Если мне, на автофорумах задают вопрос как проверить и найти, что неисправно механика или электроника, то я как говорят размажу до соплей, чтобы человек с малым уровнем знаний смог понять и проверить. Чувствуешь разницу между моим подходом к людям и своим?Я смотрю тебе сложно представить OCR0 и TCCR0 вместо TCCR1 и OCR1
OKF
Это не хвост, это антенна
Сообщения: 1383
Зарегистрирован: Вт июн 07, 2011 08:03:18

Re: Atmega168 не могу понять почему не работает на ней прогр

Сообщение OKF »

[uquote="Alex_ka",url="/forum/viewtopic.php?p=4775539#p4775539"]Я смотрю тебе сложно представить OCR0 и TCCR0 вместо TCCR1 и OCR1[/uquote]
Так это ж у тебя проблема. Вот и выложи всё на блюдечке, что бы людям не фантазировать что там у тебя в голове и что ты имел ввиду. А то ты помощи просишь, а при этом ещё и в позу становишься.
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15541
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Atmega168 не могу понять почему не работает на ней прогр

Сообщение BOB51 »

[uquote="Alex_ka",url="/forum/viewtopic.php?p=4775539#p4775539"]...Тебя никто не заставляет разбираться. Не видишь это сразу взял и промолчал. Если мне, на автофорумах задают вопрос как проверить и найти, что неисправно механика или электроника, то я как говорят размажу до соплей, чтобы человек с малым уровнем знаний смог понять и проверить. Чувствуешь разницу между моим подходом к людям и своим?Я смотрю тебе сложно представить OCR0 и TCCR0 вместо TCCR1 и OCR1[/uquote]
Плохо тут сходу и "перья дыбом"....
К Вашему же примеру с машинами_
У всех машинок есть движок, рулевое, трансмиссия , колеса и тормоза...
Но не факт, что они одинаково устроены, хотя называются одинаково и одинаковые фукнкции выполняют
вроде "мотор" и есть "мотор", "тормоз" и есть "тормоз" ... что там разные конструкции/дополнительные отличия "в мелочах" и принципах работы - то уже надо читатки соответствующие книжки...
И наверняка сначала слишком резвому начинающему дадут подобные подсказки, что выше сразу указаны были.
:wink:
Ответить

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