AVR Раздел по микроконтроллерам компании Atmel - AVR / ATtiny / ATmega / ATMega128 / ATxmega, вопросы по программированию в AVR studio и все, относящееся к AVR... |
22.12.2020, 20:49
|
|
Временная регистрация
Регистрация: 10.10.2011
Адрес: Донецк
Сообщений: 94
Сказал спасибо: 65
Сказали Спасибо 48 раз(а) в 13 сообщении(ях)
|
Re: Применение МК без кварца.
Сообщение от makakus
|
Как вы будете мерить частоту сети? У вас же есть осциллограф. Посмотрите на форму напряжения в сети. Это она ещё красивая! В заводском цеху можно увидеть такое...
Поскольку вам доступна и противоположная сторона, то можно сделать так. На той стороне, если приняли пакет (несколько пакетов подряд? ) с неправильным CRC посылают в обратку 2 символа BREAK калиброванной длины. АВРка без кварца от первого break получает флаг FE, настораживает таймер и прерывание по перепаду для измерения длины приходящего (второго) break. Считает поправку в OSCCAL (и/или UBRR?).
Или найти аппноты по авто-определению скорости. Как подстроить, когда долбят известным сообщением, понимаю. Как быстро определить скорость от 600 до 57К - не очень. Таймером?
|
Насчёт формы напряжения я очень даже в курсе.
Почти 9 лет занимаюсь стабилизацией напряжения. И девайс как раз предназначен для поддержания определенного уровня действующего напряжения. Поэтому там уже заложен подсчёт количества измерений АЦП за полупериод. С фильтрацией ложных определений переходов через ноль. А значит, существующей программе проще всего следить чтобы кол-во АЦП за полупериод было в пределах 95-97 штук. В случае выхода за пределы, увеличивать или уменьшать на единицу OSCCAL.
Ваш метод, конечно, более правильный. И даст более точную подстройку. Но для данного проекта в текущем аппаратном исполнении нет возможности его реализовать. На будущее буду иметь его ввиду.
|
|
|
|
22.12.2020, 21:32
|
|
Почётный гражданин KAZUS.RU
Регистрация: 08.10.2007
Сообщений: 2,760
Сказал спасибо: 1,106
Сказали Спасибо 1,037 раз(а) в 569 сообщении(ях)
|
Re: Применение МК без кварца.
Сообщение от SlovachevskyDV
|
там уже заложен подсчёт количества измерений АЦП за полупериод
|
Тогда конечно. Точность RS-ов должна быть 2%, а сеть держат гораздо точнее.
|
|
|
Сказали "Спасибо" makakus
|
|
|
22.12.2020, 23:28
|
|
Гражданин KAZUS.RU
Регистрация: 17.06.2008
Адрес: Украина
Сообщений: 683
Сказал спасибо: 362
Сказали Спасибо 757 раз(а) в 359 сообщении(ях)
|
Re: Применение МК без кварца.
USART в Мегах (8, 88 и т.п.) имеет еще и синхронный режим работы, правда,
требующий отдельной линии синхронизации XCK. Это так, к слову.
|
|
|
|
22.12.2020, 23:52
|
|
Гражданин KAZUS.RU
Регистрация: 16.06.2005
Сообщений: 943
Сказал спасибо: 25
Сказали Спасибо 174 раз(а) в 123 сообщении(ях)
|
Re: Применение МК без кварца.
Сообщение от SlovachevskyDV
|
Но для данного проекта в текущем аппаратном исполнении
|
Самое простое, для данного проекта, это
1) считать программатором калибровочный байт для РЦ8, и этим же программатором записать считанное значение на место калибровочного байта РЦ1. После ресета будет автоматически в OSCCAL считана "правильная" константа для РЦ8. Может быть вообще ничего подстраивать не прдётся.
2) определить реальную частоту работы контроллера, и прописать её в константу F_CPU. Компилятор вычислит правильные значения бауд, и, попутно, бонусом, все задержки (основанные на циклах, типа delay_ms(ххх) в авр гцц) станут "правильными". Правда значения для таймеров придётся скорректировать вручную.
|
|
|
|
23.12.2020, 00:03
|
|
Почётный гражданин KAZUS.RU
Регистрация: 08.10.2007
Сообщений: 2,760
Сказал спасибо: 1,106
Сказали Спасибо 1,037 раз(а) в 569 сообщении(ях)
|
Re: Применение МК без кварца.
Сообщение от Someone
|
считать программатором калибровочный байт для РЦ8, и этим же программатором
|
Вы так ничего и не поняли?
Проблема не в том, чтобы подогнать число в OSCCAL. Это элементарно делается осциллографом, парой кнопок и мааленькой программкой.
Проблема в том, что при +25° это число одно, а при -15° совсем другое. А кроме зимы бывает лето. И температура контроллера может сделаться +50°.
|
|
|
|
23.12.2020, 01:12
|
|
Гражданин KAZUS.RU
Регистрация: 16.06.2005
Сообщений: 943
Сказал спасибо: 25
Сказали Спасибо 174 раз(а) в 123 сообщении(ях)
|
Re: Применение МК без кварца.
Сообщение от makakus
|
Проблема в том, что при +25° это число одно, а при -15° совсем другое. А кроме зимы бывает лето. И температура контроллера может сделаться +50°.
|
https://kazus.ru/forums/showpost.php...1&postcount=42
Последний раз редактировалось Someone; 23.12.2020 в 01:16.
|
|
|
|
23.12.2020, 01:44
|
|
Почётный гражданин KAZUS.RU
Регистрация: 08.10.2007
Сообщений: 2,760
Сказал спасибо: 1,106
Сказали Спасибо 1,037 раз(а) в 569 сообщении(ях)
|
Re: Применение МК без кварца.
Я должен прочитать всю страницу?
|
|
|
|
23.12.2020, 10:46
|
|
Гражданин KAZUS.RU
Регистрация: 16.06.2005
Сообщений: 943
Сказал спасибо: 25
Сказали Спасибо 174 раз(а) в 123 сообщении(ях)
|
Re: Применение МК без кварца.
Сообщение от makakus
|
Я должен прочитать всю страницу?
|
А может стоит хотя бы попробовать щёлкнуть по ссылке? Вдруг откроется одно-единственное сообщение за номером 42?
|
|
|
|
23.12.2020, 11:18
|
|
Почётный гражданин KAZUS.RU
Регистрация: 20.03.2007
Адрес: "Братское кольцо враждебности", т.е. ближайшее заМКАДье.
Сообщений: 6,796
Сказал спасибо: 2,913
Сказали Спасибо 3,120 раз(а) в 2,111 сообщении(ях)
|
Re: Применение МК без кварца.
Сообщение от Someone
|
1) считать программатором калибровочный байт для РЦ8, и этим же программатором записать считанное значение на место калибровочного байта РЦ1. После ресета будет автоматически в OSCCAL считана "правильная" константа для РЦ8. Может быть вообще ничего подстраивать не прдётся.
|
Они пишутся на заводе и недоступны для записи пользователем. Только для чтения.
Сообщение от ForcePoint
|
Не проблема же считать программатором нужный и записать куда надо? ЕМНИП, в оболочке программирования через STK500 для этого аж отдельная галка была (укажите в какую память, по какому адресу и какое из значений записать).
|
Т.е. один раз при программировании переписать заводскую константу в EEPROM или Flash, читать её оттуда каждый раз при старте и записывать в OSCCAL. По типовому графику, при стабильном питании для 20 ± 40 °С - получается не хуже 4% (искомые ± 2). А там уж, хозяин - барин. Хочет - скорость обмена уменьшит, хочет - подстроит частоту.
P.S. Вот пример подстройки по посылке из 16 штук 0x80: http://fulcrum.ru/Support/art_Atmel_Loader.htm.
__________________
Экзорцист 40-го уровня.
|
|
|
|
23.12.2020, 18:16
|
|
Почётный гражданин KAZUS.RU
Регистрация: 08.10.2007
Сообщений: 2,760
Сказал спасибо: 1,106
Сказали Спасибо 1,037 раз(а) в 569 сообщении(ях)
|
Re: Применение МК без кварца.
Сообщение от Someone
|
А может стоит хотя бы попробовать щёлкнуть по ссылке?
|
Ваша беда в том, что вы думаете, что вы умный способный и красивый, а остальные ленивые уроды. Щёлкал я по ссылке. Видел всю страницу. Примерно догадался, что вы имеете в виду.
Форум вас спалил: "Последний раз редактировалось Someone; Сегодня в 00:16. " Подправили ссылку и вместо "извините" решили наехать? Некрасиво, любезный.
Если вы умеете дрессировать контроллера так, что он улучшает обещанные заводом характеристики, то почему вы ещё не директор микрочипа?
Разговор идёт о том, что без кварца частота уплывает, и как с этим бороться. Кстати, как вы можете объяснить, что у вас там в №42 "При скорости 38400 ... (10-15%), ... На 19200 за 3 часа ... пара сотен пакетов, а на 9200 битых пакетов - 0." ПО-моему это бред. Как ни дели частоту, если она уползла на 5%, то и поделённая уползёт ровно на те же проценты. Скорее всего, ваш приёмник - с кем вы там общались из термокамеры - не абсолютно точно делит свой генератор. Или как?
Нет, объяснение "я попробовал - у меня получилось" мне не подходит. Для себя это можно. Но советовать другим - нет.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 22:31.
|
|