приемник сигналов от ИК-пульта (PIC12F629). Часть 1
Re: приемник сигналов от ИК-пульта (PIC12F629)
А вот если делать, чтобы все выходы работали в режиме триггера, то программу надо так изменять?
- rhf-admin
- администратор, спонсор, писатель, дизайнер, инженер, программист, идеолог
- Сообщения: 3060
- Зарегистрирован: 25 авг 2009, 23:19
- Откуда: Уфа
- Контактная информация:
Re: приемник сигналов от ИК-пульта (PIC12F629)
Так то это рабочий вариант и эта программа будет принимать сигнал от пульта и делать то, что ты от неё хочешь. Вопрос только, ЧТО ты хочешь.
"в режиме триггера" - что имеется ввиду?
Какой ожидается результат? Что должно произойти?
"в режиме триггера" - что имеется ввиду?
Код: Выделить всё
movlw b'00000001'
xorwf GPIO,F
Код: Выделить всё
movlw b'00000010'
xorwf GPIO,F
Код: Выделить всё
movlw b'000000011'
xorwf GPIO,F
Код: Выделить всё
movlw b'00000100'
xorwf GPIO,F
С уважением, администрация сайта.
Re: приемник сигналов от ИК-пульта (PIC12F629)
Нажимаем на первую кнопку-загорается первый светодиод, нажимаем на первую кнопку еще раз-первый светодиод гаснет, и так все 4 выхода.
- rhf-admin
- администратор, спонсор, писатель, дизайнер, инженер, программист, идеолог
- Сообщения: 3060
- Зарегистрирован: 25 авг 2009, 23:19
- Откуда: Уфа
- Контактная информация:
Re: приемник сигналов от ИК-пульта (PIC12F629)
Ну тады всё верно, кроме одного. Номер выхода (GP0, GP1 GP2...) - это номер бита в регистре GPIO.
0-й бит - нога GP0, 1-й бит - нога GP1 ... То есть, чтобы инвертировать выход GP3, например, надо делать не xor GPIO и 00000011, а xor GPIO и 00001000.
То есть, учитывая, что 1-й диод у нас висит на GP0, 2-й на GP1, 3-й на GP2 и 4-й на GP4, код для инвертирования их состояний будет выглядеть так:
1-й выход:
2-й выход:
3-й выход:
4-й выход:
0-й бит - нога GP0, 1-й бит - нога GP1 ... То есть, чтобы инвертировать выход GP3, например, надо делать не xor GPIO и 00000011, а xor GPIO и 00001000.
То есть, учитывая, что 1-й диод у нас висит на GP0, 2-й на GP1, 3-й на GP2 и 4-й на GP4, код для инвертирования их состояний будет выглядеть так:
1-й выход:
Код: Выделить всё
movlw b'00000001'
xorwf GPIO,F
Код: Выделить всё
movlw b'00000010'
xorwf GPIO,F
Код: Выделить всё
movlw b'000000100'
xorwf GPIO,F
Код: Выделить всё
movlw b'000010000'
xorwf GPIO,F
С уважением, администрация сайта.
Re: приемник сигналов от ИК-пульта (PIC12F629)
Блин, точно, перепутал) Спасибо)
Re: приемник сигналов от ИК-пульта (PIC12F629)
А откуда число 253 в номере системы?
- rhf-admin
- администратор, спонсор, писатель, дизайнер, инженер, программист, идеолог
- Сообщения: 3060
- Зарегистрирован: 25 авг 2009, 23:19
- Откуда: Уфа
- Контактная информация:
Re: приемник сигналов от ИК-пульта (PIC12F629)
29=11101 и плюс спереди дописываем 2 старт бита (которые всегда равны 1) и 1 управляющий бит (который равен 1 при однократном нажатии), вот и получается 11 1 11101=253
С уважением, администрация сайта.
Re: приемник сигналов от ИК-пульта (PIC12F629)
Значит, если я использую номер системы 0, то вместо 253 пишу 14? Верно?
- rhf-admin
- администратор, спонсор, писатель, дизайнер, инженер, программист, идеолог
- Сообщения: 3060
- Зарегистрирован: 25 авг 2009, 23:19
- Откуда: Уфа
- Контактная информация:
Re: приемник сигналов от ИК-пульта (PIC12F629)
Нет, 224=11 1 00000
С уважением, администрация сайта.
Re: приемник сигналов от ИК-пульта (PIC12F629)
Добрый день! А по какому принципу построен приемник?- при нажатии и отпускании диод продолжает гореть или перестает?