Раз уж тег появился, выложу свои вырвиглазные творения
Подробнее
Lj Of?-:* :‘4 FrT' ^ ■ ‘ '▼Л f 3Jl *WW«* » 1 rOÍJ^< ’H 'Wm, Э Щ /в H^^5;;l. ^l^sl А; 'Л -Ш ? 1 i>™- 5j • ‘4sPTv .Ль'. - .Æ ВЗЕ2Д I- /;-J 2k2J L-/? ■V i*- ^♦% • ’fi ‘■V 1ff* V 1.
й£ Ш % Y t; ИЗИШ31И I À :;5S ^4* . * '-' '4 ¿i1 a* A \ % ~ ;Ж ГЕм* Í» JR ■V V* St i ' •SHSE SA • |w$ V —- ■ FW. I íÁl .** ï «№ A\V **" ‘*■4: За *?& 4 frsk < - V
0*10 о О ""b А 0 0 IIIIIIIIHI ,sê 'шшт IIIHIIII ши HI
Карательная электроника,geek,Прикольные гаджеты. Научный, инженерный и айтишный юмор,электроника
Еще на тему
Мои глаза...
Одно из требования - автономность, отсюда часовой кварц, чтобы работали часы реального времени, пока контроллерв режим сна и основной кварц останавливается. По прерыванию от часов реального времени, контроллер просыпался каждые насколько миллисикунд.
Если на шине что-то появляется, нужно было просто записать на сд карту в текстовый файлик что там было и точное время.
Так как никакого юзер интерфейса нету, пришлось придумать хитрый способ эти часы выставлять. Для того, чтобы выставить время, нужно было создать на карте специальный текстовый файлик с текущим временем и включить устройство. При включении, оно читает файлик, выставляет время и удаляет его.
Мне тогда в мои студентческие годы 300 баксов заплатили я и рад был. С пользой провел три вечера
И зачем часы для SDCard-ридера?
1. Часовой кварц нужен для того что бы часы не убегали, т.к. есть сложности при написании алгоритмов которые будут укладываться в определённые временные рамки.
2. Это может быть логер с памятью на внешней карте.
ШТА?!
Твоя очередь писать случайный набор слов.
(все еще не могу уловить ход мыслей)
Ну а вообще, в тех же STM32 RTC можно тактовать от внутреннего источника или внешнего часового кварца, что точнее.
P.S. Какой делитель нужен для тактирования от 20 Мгц кварца?
Так и есть
"...но он быстрый и со всей обвязкой более жручий, так что если требуется автономность - часовой делают отдельно."
Зачем мне повторять мой же тезис - загадка.
> P.S. Какой делитель нужен для тактирования от 20 Мгц кварца?
Для помянутых тобой STM32 - ну, например 156250. А все потому что по пути тактирования HSE->RTC обычно есть дополнительный аппартный делитель на дофига. Вот, например, для древнего STM32F100:
Ну, видимо, потому что я прочитал жопой и не увидел.
С RTC в стм не работал, можете пояснить один момент.
Часовой кварц имеет такую частоту, чтобы с помощью делителя на степень двойки получить частоту ровно в 1с. Но ведь из произвольной частоты не всегда можно получить целое число секунд. В Вашем примере, 156.25 - не степень двойки. Как RTC будет работать от такой частоты?
Стандарт сохранился, но в теперешних условиях (в частности - для МК) степень двойки абсолютно не нужна, частота может быть любой, хоть 13666. В данном случае - есть 20-бит счетчик с прелоадом. Т.е., грубо говоря, в него загружается число 156250, и он начинает считать вниз; как только он досчитывает до нуля - генерится фронт, и одновременно в регистр снова загружается 156250. Таким образом, 20000000 герц делится аппаратно на 128 и еще на 156250, что дает 1 Гц. Все очень просто и гибко.
При случае можешь еще почитать как работает триммирование РТЦ - можно настроить его таким образом, чтоб он генерил (или терял) один тактовый импульс на некоторое их количество. Благодаря такой мозможности можно очень точно подстроить частоту, даже если не существует целочисленного делителя - там шаг порядка PPMом.
В любом случае, правду знает создатель сего устройства. Но он интригующе молчит.
Да, часы с отдельным часовым кварцем получаются проще, так как уже есть заточенный под это таймер-счетчик.
Но здесь, весь смысл был втом, чтобы переводить контроллер в сон с отключением основного тактового генератора.
2. Да. Детали отписал выше
Нужна была автономность, и точные часы реального времени.
Контроллер большую часть времени уходил в глубокий сон с отключением тактового генератора. Просапался от прерывание с часов реального времени раз в несколько миллисекунд. Детали ответил выше.
https://www.instructables.com/id/How-to-Build-an-8-Bit-Computer/
Я не вижу элементов, но похоже, что это какой-то датчик с усилителем сигнала.
USB эмулируется программно.
и ЭТО работало...