|
Если взять то что в функциях и вставить вместо самих функций все функционирует :(
Делается следующее - во регистр некоего внешнего устройства чето записавается (0х55) а затем считывается и сравнивается - в результате светиться одна из лампочек
while (1)
{
write730(00, 0x55);
read730(00, b);
if (b == 0x55)
{
PORTE = 0x0f;
}
else
{
PORTE = 0x5f;
};
};
void read730(char addr, char buf)
{
DDRA = 0x00; //all pins in
PORTG = 0x1f; //all signal not active
PORTC = addr; //set adress
PORTG = 0x17; //set CS
buf = PINA; //read data
PORTG = 0x1f; //interface inactive
}
void write730(char addr, char buf)
{
PORTC = addr; //set adress
DDRA = 0xff; //all pins out
PORTA = buf; //set data
PORTG = 0x1e; //WR active
PORTG = 0x16; //set CS
PORTG = 0x1e; //CS gone
DDRA = 0x00; //all pins in
PORTG = 0x1f; //all signal not active
}
E-mail: info@telesys.ru