Экспериментируя с велофарами передо мной встала задача изготовления зарядного устройства для батареи Ni-MH аккумуляторов. Так как что-то серьезное (например, на MAX713) сооружать как всегда лень, да и по стоимости компонентов целесообразность сомнительна, решил ограничиться простейшей схемой зарядки в режиме 1/5C с ограничением времени заряда. Генератор тока примерно на 500мА легко собрался на стабилизаторе IL317, общее питание 12В взялось с готового блока, осталось только разобраться с собственно ограничением времени чтобы излишне не насиловать аккумуляторы.
По нынешним временам, задав подобный вопрос в интернете, 90% ответов будут "возьми микроконтроллер, и сделай на нем". Мысль не лишена здравого смысла, т.к. в тех же PIC12 при их восьми ногах мы получаем встроенные генератор, схему сброса, плюс практически неубиваемый контроллер, работающий в диапазоне питаний от 3 до 5В. Однако с точки зрения наглядности и усилий по запуску такое решение не всегда оптимально.
В ящиках стола с былых времен у меня завалялась парочка таймеров
КР512ПС10 (и сейчас выпускаемых Интегралом), которые могли бы послужить достойной
альтернативой применению контроллера. Однако попытки найти в интернете достаточно
полное описание не увенчались успехом. Самое подробное что удалось добыть, да
и то в бумажном виде, - это описание в книге "Микросхемы для бытовой аппаратуры,
часть 3." Собственно оно и послужило отправной точкой для дальнейшей работы.
Коэффициент деления микросхемы задается на выводах 1, 12, 13, 14 и 15. В таблице книги коэффициенты деления указаны не слишком наглядно, хотя в тексте все расписано, в какой последовательности и какие счетчики задействуются. Поэтому имеет смысл переписать таблицу:
| выводы | множители | коэффициент | |||||
| 1 | 12 | 13 | 14 | 15 | |||
| 0 | 0 | 0 | 0 | 0 | 1*2048 | = | 2048 |
| 0 | 0 | 1 | 0 | 0 | 3*2048 | = | 6144 |
| 0 | 0 | 0 | 1 | 0 | 10*2048 | = | 20480 |
| 0 | 0 | 0 | 0 | 1 | 3*10*2048 | = | 61440 |
| 0 | 1 | 0 | 0 | 0 | 1*60*2048 | = | 122880 |
| 0 | 1 | 1 | 0 | 0 | 3*60*2048 | = | 368640 |
| 0 | 1 | 0 | 1 | 0 | 10*60*2048 | = | 1228800 |
| 0 | 1 | 0 | 0 | 1 | 3*10*60*2048 | = | 3686400 |
| 1 | 0 | 0 | 0 | 0 | 1*64*2048 | = | 131072 |
| 1 | 0 | 1 | 0 | 0 | 3*64*2048 | = | 393216 |
| 1 | 0 | 0 | 1 | 0 | 10*64*2048 | = | 1310720 |
| 1 | 0 | 0 | 0 | 1 | 3*10*64*2048 | = | 3932160 |
| 1 | 1 | 0 | 0 | 0 | 1*64*60*2048 | = | 7864320 |
| 1 | 1 | 1 | 0 | 0 | 3*64*60*2048 | = | 23592960 |
| 1 | 1 | 0 | 1 | 0 | 10*64*60*2048 | = | 78643200 |
| 1 | 1 | 0 | 0 | 1 | 3*10*64*60*2048 | = | 235929600 |
Тут же сразу и заметно расходжение между нарисованной структурной схемой и таблицей: Если верить таблице, то последний делитель на 60 (блок V) управляется выводом 12, а на рисунке показан 15. Как есть на самом деле нужно уточнять на практике, но учитывая что все источники, в том числе и производитель приводят одинаковую таблицу, то ошибка скорее на рисунке.
1 декабря 2008