ЗАО «ЗЭО»

Техническая поддержка пользователей => Тион, Тион-Про, Тион-Про v2, Сириус => Тема начата: Snar от 16 Апреля, 2010, 12:37:39

Название: EGPIO3
Отправлено: Snar от 16 Апреля, 2010, 12:37:39
Есть плата Тион-проV2 рев.1 Пытаюсь использовать линию EGPIO3 для управления потоком RS485. Есть модуль ядра (там один в один из gpio_toggle_2) который управляет линией, проверил его с EGPIO5 - работает, с EGPIO3 не хочет. Как заставить работать EGPIO3?
Название: Re: EGPIO3
Отправлено: asv от 16 Апреля, 2010, 16:44:18
EGPIO3 управляется автоматически, см. EP93xx User's Guide стр. 16-1 (577).
Название: Re: EGPIO3
Отправлено: Snar от 17 Мая, 2010, 15:41:53
Дабы не плодить лишних тем, спрошу здесь. Пытаюсь прицепить с COM3 на Тионе Про2 изолированный интерфейс RS485. С передачей из Тиона все ОК, а с приемом пока никак, в буфере приема одни нули хотя  кол-во присланных байт верно, может подскажите где грабли?  Привожу код:
Инициализация:
---------------------------------------------------------------
RS=open("/dev/ttyAM2",O_RDWR | O_NOCTTY | O_NDELAY);
        if (RS>0)
        {

            printf("open RS485 \n");
            tcgetattr(RS,&attr);
            bzero(&attr,sizeof(attr));
            attr.c_cflag|= B38400 | CS8 |CLOCAL |CREAD;
            cfsetispeed(&attr,B38400);
            cfsetospeed(&attr,B38400);
            attr.c_iflag=IGNPAR;
            attr.c_oflag=0;
            attr.c_lflag=0; //no canonical no echo
            attr.c_cc[VTIME] =0; //inter character timer unused
            attr.c_cc[VMIN]=0;  //bloking read until 5 chars received
            tcflush(RS,TCIFLUSH);
            tcsetattr(RS,TCSANOW,&attr);
        }
-------------------------------------------------------------------------
Чтение:
int bytesreceived,i;
char readbytes[255];

bytesreceived=read(RS,readbytes,1);
            printf("bytes to read %i \n",bytesreceived);
            if (bytesreceived>0)
            {
               
                printf("read from RS485 \n");
                printf("-------------------------------------------------------------------------------------\n");
                for (i=0;i!=bytesreceived;i++)
                    {
                        printf("%d \n",readbytes);
                    }
            }
Может я не так настраиваю порт? 38400,n,1
Название: Re: EGPIO3
Отправлено: asv от 17 Мая, 2010, 15:51:44
У вас нет конфликта с передатчиком RS485 или RS232, которые стоят на плате Тион-Про2?
Название: Re: EGPIO3
Отправлено: Snar от 17 Мая, 2010, 16:38:31
данные наблюдаю осциллографом на контакте 13 разъема X11, тем не менее с интересом послушаю Ваши советы по поводу конфликтов
Название: Re: EGPIO3
Отправлено: asv от 17 Мая, 2010, 16:52:31
Вы сняли перемычку X26, X28 и замкнули X27?

См. стр. 34
http://www.zao-zeo.ru/media/files/docs/tion-pro2-v1.3.pdf
Название: Re: EGPIO3
Отправлено: Snar от 18 Мая, 2010, 11:38:46
у меня этих перемычек нет, плата Тион Про V2 рев1. Как быть?
Название: Re: EGPIO3
Отправлено: asv от 18 Мая, 2010, 12:36:10
Если rev1, то
1. DD9.12 у вас должен быть вырезан
2. R224 (к DD10) нужно убрать и R225 (на землю) можно убрать
Название: Re: EGPIO3
Отправлено: asv от 18 Мая, 2010, 12:41:47
Но на rev1 должно работать и так, X11.13 напрямую соединён с процессором.
Тот 485, который на плате Тион-Про2, он работает?