Кухонный таймер "Чтота".
Re: Кухонный таймер "Чтота".
Собрал я этот таймер и хотел бы сразу отметить его минусы для тех, кто захочет повторить схему. Видимо из-за особенностей программы имеет значение подключение сигнальных выводов энкодера. Мой механический энкодер (PEC16-4220F-S0024) сначала при вращении в любую сторону мог только уменьшать выдержку таймера. После того как я поменял его плечи местами, стала корректно настраиваться выдержка (уменьшаться и увеличиваться соответственно). И оказалось, что добавляется выдержка вращением против часовой стрелки, а уменьшается наоборот. А логично поворотом ручки вправо увеличивать время отсчёта. Сирена в конце отсчёта просто убивающая и выключить её нельзя (у меня в схеме 19 нога контроллера используется). При прошивке сначала шейте программу, потом фьюзы: после них контроллер без внешнего кварца не запустится. В остальном без проблем. Но по итогу, зная всё это заранее, я бы поискал что-то ещё.
Re: Кухонный таймер "Чтота".
Всё-таки получилось у меня отключить эту шальную сирену в конце отсчёта благодаря подсказке форумчанина druzhok, за что ему отдельное спасибо! Суть в следующем:
Чтобы отключить противное пищание в конце - можно перенаправить его на вывод PD1, то есть на 3 ногу МК (она не задействована). Если более подробно - в файле _call.asm в пятой строке изменить параметр с "sbi portD,5" на "sbi portD,1" и скомпилировать хекс в проге MidiTiny.
На всякий случай прикрепляю файл прошивки с мелодией "трель" и отключеной сиреной.
Чтобы отключить противное пищание в конце - можно перенаправить его на вывод PD1, то есть на 3 ногу МК (она не задействована). Если более подробно - в файле _call.asm в пятой строке изменить параметр с "sbi portD,5" на "sbi portD,1" и скомпилировать хекс в проге MidiTiny.
На всякий случай прикрепляю файл прошивки с мелодией "трель" и отключеной сиреной.
- Вложения
-
- 4tota_pic_pic3.hex
- (3.81 КБ) 329 скачиваний
Не вижу индикации ЧТОТА
Добрый. Прошивал понькай с кварцем (прошивку тота.e2p и фьзы были на форуме).Прошивку программатор видит.Включал (4-5в) без энкодера а просто на 2 и 7 пинах имитировал различные комбинации 0 и1.Индикации не получил .С 6-ой ногой тоже эксперементировал.На пинах связанных с индикаторами импульсов присущих динамической индикации нет. Протеус как бы демонстрирует работоспособность прошивки.Т.е при включении 0 в мл. разряде не вижу.Кто нарывался на такое?Подсобьте .Спасибо
- АлександрЛ
- Друг Кота
- Сообщения: 43801
- Зарегистрирован: Пн ноя 30, 2009 03:00:01
- Откуда: Нерезиновая
Re: Не вижу индикации ЧТОТА
[uquote="rusin",url="/forum/viewtopic.php?p=3854179#p3854179"]прошивку тота.e2p и фьзы были на форуме[/uquote]
Хотя бы ссылку на прошивку и схему (статью) дать не мешало бы- вы знаете, где их искать, а другому их искать придётся..
Хотя бы ссылку на прошивку и схему (статью) дать не мешало бы- вы знаете, где их искать, а другому их искать придётся..
-
BlackKilkennyCat
- Собутыльник Кота
- Сообщения: 2905
- Зарегистрирован: Ср ноя 29, 2017 06:58:50
Re: Не вижу индикации ЧТОТА
протеус не является гарантией работы, это симулятор, с какой-то степенью достоверности.
Меня здесь больше нет
-
Grishanenko
- Потрогал лапой паяльник
- Сообщения: 383
- Зарегистрирован: Чт окт 27, 2011 15:02:34
Re: Кухонный таймер "Чтота".
А есть какой-то тайный смысл во включении динамика в цепь эмиттера транзистора или это просто ошибка в схеме? В теории, резистор в эмиттере может лишь ограничить усиление, но вдруг здесь какая-то особенность связанная с ШИМ, раз уж ничего сглаживающего не установлено.
Когда читал комментарии внутри файлов прошивки, у меня сложилось впечатление что их писал musor
Когда читал комментарии внутри файлов прошивки, у меня сложилось впечатление что их писал musor
- АлександрЛ
- Друг Кота
- Сообщения: 43801
- Зарегистрирован: Пн ноя 30, 2009 03:00:01
- Откуда: Нерезиновая
Re: Кухонный таймер "Чтота".
[uquote="_abdulla_",url="/forum/viewtopic.php?p=3733615#p3733615"]Собрал я этот таймер и хотел бы сразу отметить его минусы для тех, кто захочет повторить схему. Видимо из-за особенностей программы имеет значение подключение сигнальных выводов энкодера. Мой механический энкодер (PEC16-4220F-S0024) сначала при вращении в любую сторону мог только уменьшать выдержку таймера. После того как я поменял его плечи местами, стала корректно настраиваться выдержка (уменьшаться и увеличиваться соответственно). И оказалось, что добавляется выдержка вращением против часовой стрелки, а уменьшается наоборот. А логично поворотом ручки вправо увеличивать время отсчёта. Сирена в конце отсчёта просто убивающая и выключить её нельзя (у меня в схеме 19 нога контроллера используется).[/uquote]
А как вы подключали энкодер? У него может быть "главная нога" не посередине, а с краю..
И кто мешает поменять выводы энкодера так, чтобы при вращении по часовой стрелке время увеличивалось?
Сигнал отключается по нажатию на кнопку энкодера.
Я фьюзы установил для работы от внутреннего генгератора, да, стало время считаться с небольшой ошибкой- при выдержке 29 минут реальное время- 19 минут 25 секунд.. Для "кухонного таймера" вполне достаточная точность, а кварц уже не нужен.
зы.. У меня работает и в протеусе, и в "железе"
Транзистор с буззером в цепи эмиттера- вполне нормальное решение, просто транзистор стоит не как "ключ", а как эмиттерный повторитель, что, в принципе, сути дела не меняет, я так вообще транзистор не поставил..

А как вы подключали энкодер? У него может быть "главная нога" не посередине, а с краю..
И кто мешает поменять выводы энкодера так, чтобы при вращении по часовой стрелке время увеличивалось?
Сигнал отключается по нажатию на кнопку энкодера.
Я фьюзы установил для работы от внутреннего генгератора, да, стало время считаться с небольшой ошибкой- при выдержке 29 минут реальное время- 19 минут 25 секунд.. Для "кухонного таймера" вполне достаточная точность, а кварц уже не нужен.
зы.. У меня работает и в протеусе, и в "железе"
Транзистор с буззером в цепи эмиттера- вполне нормальное решение, просто транзистор стоит не как "ключ", а как эмиттерный повторитель, что, в принципе, сути дела не меняет, я так вообще транзистор не поставил..
-
Grishanenko
- Потрогал лапой паяльник
- Сообщения: 383
- Зарегистрирован: Чт окт 27, 2011 15:02:34
Re: Кухонный таймер "Чтота".
АлександрЛ, какое напряжение питания и какое сопротивление резисторов на индикатор? У меня 4 В и зеленый индикатор даже при 100 Ом весьма мутно показывает, в солнечный день с пары метров будет тяжело читаться. Красный и с 470 Ом вполне яркий. Желтый - чуть слабее, ему по 360 Ом ставил. Странно что синих индикаторов я нигде не нашел (ОК или ОА). Обычные синие светики зачастую сверхъяркие при мизерном токе.
По поводу транзистора - у вас же обычный буззер (пьезо)? А у меня динамик 8 Ом. Такой напрямую на порт не прицепишь.
По поводу транзистора - у вас же обычный буззер (пьезо)? А у меня динамик 8 Ом. Такой напрямую на порт не прицепишь.
-
Grishanenko
- Потрогал лапой паяльник
- Сообщения: 383
- Зарегистрирован: Чт окт 27, 2011 15:02:34
Re: Кухонный таймер "Чтота".
vasia_12, спасибо за MidyTiny. Задумка очень хорошая, но я нашел в работе программы две ошибки, которые ощутимо портят мелодию.
Желающим предлагаю проверить все своими ушами.
Итак, запускаю программу, открываю файл из того же архива: br_ruka_t2.mid - мелодия известна всем.
Play midi - точное соответствие оригиналу.
MIDI -> BEEP, Play Beep - очень быстрая.
Ставлю Октаву -2, Темп -170, еще раз MIDI -> BEEP, Play Beep - мелодия похожа, но с паузами между нотами явно что-то не так.
Если воспроизвести исходный файл (Play midi) и записать его звуковым редактором, что четко видно что длина всех нот одинаковая.
Но в MidiTiny табличка Midi и столбец Длит. выглядит так: 24 49 24 49 24 49 24 49 24 74 49
Нужно все эти длительности выставить как 24. Можно вручную, с двойным кликом на каждой строке, можно через Ctrl-C и Ctrl-V, а можно поставить указатель на первую ячейку, с кнопкой Shift выделить курсором "вниз" всю колонку, ПКМ - копировать. Вставить в Excel, установить курсор на первую ячейку и с кнопкой Ctrl протянуть вниз за квадратик в правом нижнем углу ячейки - 24 растянется на все строки. ПКМ - копировать. Вернуться в MidiTiny (там столбец все еще выделен). ПКМ - вставить.
MIDI -> BEEP, Play Beep - значительно лучше, но мелодия чуть замедлена, лучше выставить темп -150.
MIDI -> BEEP, Play Beep - хорошо, но все равно что-то не так.
Возвращаю темп в 0, жму MIDI -> BEEP и вижу что в табличке BEEP значения длительности: 24 24 25 24 24 25 24 24 25, а ведь должны быть сплошные 24, но это мелочи.
Делаю темп -10, жму MIDI -> BEEP и не понимаю почему все значения в колонке просто увеличились на 10. А как же отношение длительностей нот и пауз?
Возвращаю темп в 0, MIDI -> BEEP, с кнопкой shift выделяю все значения в столбце длительность (BEEP). ПКМ - копировать.
Вставляю в Excel. Правее верхней клеточки ставлю знак равно, выбираю клетку слева и дописываю "*6". Enter - вижу 144. Возвращаюсь в эту же клеточку и растягиваю ее за правый нижний угол. Таким образом все длительности умножились на 6. ПКМ - копировать. Снова MidyTiny - ПКМ - вставить.
Play Beep - вот теперь мелодия звучит как в оригинале.
ЗЫ: Перепроверил. Динамик 8 Ом в коллекторе транзистора звучит чуть громче.
ЗЫ2: Добавлю что первая ошибка - скорее не ошибка, а особенность моей проверки и работы музыкальных инструментов. Я сначала пытался отловить длительности на слух и ставил Темп (в секции Midi) в 10. Тогда ноты выглядят почти одинаковыми, но их громкость спадает как обратный логарифм. Это уже реверберация и прочие эффекты. Если же темп выставить в 120, то длительность нот действительно отличается в 2 раза. Но оба варианта имеют право на существование или даже заслуживают отдельной настройки. Лично мне мелодия с фиксированными короткими нотами нравится больше, да и разряжать АКБ/батарейки будет слабее.
Желающим предлагаю проверить все своими ушами.
Итак, запускаю программу, открываю файл из того же архива: br_ruka_t2.mid - мелодия известна всем.
Play midi - точное соответствие оригиналу.
MIDI -> BEEP, Play Beep - очень быстрая.
Ставлю Октаву -2, Темп -170, еще раз MIDI -> BEEP, Play Beep - мелодия похожа, но с паузами между нотами явно что-то не так.
Если воспроизвести исходный файл (Play midi) и записать его звуковым редактором, что четко видно что длина всех нот одинаковая.
Но в MidiTiny табличка Midi и столбец Длит. выглядит так: 24 49 24 49 24 49 24 49 24 74 49
Нужно все эти длительности выставить как 24. Можно вручную, с двойным кликом на каждой строке, можно через Ctrl-C и Ctrl-V, а можно поставить указатель на первую ячейку, с кнопкой Shift выделить курсором "вниз" всю колонку, ПКМ - копировать. Вставить в Excel, установить курсор на первую ячейку и с кнопкой Ctrl протянуть вниз за квадратик в правом нижнем углу ячейки - 24 растянется на все строки. ПКМ - копировать. Вернуться в MidiTiny (там столбец все еще выделен). ПКМ - вставить.
MIDI -> BEEP, Play Beep - значительно лучше, но мелодия чуть замедлена, лучше выставить темп -150.
MIDI -> BEEP, Play Beep - хорошо, но все равно что-то не так.
Возвращаю темп в 0, жму MIDI -> BEEP и вижу что в табличке BEEP значения длительности: 24 24 25 24 24 25 24 24 25, а ведь должны быть сплошные 24, но это мелочи.
Делаю темп -10, жму MIDI -> BEEP и не понимаю почему все значения в колонке просто увеличились на 10. А как же отношение длительностей нот и пауз?
Возвращаю темп в 0, MIDI -> BEEP, с кнопкой shift выделяю все значения в столбце длительность (BEEP). ПКМ - копировать.
Вставляю в Excel. Правее верхней клеточки ставлю знак равно, выбираю клетку слева и дописываю "*6". Enter - вижу 144. Возвращаюсь в эту же клеточку и растягиваю ее за правый нижний угол. Таким образом все длительности умножились на 6. ПКМ - копировать. Снова MidyTiny - ПКМ - вставить.
Play Beep - вот теперь мелодия звучит как в оригинале.
ЗЫ: Перепроверил. Динамик 8 Ом в коллекторе транзистора звучит чуть громче.
ЗЫ2: Добавлю что первая ошибка - скорее не ошибка, а особенность моей проверки и работы музыкальных инструментов. Я сначала пытался отловить длительности на слух и ставил Темп (в секции Midi) в 10. Тогда ноты выглядят почти одинаковыми, но их громкость спадает как обратный логарифм. Это уже реверберация и прочие эффекты. Если же темп выставить в 120, то длительность нот действительно отличается в 2 раза. Но оба варианта имеют право на существование или даже заслуживают отдельной настройки. Лично мне мелодия с фиксированными короткими нотами нравится больше, да и разряжать АКБ/батарейки будет слабее.
Последний раз редактировалось Grishanenko Чт мар 11, 2021 20:42:58, всего редактировалось 1 раз.
- АлександрЛ
- Друг Кота
- Сообщения: 43801
- Зарегистрирован: Пн ноя 30, 2009 03:00:01
- Откуда: Нерезиновая
Re: Кухонный таймер "Чтота".
[uquote="Grishanenko",url="/forum/viewtopic.php?p=3994412#p3994412"]АлександрЛ, какое напряжение питания и какое сопротивление резисторов на индикатор? У меня 4 В и зеленый индикатор даже при 100 Ом весьма мутно показывает, в солнечный день с пары метров будет тяжело читаться.[/uquote]
"яркий солнечный день" на кухне?
А зачем "читать с пары метров", если "читать" надо только при установке времени, а на окончание выдержки есть звуковая индикация?
Резисторы 200 Ом, но у меня питание 4 вольта, но мне нормально видно..
[uquote="Grishanenko",url="/forum/viewtopic.php?p=3994412#p3994412"]АлександрЛПо поводу транзистора - у вас же обычный буззер (пьезо)? А у меня динамик 8 Ом. Такой напрямую на порт не прицепишь.[/uquote]Без разницы, какой транзистор ставить, NPN как эмиттерный повторитель (коллектором к плюсу питания) или NPN в качестве ключа (эмиттером на "землю", только тогда надо будет резистор в ~1 кОм от МК на базу ставить) работать будет.
"яркий солнечный день" на кухне?
А зачем "читать с пары метров", если "читать" надо только при установке времени, а на окончание выдержки есть звуковая индикация?
Резисторы 200 Ом, но у меня питание 4 вольта, но мне нормально видно..
[uquote="Grishanenko",url="/forum/viewtopic.php?p=3994412#p3994412"]АлександрЛПо поводу транзистора - у вас же обычный буззер (пьезо)? А у меня динамик 8 Ом. Такой напрямую на порт не прицепишь.[/uquote]Без разницы, какой транзистор ставить, NPN как эмиттерный повторитель (коллектором к плюсу питания) или NPN в качестве ключа (эмиттером на "землю", только тогда надо будет резистор в ~1 кОм от МК на базу ставить) работать будет.
Последний раз редактировалось АлександрЛ Чт мар 11, 2021 20:58:34, всего редактировалось 1 раз.
-
Grishanenko
- Потрогал лапой паяльник
- Сообщения: 383
- Зарегистрирован: Чт окт 27, 2011 15:02:34
Re: Кухонный таймер "Чтота".
[uquote="АлександрЛ",url="/forum/viewtopic.php?p=3995711#p3995711"]"яркий солнечный день" на кухне?
[/uquote]
В ваше окно солнце никогда не светит?
[uquote="АлександрЛ",url="/forum/viewtopic.php?p=3995711#p3995711"]А зачем "читать с пары метров", если "читать" надо только при установке времени, а на окончание выдержки есть звуковая индикация?[/uquote]
Чтобы "бросить взгляд" на таймер, увидеть сколько времени до срабатывания и прикинуть успею ли сделать какую-то другую задачу.
[uquote="АлександрЛ",url="/forum/viewtopic.php?p=3995711#p3995711"]PNP как эмиттерный повторитель (коллектором к плюсу питания)[/uquote]
В том и дело что на схеме npn
[uquote="АлександрЛ",url="/forum/viewtopic.php?p=3995711#p3995711"]NPN в качестве ключа (эмиттером на "землю", только тогда надо будет резистор в ~1 кОм от МК на базу ставить) работать будет.[/uquote]
Не вижу ни одной причины для экономии 50-и копеек на один резистор как в первом, так и во втором варианте.
В ваше окно солнце никогда не светит?
[uquote="АлександрЛ",url="/forum/viewtopic.php?p=3995711#p3995711"]А зачем "читать с пары метров", если "читать" надо только при установке времени, а на окончание выдержки есть звуковая индикация?[/uquote]
Чтобы "бросить взгляд" на таймер, увидеть сколько времени до срабатывания и прикинуть успею ли сделать какую-то другую задачу.
[uquote="АлександрЛ",url="/forum/viewtopic.php?p=3995711#p3995711"]PNP как эмиттерный повторитель (коллектором к плюсу питания)[/uquote]
В том и дело что на схеме npn
[uquote="АлександрЛ",url="/forum/viewtopic.php?p=3995711#p3995711"]NPN в качестве ключа (эмиттером на "землю", только тогда надо будет резистор в ~1 кОм от МК на базу ставить) работать будет.[/uquote]
Не вижу ни одной причины для экономии 50-и копеек на один резистор как в первом, так и во втором варианте.
- АлександрЛ
- Друг Кота
- Сообщения: 43801
- Зарегистрирован: Пн ноя 30, 2009 03:00:01
- Откуда: Нерезиновая
Re: Кухонный таймер "Чтота".
[uquote="Grishanenko",url="/forum/viewtopic.php?p=3995742#p3995742"][uquote="АлександрЛ",url="/forum/viewtopic.php?p=3995711#p3995711"]PNP как эмиттерный повторитель (коллектором к плюсу питания)[/uquote]
В том и дело что на схеме npn[/uquote]
Да, NPN,конечно, это я "слажал".. Возможно, автор поставил транзистор "эмиттерным повторителем", чтобы сэкономить один резистор, возможно- из- за удобства разводки.. А, может быть, просто решил, что ему "так хочется", разницы никакой, это просто "умощнение выхода МК"
В том и дело что на схеме npn[/uquote]
Да, NPN,конечно, это я "слажал".. Возможно, автор поставил транзистор "эмиттерным повторителем", чтобы сэкономить один резистор, возможно- из- за удобства разводки.. А, может быть, просто решил, что ему "так хочется", разницы никакой, это просто "умощнение выхода МК"
- musor
- Друг Кота
- Сообщения: 39197
- Зарегистрирован: Сб сен 13, 2014 16:27:32
- Откуда: СпиртоГонск созвездия Омега
Re: Кухонный таймер "Чтота".
Grishanenko, я такой бред не писал!!! не гони!!!
при 2 разрядох ключи думаю излишни 2313 тянет сама даже 3 красных не напрягаясь
ранше много на них делал пока не кончился запас халявы
при 2 разрядох ключи думаю излишни 2313 тянет сама даже 3 красных не напрягаясь
ранше много на них делал пока не кончился запас халявы
ZМудрость(Опыт и выдержка) приходит с годами.
Все Ваши беды и проблемы, от недостатка знаний.
Умный и у дурака научится, а дураку и ..
Алберт Ейнштейн не поможет и ВВП не спасет.и МЧС опаздает
Все Ваши беды и проблемы, от недостатка знаний.
Умный и у дурака научится, а дураку и ..
Алберт Ейнштейн не поможет и ВВП не спасет.и МЧС опаздает
Re: Кухонный таймер "Чтота".
Немного подправил код MidiTiny и сами исходники таймера. Убрал сирену и тиканье (ТИК-ТАК можно выбирать).
После срабатывания таймера проигрывается мелодия 2 раза подряд и таймер выключается. В железе не проверял.
После срабатывания таймера проигрывается мелодия 2 раза подряд и таймер выключается. В железе не проверял.
- Вложения
-
- MidiTiny11.rar
- (864.21 КБ) 211 скачиваний
- АлександрЛ
- Друг Кота
- Сообщения: 43801
- Зарегистрирован: Пн ноя 30, 2009 03:00:01
- Откуда: Нерезиновая
Re: Кухонный таймер "Чтота".
Запихнул таймер в коробочку..
Конечно, надо бы что- то более симпатичное подобрать, но такие коробочки у меня пока ещё не кончились..

Жаль, не нашлось большой плоской белой ручки..
Кварц ставить не стал, таймер работает от внутреннего генератора 4 МГц, на выдержке 10 минут ошибка около 10 секунд, меня устраивает..
Жаль, не нашлось большой плоской белой ручки..
Кварц ставить не стал, таймер работает от внутреннего генератора 4 МГц, на выдержке 10 минут ошибка около 10 секунд, меня устраивает..
Re: Кухонный таймер "Чтота".
Вот прошивка от vasia_12 без тиканья и мелодии, просто бесконечная сирена
- Вложения
-
- 4tota_sirena_OA.hex
- (3.23 КБ) 130 скачиваний
Re: Кухонный таймер "Чтота".
[uquote="vasia_12",url="/forum/viewtopic.php?p=3996736#p3996736"]Немного подправил код MidiTiny и сами исходники таймера. Убрал сирену и тиканье (ТИК-ТАК можно выбирать).
После срабатывания таймера проигрывается мелодия 2 раза подряд и таймер выключается. В железе не проверял.[/uquote]
Собрал этот таймер еще в 2012-м. Помощник, для супруги на кухне, по сегодняшний день. За что спасибо автору проекта. Как по мне, так тиканье и то, что таймер собирался в корпусе компьютерной мышки – это является фишкой этого таймера. Очень часто женщины за болтовней с подругами забывают, что у них на печке.
Подправленная прошивка работает, но жена сказала вернуть назад, а то если она не услышала, прозивала, то таймер переходит на "крик" и ей все понятно. Если таймер проиграл и выключился, то прийдя с огорода не сразу вспомнишь о таймере.
После срабатывания таймера проигрывается мелодия 2 раза подряд и таймер выключается. В железе не проверял.[/uquote]
Собрал этот таймер еще в 2012-м. Помощник, для супруги на кухне, по сегодняшний день. За что спасибо автору проекта. Как по мне, так тиканье и то, что таймер собирался в корпусе компьютерной мышки – это является фишкой этого таймера. Очень часто женщины за болтовней с подругами забывают, что у них на печке.
Подправленная прошивка работает, но жена сказала вернуть назад, а то если она не услышала, прозивала, то таймер переходит на "крик" и ей все понятно. Если таймер проиграл и выключился, то прийдя с огорода не сразу вспомнишь о таймере.
Последний раз редактировалось Genri5 Пн авг 30, 2021 15:46:13, всего редактировалось 4 раза.
- jn79
- Опытный кот
- Сообщения: 821
- Зарегистрирован: Ср окт 10, 2007 10:54:35
- Откуда: Омская обл
- Контактная информация:
Re: Кухонный таймер "Чтота".
а полифонию сложно сделать ?
https://www.youtube.com/watch?v=fEmJ0GvkRNk
https://www.youtube.com/watch?v=fEmJ0GvkRNk
Re: Кухонный таймер "Чтота".
[uquote="jn79",url="/forum/viewtopic.php?p=4083529#p4083529"]а полифонию сложно сделать ?
https://www.youtube.com/watch?v=fEmJ0GvkRNk[/uquote]
Для звонка может и нужна полифония, а у таймера другая задача. Хотя, конечно, на вкус и цвет ... .
https://www.youtube.com/watch?v=fEmJ0GvkRNk[/uquote]
Для звонка может и нужна полифония, а у таймера другая задача. Хотя, конечно, на вкус и цвет ... .