Генератор цветных полос для монитора

Попался мне в руки чип от отработанного картриджа цветного принтера, а на нем стоит pic 12F683, вот на его основе решил сделать что-то полезное, и придумал я генератор цветных полос для мониторов

12f683 позволяет работать от внутреннего генератора 8 Мгц, и это позволило без внешнего кварца построить простой генератор цветных полос.
Длина строки- 32 мкс. /60гц/ кадровые импульсы каждую 525 и 526 строку.
Полосы получились не стандартные, но для проверки работоспособности монитора там всё есть.
Схема очень простая, и содержит кроме пика только 3 резистора. Налаживания и настройки не требует.
Вся схема уместилась в корпусе  стандартного разьема VGA  в качестве источника питания применены 3 батарейки AG3 которые можно купить в любом ларьке по 3 руб. за штуку.
Выключателя питания не нужно, так как минус источника питания подаётся на контроллер при подключении к монитору через землю .
Цоколёвку VGA можно посмореть тут: http://pinouts.ru/Video/VGA15.shtml

Ток потребления монитора по шине RGB по 5 ма на вход /0.7в/
Общее потребление 30-50 ма, но так как генератор используют недолго, то батареек должно хватить на год-два.
Работоспособность устройства охраняется до напряжения 2.5 вольта, но при этом яркость свечения монитора снижается.
Печатная плата размером 10 на 10 мм. Чертёж в приложении. Программа написании на ASM и откомпелирована в MPlab.

Прошивка  контроллера  micro.HEX в приложении.

Заранее прошу строго не судить, программу написал за час, что в голову пришло, можете сами поправить.

Схема

Текст программы:

 include;Подключение файла с описаниями регистров специального назначения ;Определение используемых в программе регистров общего назначения:  __config  0F94    MOVLW  0X07;отключаем копаратор     MOVWF  19h ;он будет мешать    CLRF 20H; ЧИСТКА РЕГИСТРА    CLRF 21H; ЧИСТКА РЕГИСТРА    CLRF 22H; ЧИСТКА РЕГИСТРА    MOVLW B'00110111'; буфер    MOVWF 05H ; установим 1 на выводах синхры    BSF 83H,5;1 БАНК    CLRF 9FH; ВСЕ ВЫВОДЫ - ЦИФРА    MOVLW B'01110111'; НАСТРОЙКА ВНУТРЕННЕГО ГЕНЕРАТОРА    MOVWF 8FH; 8 мГЦ внутренний генератор    CLRF 85H;; все ноги- выходы /кроме 4 лапы/    BCF 03H,5 ; БАНК 0  GEN_1      BSF 20H,7;128 В РЕГИСТР 20Н    MOVLW .200 ; 200 В АККУМ    MOVWF 21H ; 200 В РЕГИСТР 21H    MOVLW .196 ; 196 В АККУМ    MOVWF 22H ; 196 В РЕГИСТР 22H    GOTO START_3 START_1    NOP    BSF 05H,1; КОНЕЦ КАДРОВОГО ИМПУЛЬСА    NOP START_2    NOP    NOP    NOP     START    NOP    NOP    NOP    NOP    NOP    NOP    NOP    NOP    NOP START_3    BCF 05H,0;  НАЧАЛО СТОРЧНОГО ИМПУЛЬСА    NOP    NOP    NOP    NOP    BSF 05H,0; КОНЕЦ СТРОЧНОГО ИМПУЛЬСА     NOP      NOP    NOP     NOP    BCF 05H,2; ВЫКЛ КРАСНОЙ ПОЛОСЫ     NOP    NOP    NOP    NOP    NOP    BCF 05H,4; ВЫКЛ ЗЕЛЁНОЙ ПОЛОСЫ    NOP    NOP    NOP     NOP    NOP    BCF 05H,5; ВЫКЛ СИНЕЙ ПОЛОСЫ    NOP    NOP    NOP    NOP    NOP    BSF 05H,2; НАЧАЛО КРАСНОЙ ПОЛОСЫ    NOP    NOP    NOP     NOP    BCF 05H,2; КОНЕЦ КРАСНОЙ ПОЛОСЫ    BSF 05H,5; НАЧАЛО СИНЕЙ ПОЛОСЫ    NOP    NOP    NOP    NOP    NOP    BCF 05H,5; КОНЕЦ СИНЕЙ ПОЛОСЫ     NOP     NOP    BSF 05H,2; ВКЛ КРАСНОЙ ПОЛОСЫ    BSF 05H,4; ВКЛ ЗЕЛЁНОЙ ПОЛОСЫ    BSF 05H,5; ВКЛ СИНЕЙ ПОЛОСЫ    DECFSZ 20H,F; УМЕНЬШИМ НА 1    GOTO START_1    BSF 20H,0        DECFSZ 21H,F; УМЕНЬШИМ 21Н    GOTO START_2    BSF 21H,0    DECFSZ 22H,F; УМЕНЬШИМ 21Н    GOTO START    BCF 05H,1; НАЧАЛО КАДРОВОГО ИМПУЛЬСА        GOTO GEN_1     END    RETURN

 

Список радиоэлементов

Обозначение Тип Номинал Количество Примечание Магазин Мой блокнот
МК PIC 8-бит PIC12F683 1
R1-R3 Резистор 200 Ом 3
GB1 Батарея 4.5В 1 3 х 1,5В