Cкорректировать прошивку PIC16F84A помогите. | |
---|---|
loony 20/10/2006 21:42 |
Может ли кто-нибуть скорректировать прошивку PIC16F84A.Проблема такова:собрал генератор телесигналов на PIC16F84A+кодер PAL+модулятор от видика,прибор получился компактным,всем устраивает,одна беда-нет формирователя сигнала звука.Можно конечно сгородить генератор на дискретных элементах,но хотелось бы по другому поступить.У PICа есть неиспользуемые входы-выходы,cформировать на одном из них програмно сигнал 1КГЦ,поотом проинтегрировать и пустить на модулятор.Получилось бы компактно,к чему и стремлюсь.Программатор есть,одна беда-никогда не занимался написанием программ для PICов.Помогите пожалуйста в этом деле.Прошивка и кусок схемы сдесь,взяты со странички Александра Мусатова:Заранее благодарен за помощь. |
Sniper007 24/10/2006 07:57 |
Тебе надо сделать подпрограмму задержки, которая каждый 0,001 сек (то есть при тактовой частоте в 10МГц каждые 10000 циклов), генерирует высокий уровень на одном из входов. Примерно так это будет выглядеть
Zvyk bsf Port_b,3 call delay bcf Port_b,3 call delay goto zvyk delay movlw Ah (эту цифру надо будет скорректировать) movwf scratch1 loop movlw 0FFh movwf scratch loop1 decfsz scratch goto loop1 decfsz scratch1 goto loop retlw 0 Добавлено 24/10/2006 09:01 Не забудь прописать все переменные: scratch, scratch1 |
loony 24/10/2006 10:23 |
Спасибо огромное,Sniper007 . |
Sniper007 24/10/2006 12:53 |
Я бы сам скорректировал, но PIC16F84 на 10МГц у меня нет - только на 4МГц, на нем попробовал - получились прямоугольные импульсы. Но испытывал я только подпрограмму, остальную прошивку не проверял. Если не получится напиши, я скорректирую всю программу целиком, а ты уж у себя проверишь.
Да и еще у тебя выход звука должен по нажатию кнопки появится или сразу по запуску? |
loony 25/10/2006 10:25 |
Sniper007,появление звука без разницы,это ведь предполагается использовать в сигнал-генераторе для ремонта телевизоров,жду результатов твоего труда. |
Sniper007 26/10/2006 12:43 |
Блин. Беда пришла откуда не ждали. Свободные контакты на контроллере остались, а вот свободного места нет. Ассемблер дерется, говорит что переменные вышли за пределы памяти.
Обнаружил несколько дублирующих инструций. Убрал - больше не дерется. Попробуй залить. Как подстроить частоту написал выше, в исходнике задай в поиске "goto zvyk" найдешь подпрограмму. Возможно что не заработает. Знач по идее, запуск должен произойти по нажатию кнопки на порте 3, выход произойдет в порт 4 |
loony 27/10/2006 11:58 |
Sniper007,спасибо за труды,испробую-отпишусь |
loony 03/11/2006 21:25 |
Чего-то не заработало.Стало все по другому(из всех полей генератор стал формировать только клетки ,меандр не пояляется по нажатиюкнопки на порте 3,зато при нажатии пропадают сигналы R-G-B). |
China 06/11/2006 08:41 |
loony, и не пытайся даже. Отдельно это исправление работало бы, вкупе с родной программой не будет. |
DEE 07/11/2006 09:24 |
Сам разработчик на вопрос о добавлении звука однозначно ответил "НЕТ". Причина - исчерпана программная память. |