Член VIP
QT251 (16 серійних портів, 4 мережеві порти)
QT251N - вбудований комп'ютер з високопродуктивним 32-бітним MPU на основі архітектури RISC
Подробиці про продукт
Специфікація QT251
1. Огляд продукту
QT251N - вбудований високопродуктивний 32-розрядний MPU, заснований на архітектурі RISC. Цей процесор є системним чипом на основі ARMCortex-A8 з вбудованою кооперацією NEON Single Command Stream Majority (SIMD), кешом 256KBL2 з кодом виправлення помилок (ECC) з частотою до 1 ГГц. Система забезпечує зв'язок RS458 / RS232, провідний мережевий зв'язок, CAN-шина, а також надає необхідний бездротовий зв'язок GPRS, який має невеликий розмір, низьке споживання енергії, високу ефективність та інші особливості, підходить для концентратора енергії, HMI、 Промислове управління, шлюзи тощо.
Характеристики продукту
1. Характеристики апаратного забезпечення
Процесор AM355xCPU:
Архітектура 32bitARMCorte-A8, основна частота 800 МГц, 1.6MIPS / МГц, максимальна основна частота 1 ГГц
32KBI-кеш, 32KBD-кеш, копроцесор NeonSIMD
Пам' ять:
512 Мбайт DDR3, 64 Кб спеціальної оперативної пам'яті
ФЛАШ:
512MbyteNANDFlash, Максимальна підтримка 8Gbyte
Підтримка NAND, NOR і SRAM
Шифрування:
Підтримка шифрування PRNG/DES/3DES/AES/SHA/HMAC, до 256-бітного режиму шифрування
Собака охорона:
Вбудований WDT, час переповнення менше 60 секунд, підтримка вільного пробудження та вимикання пробудження
RTC:
Високоточні годинники реального часу з вбудованою батареєю
Порт налаштування:
Серійний порт 1 є портом системної консолі. Швидкість портування: 115200, біти даних: 8, біт зупинки: 1, біт перевірки: немає, контроль потоку: немає
RS485 і RS232:
8 каналів незалежного зв'язку RS485 з повною внутрішньою ізоляцією
8 каналів RS485 / RS232 Час мультиплекс зв'язку, може бути використаний відповідно до фактичного вибору, внутрішня повністю ізольована конструкція захисту
В правильному випадку:
1-канальний прийом RS485, спеціальний для пара B-коду, автоматична пара після підключення
Можна:
1 канал зв'язку CAN, вбудована конструкція ізоляційного захисту
Вхід вимикача:
2-шляховий вихід подвійного реле
2-канальний вхід вимикача
Мережа:
4-канальний 10M / 100M адаптивний промисловий Ethernet, стандартний інтерфейс RJ45
15KVTVS захист, внутрішня повна ізоляція захисту конструкції
Бездротові функції (необов'язково):
Радіочастотний діапазон 800/900/1800/1900MHz (опційно 2/3/4G)
Додатковий Wi-Fi: можна підключити AP або AP
1 SIM-карта, 1 антенна
Швидкість передачі: досягнення стандартної швидкості для відповідних функцій
СДКАРТА:
Вбудований інтерфейс SD / MMC-карти
Сила живлення:
Вхідна напруга: 220В, підтримка змінного струму, постійного струму
Потужність: <12W
Механічні характеристики
Металевий матеріал корпусу
Розмір: 1U
Захист: IP63
Робоче середовище
Робоча температура: -40 ℃ ~ + 85 ℃
Робоча вологість: 5% ~ 95%
2. Особливості програмного забезпечення
2.1 Характеристики системи
QT251N попередньо встановлена операційна система Linux на основі TIAM335x, версія 3.2.0. Додатки, що відповідають стандартам POSIX або платформам типу UNIX. Для апаратних пристроїв, специфічних для системи, ядро забезпечує простий і зручний в використанні інтерфейс драйвера, який прискорює розробку додатків користувача.
Програмна система QT251N розділена на три частини: Bootloader, ядро Linux і
rootfs。 Bootloader - це проект з відкритим кодом, що відповідає умовам GPL, UBoot в основному завантажує завантаження ядра, підтримує монтаж NFS, завантаження NANDFlash; Ядро Linux є найнижчим рівнем всієї операційної системи, відповідає за драйвери всього апаратного забезпечення, а також за забезпечення основних функцій, необхідних для різних систем; rootfs - це метод, який використовується для визначення структури файлів на диску або розділі, тобто метод організації файлів на диску.
2.2 Конфігурація навколишнього середовища
Компанія пропонує систему віртуальних машин Ubuntu 10.04, яку можна компілювати безпосередньо для використання. Ім'я користувача: Work
Пароль: 123456
编译命令: arm-linux-gnueabihf-gcc-ofilenameімя файлу. в
Компіляційний ланцюг: arm-linux-gnueabihf-4.7.tar.gz, наданий компанією
У середовищі компіляції, яке не надається компанією, копіюйте ланцюг компіляції на систему Linux ПК, після розпакування ланцюга компіляції, просто додайте каталог bin в корінньому каталогу до змінних середовища системи.
Якщо розпакувати в каталог /opt/arm-linux-gnu, додайте змінну середовища таким чином:
exportPATH=$PATH:/opt/arm-linux-gnu/bin
Адреса завантаження ланцюга компіляції:
https://pan.baidu.com/s/1nv19D1Z#list/path=%2FWORK%2FCortex А8
2.3 Управління реєстрацією
IP: eth0: 192.168.1.177eth1: 192.168.2.177eth2: 192.168.3.177eth3: 192.168.4.177
Ім'я користувача: root Пароль: root
Визначення інтерфейсу
1. Інтерфейс живлення
2.RS485 інтерфейс
Примітка: 9-16 канали RS485 і 9-16 канали RS232 є мультиплексними каналами.
RS232, CAN інтерфейс
Примітка: 9-16 канали RS232 і 9-16 канали RS485 є мультиплексними каналами. Відповідний інтерфейс драйвера є одним і тим самим, і є частковим каналом.
4. Вхід вимикача
Примітка: вихід реле є подвійним перемикачем, як на малюнку нижче:
5. Мережевий інтерфейс
6. Відладка інтерфейсу
Конфігурація порту налаштування: швидкість портування: 115200, біт даних: 8, біт зупинки: 1, біт перевірки: ні, контроль потоку: ні
Інтерфейс драйвера RS485/RS232
Інтерфейс драйвера можна переглянути в каталогу /dev на керівнику.
IV. Приклади драйверів
Відповідний файл скрипту знаходиться в каталогу System/program, де можна провести деякі прості тести. Переконайтеся, що файл startup.sh має правильне відображення порту. Зміст документа див. Додаток.
Додаток:
Зміст файлу startup.sh:
#!/bin/sh
ln-sf/dev/ttyCH0/dev/ttyS1
ln-sf/dev/ttyCH1/dev/ttyS2
Ln-sf / dev / ttyCH2 / dev / ttyS3
Ln-sf / dev / ttyCH3 / dev / ttyS4
ln-sf/dev/ttyCH4/dev/ttyS5
ln-sf/dev/ttyCH5/dev/ttyS6
ln-sf/dev/ttyCH6/dev/ttyS7
ln-sf/dev/ttyCH7/dev/ttyS8
ln-sf/dev/ttyCH8/dev/ttyS9
ln-sf/dev/ttyCH9/dev/ttyS10
ln-sf / dev / ttyCH10 / dev / ttyS11
ln-sf / dev / ttyCH11 / dev / ttyS12
ln-sf / dev / ttyCH12 / dev / ttyS13
ln-sf / dev / ttyCH13 / dev / ttyS14
ln-sf/dev/ttyCH14/dev/ttyS15
ln-sf / dev / ttyCH15 / dev / ttyS16
ln-sf/dev/ttyO1/dev/ttyS17
iplinksetcan0типCanbitrate100000
ifconfigcan0up
Зміст файлу serial.c:
#включення#включення
#включення
#включення
#включення
#включення
#включення
#включення
#definemax_buffer_size100/*розмір буфера*/
/***********************************************************************************************************************************************************
intflag_close;
intopen_serial ((intk,int*fd)
{
intsfd=-1; charstr[100];
sprintf(str,"/dev/ttyS%d",k); printf("open%s/n",str);
sfd=open(str,O_RDWR|O_NOCTTY|O_NONBLOCK); if(sfd==-1){
perror(str); повернення-1;
}
інші {
*fd=sfd; повернення0;
}
}
/*********************************************************************************************************************************************************************************************************
{
time_ttNow,tСтарий; інпорт;
char
sbuf[]={"12345678901234567890123456789012345678901234567890/n"}; /* фіксований
Відправлені дані*/
charsbufrec[256]={0};
intsfd,retv,i,ncount=0,mcount=0; Структурний терміосопт;
intlength=sizeof(sbuf);
/*****************************************************************
**/
якщо(argc<2)
{
printf("inputerro:serial<1~4>/n"); повернення0;
}
**/
/
**/
port=atoi(argv[1]); open_serial(порт, &fd1);
/*****************************************************************
printf("readyforsendingdata.../n"); tcgetattr ((fd1, &opt); cfmakeraw(&опцію);
/*****************************************************************
cfsetispeed(&opt,B9600); /* встановити частоту портування на 9600bps*/cfsetospeed(&opt,B9600);
/************************************************************************************************************************************************************************************************************
while(mcount<5)
{
retv=write(fd1,sbuf,length); /*Відправка даних*/if(retv==-1){
//perror("написати"); printf("writeerror/n");
}
інші {
printf("thenumberofcharsentis%d/n",retv);
}
cd=0;
printf("готовий до отримання даних.../n");
час (&tOld); tNow=tСтарий; cd=0;
while(((tNow-tOld)<2))/*Налаштування закінчення часу прийому*/
{
час (&tNow); retv=read(fd2,&sbufrec[0],1); if(retv==-1){
//perror("читати");
//printf("errorread/n");
//printf("tOld=%d;tNow=%d/n",tOld,tNow);
}
інші {
printf("%02x",sbufrec[0]); c) + = 1;
}
}
mcount+=1; printf("/n");
}
flag_close=close(fd1);
if(flag_close==-1)/*关闭口端口*/printf("Закритипристрой1failur!/n");
повернення0;
}
Інтернет-дослідження
