Członek VIP
QT251 (16 portów seryjnych 4 portów sieciowych)
QT251N to wysokowydajny 32-bitowy MPU oparty na architekturze RISC
Szczegóły produktu
Specyfikacja produktu QT251
I. Przegląd produktu
QT251N to wysokowydajny 32-bitowy MPU oparty na architekturze RISC. Procesor jest układem hierarchicznym z ARMCortex-A8 w rdzeniu, wbudowanym współprzetwarzaniem strumienia większości strumienia NEON Single Command Stream (SIMD), pamięcią podręczną 256KBL2 z kodem korekcji błędów (ECC), obsługującym częstotliwości do 1 GHz. System zapewnia komunikację RS458 / RS232, przewodową komunikację sieciową, magistralę CAN, a także opcjonalną bezprzewodową komunikację GPRS, o niewielkiej wielkości, niskim zużyciu energii, wysokiej wydajności i innych cech, nadających się do koncentratorów mocy, HMI、 Kontrola przemysłowa, brama itp.
II. Charakterystyka produktu
1. Charakterystyka sprzętu
Procesor AM355xCPU:
Architektura 32bitARMCorte-A8, częstotliwość główna 800 MHz, 1,6 MIPS / MHz, maksymalna częstotliwość główna 1 GHz
32KBI-cache, 32KBD-cache, współprocesor NeonSIMD
Pamięć:
512MbyteDDR3, 64KB pamięci RAM dedykowanej
Flash:
512MbyteNANDFlash, Wsparcie maksymalne 8Gbyte
Obsługa NAND, NOR i SRAM
Szyfrowanie:
Wsparcie szyfrowania PRNG/DES/3DES/AES/SHA/HMAC, szyfrowanie do 256 bitów
Pies strażnik:
Wbudowany WDT, czas przelewania krótszy niż 60 sekund, obsługa budzenia i wyłączania budzenia
RTC:
Zegar w czasie rzeczywistym z wbudowaną baterią
Połączenie:
1 port seryjny jest portem konsoli systemowej. Prędkość przepływu: 115200, bit danych: 8, bit zatrzymania: 1, bit weryfikacji: żaden, kontrola przepływu: żaden
Wskazówki RS485/RS232:
8 kanałów niezależnej komunikacji RS485, wewnętrzna konstrukcja całkowicie izolowana
8 kanałów RS485 / RS232 część czasu wielokrotnej komunikacji, może być używany w zależności od rzeczywistego wyboru, wewnętrzna konstrukcja ochrony w pełni izolowanej
Kod B jest odpowiedni:
1 kanał odbioru RS485, dedykowany do pary kodów B, automatyczne parowanie po podłączeniu
Możesz:
1-kanałowa komunikacja CAN, wbudowana konstrukcja ochrony izolacyjnej
Wejście wyjściowe przełącznika:
2 wyjścia podwójnego przekaźnika podwójnego rzucania
2 wejścia przełącznika
Sieć:
4 kanały 10M / 100M Adaptywny Ethernet przemysłowy, standardowy interfejs RJ45
Ochrona 15KVTVS, całkowita izolacja wewnętrzna
Funkcje bezprzewodowe (opcjonalne):
Pasmo częstotliwości radiowej 800/900/1800/1900MHz (opcjonalnie 2/3/4G)
Opcjonalny Wi-Fi: Można podłączyć AP lub AP
1 złącze karty SIM, 1 złącze anteny
Prędkość transmisji: osiągnięcie standardowej prędkości dla odpowiedniej funkcji
Karta SDCARD:
Wbudowany interfejs karty SD/MMC
Zasilanie:
Napięcie wejściowe: 220V, wspiera prąd zmienny, prąd stały
Pożywanie: <12W
Charakterystyka mechaniczna
Materiał metalowy obudowy
Rozmiar: 1U
Ochrona: IP63
Środowisko pracy
Temperatura robocza: -40 ℃ ~ + 85 ℃
Wilgotność robocza: 5% ~ 95%
2. Cechy oprogramowania
2.1 Charakterystyka systemu
QT251N jest wstępnie zainstalowany system operacyjny Linux oparty na TIAM335x w wersji 3.2.0. Aplikacje spełniające standardy POSIX lub platformy podobne do UNIX. Dla urządzeń sprzętowych specyficznych dla systemu jądro zapewnia prosty i łatwy w użyciu interfejs sterownika, który przyspiesza rozwój aplikacji użytkownika.
System oprogramowania QT251N jest podzielony na trzy części: Bootloader, jądro Linux i
rootfs。 Bootloader jest projektem open source zgodnie z warunkami GPL, UBoot jest głównie uruchamianie jądra, obsługa montażu NFS, uruchamianie NANDFlash; Jądro linuksa jest najniższym poziomem całego systemu operacyjnego, odpowiedzialne za sterowniki całego sprzętu, a także za zapewnienie podstawowych funkcji niezbędnych do różnych systemów; rootfs to metoda używana do określenia struktury plików na dysku lub partycji, czyli metody organizowania plików na dysku.
2.2 Konfiguracja środowiska
System maszyn wirtualnych Ubuntu 10.04 można bezpośrednio skompilować. Nazwa użytkownika: Work
Hasło: 123456
编译命令: arm-linux-gnueabihf-gcc-ofilenamenazwa pliku. w
Łańcuch kompilacji: arm-linux-gnueabihf-4.7.tar.gz dostarczany przez naszą firmę
W środowisku kompilacyjnym, które nie jest dostarczane przez naszą firmę, można skopiować łańcuch kompilacyjny do systemu Linux komputera, po rozpakowaniu łańcucha kompilacyjnego, dodać katalog bin w katalogu korzeniowym do zmiennej środowiska systemu.
Jeśli rozpakować do katalogu /opt/arm-linux-gnu, dodaj zmienną środowiskową:
exportPATH=$PATH:/opt/arm-linux-gnu/bin
Adres pobierania łańcucha kompilacji:
https://pan.baidu.com/s/1nv19D1Z#list/path=%2FWORK%2FCortex A8
2.3 Zarządzanie logowaniem
IP: eth0: 192.168.1.177eth1: 192.168.2.177eth2: 192.168.3.177eth3: 192.168.4.177
Nazwa użytkownika: rootHasło: root
Definicja interfejsu
1. Połączenie zasilania
Rozwiązanie RS485
UWAGA: Kanały 9-16 RS485 i kanały 9-16 RS232 są multipleksami.
Rozwiązanie RS232, CAN
UWAGA: Kanały 9-16 RS232 i 9-16 RS485 są kanałami wielokrotnymi. Odpowiedni interfejs sterownika jest taki sam, jako podział czasu wielokrotnego kanału.
4. Wejście wyjściowe wielkości przełącznika
Uwaga: wyjście przekaźnika jest podwójnym przełącznikiem, jak na poniższym rysunku:
5. Interfejs sieciowy
6. Debugowanie interfejsu
Konfiguracja portu debugowania: częstotliwość przenoszenia: 115200, bit danych: 8, bit zatrzymania: 1, bit weryfikacji: żaden, kontrola przepływu: żaden
Interfejs sterownika RS485/RS232
Interfejs sterownika może być wyświetlony w katalogu /dev.
IV. Przykłady sterowników
W katalogu systemu/program znajduje się odpowiedni plik skryptu, który umożliwia przeprowadzenie kilku prostych testów. Należy upewnić się, że mapowanie portów w pliku startup.sh jest poprawne. Zawartość dokumentu znajduje się w załączniku.
Załącznik:
Zawartość pliku 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
iplinksetcan0typecanbitrate100000
ifconfigcan0up
Zawartość pliku serial.c:
#włączyć#włączyć
#włączyć
#włączyć
#włączyć
#włączyć
#włączyć
#włączyć
#definimax_buffer_size100/*rozmiar bufera*/
/***********************************/intfd1;
flag_zamknięcie;
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); jeśli(sfd==-1){
perror(str); zwrot-1;
}
inne{
*fd=sfd; zwrot0;
}
}
/**************************************************************/intmain(intargc,char*argv[])
{
czas_tTeraz,tStary; Intport;
char
sbuf[]={"12345678901234567890123456789012345678901234567890/n"}; /* Stały
Wysłane dane*/
charsbufrec[256]={0};
intsfd,retv,i,ncount=0,mcount=0; termiosopt strukturalny;
intlength=sizeof(sbuf);
/*****************************************************************
**/
jeśli(argc<2)
{
printf("inputerro:serial<1~4>/n"); zwrot0;
}
**/
/
**/
port=atoi(argv[1]); open_serial(port, &fd1);
/*****************************************************************
printf("readyforsendingdata.../n"); tcgetattr ((fd1, &opt); cfmakeraw(&opt);
/*****************************************************************
cfsetispeed(&opt,B9600); /* ustawienie przepustowości do 9600 bps*/cfsetospeed(&opt,B9600);
/*************************************************** tcsetattr(fd1, TCSANOW, & opt);
podczas ((mcount<5)
{
retv=write(fd1,sbuf,length); /*Wyślij dane*/if(retv==-1){
//perror("pisać"); printf("writeerror/n");
}
inne{
printf("numer znaków jest %d/n",retv);
}
rachunek=0;
printf("readyforreceivingdata.../n");
czas (&tOld); tNow=tStary; rachunek=0;
while((tNow-tOld)<2))/*ustawienie czasu odbioru*/
{
czas (&tNow); retv=read(fd2,&sbufrec[0],1); jeśli(retv==-1){
//perror("czytać");
//printf("errorread/n");
//printf("tOld=%d;tNow=%d/n",tOld,tNow);
}
inne{
printf("%02x",sbufrec[0]); rachunek+=1;
}
}
mcount+=1; printf("/n");
}
flag_close=close(fd1);
if(flag_close==-1)/*关闭口口口*/printf("Zamknij urządzenie1failur!/n");
zwrot0;
}
Zapytanie online
