Как определить частоту микроконтроллера?
- Войдите на сайт для отправки комментариев
Пт, 20/05/2016 - 10:10
Как определить частоту, на которую настроен микроконтроллер atmega328?
Как определить частоту, на которую настроен микроконтроллер atmega328?
...или микроконтроллер Atmega168, используемые как ардуино про мини.
Как определить частоту, на которую настроен микроконтроллер atmega328?
считать фьюзы
запустить скетч blink и замерить время горения, потом пересчитать в частоту
прикинуть плюс минус можно и с секундомером, а если есть логический анализатор, то измерить можно весьма точно
но кроме того если все детали исправные достаточно выяснить от чего тактируется МК, посмотреть фьюзы и будет и так понятно какая у него частота
Клапауций 232, А можно ссылку на поподробнее, как читать/писать фьюзы? Есть 2 ардуины и usb2ttl.
VID: 1A86
PID: 7523
это оно?
Клапауций 232, А можно ссылку на поподробнее, как читать/писать фьюзы? Есть 2 ардуины и usb2ttl.
Фьюзы помогут узнать частоту лишь в широких пределах - у AVRок там разброс типа low-speed (до 4 МГц),medium-speed (4-8МГц) , high-speed (от 8 МГц).
Фьюзы помогут узнать частоту лишь в широких пределах - у AVRок там разброс типа low-speed (до 4 МГц),medium-speed (4-8МГц) , high-speed (от 8 МГц).
При тактировании от кварца смотрим на кварц и все ясно. При тактировании от RC фьюзы показывают частоту явно
Та я хочу наглядно посмотреть, как работает с кварцом 16 МГц, затем заменить его на 20 - и наглядно посмотреть на прирост.
То есть, помигать светодиодом - тоже подойдёт, но нужно так мигать, чтобы были заметны различия при видеосъемке в 30 фпс.
1. Моргаешь диодом, подбираешь частоту так, чтобы моргания видно не было. (примерно 1 раз в 33 мс)
2. меняешь кварц. Миллисекунда стала короче, "новых" мс между морганиями уложится больше.
3. подбираешь частоту снова (примерно 41 мс);
4. печатаешь на сериал разницу;
5. профит.
----
ЗЫ: я слышал про отдельные котлы в аду, для оверклокеров! Там кошмар! Волосы дыбом, ты не поверишь! Одно утешает - зависают часто...
nkk, Учтите, что бутлоадер не будет работать на другой частоте.
Можно написать программу. В меге есть одно устройство, которое тактируется индивидуально от своего RC-генератора это вотчдог. Можно запрограммировать вотчдог на прерывание раз в секунду, а один из таймеров запрограммировать что б например делил тактовую частоту на 1000, и инкременировал соответсвенно некую переменную 16000 раз в секунду( при кварце 16МГц) . В прерывании вотчдога измерять до скольки натикала переменная, это число *1000 и будет частотой кварца.
Дима! Меня заинтересовал вопрос - по какой причине бутлоадер не станет работать? Ему вроде не откуда узнать, что частота поменялась, если просто кварц перепаян? Бутлоадер принимает код от USB-UART конвертора, который тоже ничем не тактирован?
Если Вы что-то знаете на эту тему - расскажите, я вроде что-то не понимаю.
wdrakula, не копал даташит, вроде-бы там рассчитываются какие-то константы для настройки UART из системной частоты. Я когда разгонял дуню -компилил свой бут для каждой новой частоты.
я понял, о чем Вы. Думаю, что разница 16 и 20 не столь велика, чтобы УАРТ сбился. Хотя все может быть.
Настройка uart при 16мгц и 20мгц сильно отличается
точнее uart не будет работать на той же частоте, будет работать только его скорость вырастет на 25%
Итак, взял Ардуино "Atmega328 5V/16MHz", прошил в неё скетч "ArduinoISP",
затем взял Ардуино "Atmega168 5V/16MHz", у которой был перепаяи кварц с 18 на 20 МГц и подключил к ней так:
Скачал новую версию avrdude, запустил
получил
Что я сделал не так? Может, кварц надо было потом перепаивать?
Вернул, как было - получаю т же самое: programmer is not responding
Оказывается, в примере из моей среды ардуино был другой баудрейт, после изменения и перепрошивки выдало:
содержимое hfuse.txt: 0xdd
содержимое lfuse.txt: 0xff
Та я хочу наглядно посмотреть, как работает с кварцом 16 МГц, затем заменить его на 20 - и наглядно посмотреть на прирост. ...
Если вы хотите вызуально увидеть что от кварца на выше частоту, стал стандартный блинк быстрее мигать, то вам нельзя ничего менять в файлах и настройках. Просто поставьте разъемчик для кварца и подтыкайте не родной кварц после заливки скетча, а перед новой заливкой скетча возвращать родной. и не понадобиться ничего менять в файлах и настройках. Это то что вы хотели , это сгодиться для разумного разгона. Для мигания блинком и работы периферией, за исключеныем работы через UART(монитор порта,..) и SPI .
// менять кварцы при выключенном питании. Если же что поменяете в настройках, то IDE пересчитает задержки при новом кварце, и стандартный блинк у вас будет мигать с тойже частотой, никаких изменений по скорости мигания светодиода не увидите.
С GUI разобрался, нашел такое - http://payalo.at.ua/c_fuse/calc.html?part=ATmega168.
Теперь бы понять, нужно ли на кварц 20 МГц настраивать фьюзы? Судя по сообщению от slider выше, не нужно )
Беда в чем: был такой модуль: залил скетч "Blink" - замигало, заменил стоящий там кварц на HC-49S - не мигает.
Доброе время. Прочитал тему, но не осилил. У меня про мини. Знаю, они разные бывают, кварца с надписью нет. Как можно узнать его реальную частоту?
Хотя вроде по описанию 5В мини 8Мгц не бывает. Поверим на слово, что там 16? Как-то так?
Доброе время. Прочитал тему, но не осилил. У меня про мини. Знаю, они разные бывают, кварца с надписью нет. Как можно узнать его реальную частоту?
например, посмотреть осциллографом.
Выбери в меню Arduino IDE стандартную плату Pro Mini (на 16МГц) и загрузи блинк на 1 секунду. Если будет мигать с частотой 1 раз в сек - то 16МГц, если 1 раз в 2 секунды - значит 8 МГц.
У меня про мини. Знаю, они разные бывают, кварца с надписью нет. Как можно узнать его реальную частоту?
http://arduino.ru/forum/programmirovanie/sysinfo-arduino
Всем спасибо. Sysinfo штука понравилась. Как и ожидалось 5в плата на 16 МГц.