Здравия желаю, товарищи!
Обновление для всех тех, кто еще не утонул, не расплавился и не подавился тополиным пухом.
Ваш Кот.
Super A-Non switching output stage - новое это хорошо забытое старое.
индикотор в часиках - это в тему! :)
Вот реально каждому кто добрался до МК надо свои часы написать? Хоть бы исходники приложил что-ли, неужто секретные или какая-то особая реализация.
Ничего секретного в часах нет. Просто часы. Хотите исходник. Пожалуйста
pav13, А что в этом плохого? В этом и весь кайф в радиолюбительстве придумать что-то свое, а не тупо повторять чужие проекты. Пройдя через свои ошибки человеку полезно будет, знаний и понимания больше будет. Конечно всякого рода часы уже поднадоели, особенно на семисегментниках))), это не в обиду автору разумеется.
Ivan_kz, судя по темам часов на ВЛИ (и ГРИ туда же) - не всем надоели :)
А вообще понятие "часы", которые просто стоят на полочке и показывают время - как раз там и хватает 7-сегментников. особенно если под словом "часы" подразумеваются именно часы (можно с будильником), а не мегакомбайн с приемником, МР3-плеером, телевизором, метеостанцией, блекджеком и танцовщицами.
mixon46, Странное решение с 12-часовым циклом.... Почему именно 12, а не 24?
И в программе добавьте тогда ограничение, что бы часы нельзя было выставить более 12....
Ну и у вас свободен один вывод, перенесите на него что то со входа компаратора, тогда на компаратор можно повесить делитель с фоторезистором в одном из плеч и регулировать яркость свечения. В Тиньку это влезет, я в процессе изучения АВР делал на ней часики когда то.
Часы..... Чёт, какие-то НЕДОчасы... Может, конечно, автор постигает контроллеры? Ну и выложил на радостях "победу" свою...
Эти часы собирал ещё пару лет назад. А что бы не просрать проект так как нужно их разобрать с макетки решил выложить сюда
GoldenAndy, они построены на простой логике. В 16 битной переменной хранящей секунды не хватит счета что бы сохранить 12 часов. Хотя можно сделать что бы счёт шёл по 2 секунды на sec++
Точнее не 12 а 24 часа. Неправильно написал
mixon46, кто мешает сделать 3 8-битные переменные?
Часы, миуты, секунды?
Вы сэкономите на математике - не нужно будет оперировать 16бинтыми переменными и, что более тяжело для МК - у вас не будет деления на 60 и на 12.
//------------------------------------------- прерывание секундного таймера
ISR(ONE_SECOND_INTERRUPT){
//
time.changed = 1;
//
time.sec++;
if (time.sec == 60) {
time.sec = 0;
time.min++;
if (time.min == 60) {
time.min = 0;
time.hour++;
if (time.hour == 24) time.hour = 0;
} // min == 60
} // sec == 60
}
GoldenAndy, Насчет ГРИ && ВЛИ согласен. Да, и вообще я не против любых проектов часов сам этим грешен, в настоящее время заканчиваю проект на базе дисплея от DVD плеера и как все будет закончено возможно напишу статью здесь. Если получится не очень страшно :)))
Я тоже не против проектов часов. Но если эти проекты описаны без ошибок.
предлогаю
часы которые
Лучше поздно чем никогда как говорится
Собственно я
индикотор
Жмем кнопку
настоили
Так же хочу заметить.
более 1 то
приолагается
Собственно, я предлагаю автору часов, которые имеют столь странную логику, что если более 1, то ошибка, выучить русский язык. И лучше выложить статью поздно, чем безграмотно. Так же замечу
(хочу - и замечу), что прилагая к подобным проектам исходный код, а не hex-файл, можно значительно увеличить полезность проекта для остальных. Скрывать же исходники нет никакого смысла абсолютно, в данном случае.
Исходник asm выложен для вас. Можете править как пожелаете
Это не asm. Ну, ладно, это можно дизассемблировать, но это точно не исходник.
mixon46, hex - это скомпилированный файл прошивки, он не может называться исходником.
Предложенный номинал токоограничительных резисторов слишком мал. По даташиту максимальный ток через вывод тиньки 40мА. В вашей схеме общие выводы разрядов подключены напрямую к МК. Соответственно резисторы должны быть подобраны таким образом, чтобы ток через сегмент не превышал 5,7мА.
И да, в тексте не указан тип индикатора - он таки с общим катодом.
Люди обычно комментируют то о чем немного хоть наслышаны
mixon46, что вы хотите этим сказать?
Да уж, назвать HEX исходником да ещё предложить править "как хотите" это прям демонстрирует степень уважения к читателям своей статьи. Вы что, писали прошивку в HEХ редакторе? Ну не хочешь делиться - так и скажи, мол коммерческая тайна. Но если для простеньких часов зажимать прошивку, то смысл написания этой статьи только в том, чтобы похвастаться что ли?
На мой взгляд, подобным статьям надо присваивать ярлык "написано новичком" и отправлять на чердак.
Ведь там ничего оригинального и ничего полезного. Лучше вообще никаких статьей, чем банальности.
Представьте, что было бы, если бы литературные журналы печатали бы всякую хрень, что им приносят?
И, кстати, раньше кое-кто говорил, что отсеивает здесь статьи... видать, перестал.
nHz, самое забавное то, что прошивку он писал в CodeVisionAVR.
Вы можете декомпилировать и подправить код как захотите. Зачем вам исходник? Или написать код сами как пожелаете
И схему сделать какую пожелаем. В чём тогда смысл Вашей статьи? В сокровенных знаниях как соединить МК и индикатор? Я не против публикации подобных статей. На безрыбье как говорится...Но когда HEX называют исходником и вообще предлагают написать свою прошивку тут прямо чувствуется авторская поддержка. А если мне просто формат отображения времени надо поменять? Объём работы будет сопоставимым с разработкой с 0. В чём тогда смысл Вашей статьи?
mixon46, просто скажите, что не хотите публиковать источник, и всё! К чему эти ужимки и юления, и тем более откровенная ложь про hex-исходник? А причина скорее всего банальна - боитесь реакции на текст программы, так ведь?
Ну и да, никакого ответа по выбору номинала токоограничительных резисторов почему-то не последовало.
Я выложу Вам cvavr. Если вы действительно заинтересованы его использовать и изменять
ST7FOX, "Представьте, что было бы, если бы литературные журналы печатали бы всякую хрень, что им приносят?" - судя по современной литературе оно во много именно так и происходит примерно... (((((((
Sobiratel_sxem, да, аналогия теперь неудачная... Особенно меня ужасают переводы - переводчики такую отсебятину лепят, что могут смело становиться не просто соавторами, а вообще своё фамилиё первым ставить.
mixon46, вопрос по резисторам всё ещё актуален.
Ramm-SD, в статье указано22-50 ом на сегмент.
Как по мне - это слишком мало.
Особенно для дисплея красного цвета свечения.
1. Будет глазовыедательная яркость
2. будет превышение максимального тока на порт.
На красном диоде порядка 1.5 вольта. Итого, на резисторе должно упасть 3.5 вольта.
Максимальный ток порта - 40-50 ма.
3.5/0,05 = 70 Ом.
Из опыта - на сегмент подходят резисторы порядка 180-220 ом. И контроллер не в предельных режимах, и яркости достаточно.
GoldenAndy, автор проигнорировал мой вопрос, заданный ещё более недели назад.
70 Ом тоже будет маловато для схемы автора. У него общие катоды подключены напрямую к выводам МК, и включение более одного сегмента приведёт к плачевным результатам.
Параметры светодиодов выбранного автором индикатора: 1,8 В * 10 мА; 1,7 В * 5 мА. На каждый из семи сегментов при 5 мА понадобится резистор 660 Ом. Допустимо использовать 620 Ом, т.к. 40/7=5,7.
Рискну напомнить, что если с порта начнёт жраться 40 мА, то напряжение не совсем 5 вольт. Причём, очень не совсем:
около 4. В даташите это:
Figure 105. I/O Pin Source Current vs. Output Voltage (VCC = 5V)
ST7FOX, поэтому целесообразнее подключать общие выводы разрядов индикатора через транзисторы.