О сайте Группа в контакте RSS Годограф Volksturm Импульсные металлоискатели IB металлоискатели Пинпоинтеры Другие схемы Заказать Конструкции металлоискателей Полезные ссылки

Схемы металлоискателей MD4U

Сборка, настройка, обсуждение, теория и практика построения металлоискателей.
Текущее время: Пт: 29 мар 2024 3:25

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему
 [ Сообщений: 14 ] 
Автор Сообщение
 Заголовок сообщения: Вопрос по Tiny
СообщениеДобавлено: Вт: 04 сен 2007 11:53 
Не в сети

Зарегистрирован: Чт: 10 май 2007 14:45
Сообщения: 16
Откуда: Таллин
Подскажите пожалуйста - как можно поменять частоту RC генератора в в Tiny15L.
Собственно проблема здесь http://md4u.ru/forum/viewtopic.php?t=1316

В подобных вопросах крайне не компетентен.
Знаю - что прописывается в программе. Но исходников нет. Посмотрел дизассемблером - строчки типа OSCCAL нет.
Можно что-то сделать?


Вернуться к началу
 Профиль  
 


Вы можете отключить эти сообщения.
 Заголовок сообщения:
СообщениеДобавлено: Ср: 05 сен 2007 16:45 
Не в сети

Зарегистрирован: Ср: 05 сен 2007 16:06
Сообщения: 6
Откуда: Орша
Поменять частоту можно немного подкоректировав прошивку. Возможно в вашем случае в OSCCAL ничего не записывалось и тини работает на случайной частоте. В даташите на данный контроллер производители некорректно описали назначение OSCCAL, в идеале в этот регистр надо прописывать это:
The ATtiny15L has a one-byte calibration value for the internal RC Oscillator. This byte resides in the high byte of address $000 in the signature address space. To make use of this byte, it should be read from this location and written into the normal Flash Program memory. At start-up, the user software must read this Flash location and write the value to the OSCCAL Register.

Выход- подбирать времянки записывая в OSCCAL значения от 0 до 255 до получения приемлимых характеристик.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср: 05 сен 2007 21:06 
Не в сети

Зарегистрирован: Чт: 10 май 2007 14:45
Сообщения: 16
Откуда: Таллин
Большое спасибо за подробности.
Можно ли где-то посмотреть пример как и где это правильно прописывается практически.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт: 06 сен 2007 13:03 
Не в сети

Зарегистрирован: Ср: 05 сен 2007 16:06
Сообщения: 6
Откуда: Орша
Примеров не знаю, в AVR Studio подгружаешь прошивку в дизассемблер, смотришь и ручками правишь в прошивке (любой HEX редактор) переход по сбросу (адрес 0000h)в свободное место, там дописываешь то что тебе надо и переход на адрес который указан по вектору сброса в оригинале. подсчёт контрольной суммы после правки прошивки на вашей совести.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт: 06 сен 2007 17:03 
Не в сети

Зарегистрирован: Чт: 10 май 2007 14:45
Сообщения: 16
Откуда: Таллин
Мде...
"Час от часу не легче"....
Столько новых слов узнал :?
Спасибо за наводку.
Пошел учиться...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт: 06 сен 2007 19:28 
Не в сети

Зарегистрирован: Ср: 05 сен 2007 16:06
Сообщения: 6
Откуда: Орша
Там в минимальном исполнении надо 3 команды дописать, шли прошивку, получишь назад подправленную и инструкции по пользованию. ( g r i d l e a k @ t u t . b y ) пробелы в мыле не нужны.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт: 07 сен 2007 0:37 
Не в сети

Зарегистрирован: Ср: 05 сен 2007 16:06
Сообщения: 6
Откуда: Орша
Так, там в прошивочке всё корректно программируется, вся беда в том, что калибровочный байт берётся из последней ячейки памяти программ, куда его (калибровку) записывает производитель, при стирании кристалла пользователем этот байт естественно переписывается на 0xFF изза этого и рождаются глюки.

Решение проблемы - прочитать калибровочный байт из сигнатуры проца и поместить его в последнем байте памяти программ и будет вам счастье.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт: 11 сен 2007 18:32 
Не в сети

Зарегистрирован: Чт: 10 май 2007 14:45
Сообщения: 16
Откуда: Таллин
Прошивка у Паштета умная. Сама считывает калибровку с нового МК. Но если МК стирался то на месте калибровки будет 0хFF а это максимально возможная частота (минимальная будет при 0х00). Поэтому и получил короткие импульсы.
Видимо программисты при написании прошивок для Тийни15 каждый раз вставляют код для переноса калибровки.
Бился несколько дней так и не смог откорректировать прошивку. :?
Т.к. Тийни применен SMD не стал его выпаивать. Прочитал новый, другой МК и полученное залил в свой. Потом прошивку Скифа сверху. Полегчало.
Импульс на IRF получился 160 мкс (уже не плохо). :)
Кому надо образ нового, чистого тийни15 обращайтесь. :D
Интересно, дамп из нового МК с калибровками корректировать так-же сложно как и прошивку или проще (чек суммы и всё такое)?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт: 11 сен 2007 21:31 
Не в сети

Зарегистрирован: Ср: 05 сен 2007 16:06
Сообщения: 6
Откуда: Орша
У каждого тини15 значение калибровочного байта для заданной частоты отличается, поэтому нету смысла копировать это число с другого микроконтроллера, ещё раз повторяю, калибровочная константа ДЛЯ КАЖДОГО ТИНИ15 ХРАНИТСЯ у него самого В НЕСТИРАЕМОЙ области СИГНАТУР, вот кусочек лог-файла утилитки AVREAL, предназначенной для программирования АВР-ов:

Device connected, TINY12 detected
% ReadOsccal command 0x38000000
% ReadOsccal reply 0x0038002E
% ReadFuses command 0x50000000
% ReadFuses reply 0x0050005F
Fuses
OSCCAL = 2E
BLEV = 0
BODEN = 1
SPIEN = 0
RSTDSBL = 1
CKSEL = F

Замечу, перед этим тини12 (в плане калибровок аналогичен тини15)стирался несколько раз, значение OSCCAL = 2E никуда не исчезло.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт: 11 сен 2007 21:49 
Не в сети

Зарегистрирован: Чт: 10 май 2007 14:45
Сообщения: 16
Откуда: Таллин
Ошибку понял - не исчезает.
Пони его показывает:


У вас нет необходимых прав для просмотра вложений в этом сообщении.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт: 11 сен 2007 22:37 
Не в сети

Зарегистрирован: Чт: 10 май 2007 14:45
Сообщения: 16
Откуда: Таллин
gridleak писал(а):
поместить его в последнем байте памяти программ и будет вам счастье.

Пробовал WinHex- ом не получается. Видимо что-то с чек суммой...


Вернуться к началу
 Профиль  
 
В сети

Вы можете отключить эти сообщения.
 Заголовок сообщения:
СообщениеДобавлено: Ср: 12 сен 2007 15:21 
Не в сети

Зарегистрирован: Ср: 05 сен 2007 16:06
Сообщения: 6
Откуда: Орша
так в самом понипроге и изменить, помоему пони позволяет редактировать прошивку.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср: 12 сен 2007 23:06 
Не в сети

Зарегистрирован: Чт: 10 май 2007 14:45
Сообщения: 16
Откуда: Таллин
Точно!
Пони редактирует и довольно удобно.
Ради эксперимента считал значение калибровки (из нестираемой области) стертого МК, вставил их в "hex-образ" из нового Тийни и прошил полученный hex в стертый МК. Получил как - бы новый чистый МК с заводскими калибровками в области программ.
Далее записал прошивку Скифа и получил длительности какие и должны быть(175мкс).
Делал всё через "образ" нового МК т.к. в его области программ кроме заводской калибровки ничего небыло и чек сумма видимо получалась равна просто значению этой калибровки(-65- на рисунке выше), что нельзя сказать о сумме прошивки Скифа. Где неправ поправьте - т.к. рассуждения совсем начинающего в этой области...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт: 14 сен 2007 13:27 
Не в сети

Зарегистрирован: Чт: 10 май 2007 14:45
Сообщения: 16
Откуда: Таллин
Платку ПониПрога рисовал в сптинте и прога на русском... если кому надо...
Платку можно и на сайте выложить, а-то там одни гифы...


У вас нет необходимых прав для просмотра вложений в этом сообщении.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 14 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron