Показать сообщение отдельно
Старый 14.06.2016, 15:28   #17
rz6his Меню Пользователя
Вступил в клуб
 
Регистрация: 18.12.2014
Сообщений: 21
По умолчанию Re: Эмулятор брелка

Cделал так,но не работает,почему?

Цитата:
Сообщение от russo_turisto
Переназначаются порты здесь

PHP код:
#define RT 4                //выход на передатчик
#define RT_HI GPIO|=(1<<RT)        //для инверсного передатчика RT_LO GPIO|=(1<<RT)
#define RT_LO GPIO&=~(1<<RT)    //для инверсного передатчика RT_HI GPIO&=~(1<<RT)
#define RT_TOGGLE GPIO^=(1<<RT)

#define SW 3                    //выход на свитч, при 1 включается передача
#define SW_HI GPIO|=(1<<SW)        //
#define SW_LO GPIO&=~(1<<SW)    //

#define BUT_1 0
#define BUT_1_STATE (GPIO&(1<<BUT_1)) //кнопка 1

#define BUT_2 1
#define BUT_2_STATE (GPIO&(1<<BUT_2)) //кнопка 2

#define BUT_3 2
#define BUT_3_STATE (GPIO&(1<<BUT_3)) //кнопка 3

#define BUT_4 5
#define BUT_4_STATE (GPIO&(1<<BUT_4)) //кнопка 4 
И нужно будет переназначить пины на вход-выход. Кнопки это вход, а SW и RT это выход
[PHP]
TRISIO = 0b11100111;//GP0 выход передатчика,
//GP1 выход свитча

IOCB = 0b00100111; //разрешение прерываний по изменению на GP0-GP5
Смотри даташиит на контролер. Есть на русском в сети

rz6his вне форума   Ответить с цитированием