vip 회원
제품 상세 정보
QT251 제품 규격서
1. 제품 개요
QT251N은 RISC(가상 명령 집합) 아키텍처의 고성능 32비트 MPU를 기반으로 내장된 컴퓨터입니다.이 CPU는 ARMCortex-A8을 핵심으로 하는 시스템급 단일 칩으로 NEON 단일 명령 흐름 다수 흐름(SIMD) 협동 처리가 내장되어 있으며 오류 보정 코드(ECC)가 있는 256KBL2 캐시로 최대 1GHz의 주파수를 지원한다.시스템은 RS458/RS232 통신, 유선 네트워크 통신, CAN 버스를 제공하는 동시에 무선 GPRS 통신도 옵션으로 제공하여 부피가 작고 전력 소비량이 낮으며 효율이 높은 특징을 가지고 있으며 전력 집중기,HMI、산업 통제, 게이트웨이 등의 장소.
2. 제품 특성
1. 하드웨어 특징
AM355xCPU:
32bitARMCorte-A8 아키텍처, 기본 주파수 800MHz, 1.6MIPS/MHz, 최대 기본 주파수 1GHz
32KBI-cache, 32KBD-cache, NeonSIMD 보조 프로세서
메모리:
512MbyteDDR3, 64KB 전용 RAM
플래시:
512MbyteNANDFlash,최대 8Gbyte 지원
NAND, NOR, SRAM 등의 FLASH 지원
암호화:
PRNG/DES/3DES/AES/SHA/HMAC 암호화 지원, 최대 256비트 암호화 모드
문지기:
내장 WDT, 60초 미만의 오버플로우 시간, 유휴 깨우기 및 전원 끄기 깨우기 지원
RTC:
고정밀 라이브 클럭, 내장형 배터리
디버그 포트:
1 번 직렬 포트는 시스템 console 포트입니다.전송 속도: 115200, 데이터 비트: 8, 정지 비트: 1, 검사 비트: none, 흐름 제어: 없음
RS485/RS232는:
8소켓 독립형 RS485 통신, 내부 전체 격리 보호 설계
8소켓 RS485/RS232분 통신 재사용, 실제 선택에 따라 사용 가능, 내부 완전 격리 보호 설계
B 코드가 맞는 경우:
1 번 RS485 수신, B 코드 페어링 전용, 연결 후 자동 페어링
가능:
1소켓 CAN 통신, 격리 보호 설계 내장
스위치 양 출력 입력:
2소켓 쌍칼 쌍던지기 계전기 출력
2소켓 스위치 입력
인터넷:
4소켓 10M/100M 적응형 산업용 이더넷, 표준 RJ45 커넥터
15KVTVS 보호, 내부 전체 격리 보호 설계
무선 기능 (옵션):
무선 대역 800/900/1800/1900MHz(2/3/4G 옵션)
옵션 WIFI: AP 연결 또는 AP
SIM 카드 1개, 안테나 1개
전송 속도: 해당 기능에 대한 표준 속도
SDCARD:
내장형 SD/MMC 카드 커넥터
전원 공급 장치:
입력 전압: 220V, AC, DC 지원
독립 실행형 전력 소비량: <12W
기계적 특성
케이스 금속재질
크기: 1U
보호 수준: IP63
작업 환경
작동 온도: -40 ℃ ~ + 85 ℃
작동 습도: 5~95%
2. 소프트웨어 기능
2.1 시스템 특성
QT251N에는 3.2.0 버전의 TIAM335x 기반 Linux 운영 체제가 사전 설치되어 있습니다.POSIX 표준 또는 범주 UNIX 플랫폼을 충족하는 어플리케이션입니다.커널은 시스템 고유의 하드웨어 장치를 위해 사용자의 어플리케이션 개발을 가속화하는 간단하고 사용하기 쉬운 드라이브 인터페이스를 제공합니다.
QT251N 시스템의 소프트웨어 시스템은 Bootloader, linux 커널 및
rootfs。Bootloader는 GPL 조항을 따르는 오픈 소스 프로젝트로, UBoot는 주로 커널의 부팅을 유도하고 NFS 마운트, NANDFlash 부팅을 지원합니다.linux 커널은 전체 운영 체제의 최하층으로 전체 하드웨어의 구동을 책임지고 각종 시스템에 필요한 핵심 기능을 제공한다.rootfs는 디스크나 파티션의 파일을 식별하는 방법과 데이터 구조입니다. 즉, 디스크에 파일을 구성하는 방법입니다.
2.2 환경 구성
당사가 제공하는 가상 시스템 ubuntu10.04는 직접 컴파일하여 사용할 수 있습니다.사용자 이름: work
비밀번호: 123456
编译命令:arm-linux-gnueabihf-gcc-ofilename파일이름.c
컴파일 체인: 당사가 제공하는 arm-linux-gnueabihf-4.7.tar.gz
당사가 제공하는 컴파일이 아닌 환경에서는 컴파일된 체인을 PC의 LINUX 시스템으로 복사하고, 컴파일된 체인의 압축을 푼 후 루트 디렉토리의 bin 디렉토리를 시스템의 환경 변수에 추가하면 됩니다.
/opt/arm-linux-gnu 디렉토리에 압축을 풀면 환경 변수가 다음과 같이 추가됩니다.
exportPATH=$PATH:/opt/arm-linux-gnu/bin
컴파일된 체인 다운로드 주소:
https://pan.baidu.com/s/1nv19D1Z#list/path=%2FWORK%2FCortexA8
2.3 관리자 로그인
IP : eth0 : 192.168.1.177eth1 : 192.168.2.177eth2 : 192.168.3.177eth3 : 192.168.4.177
사용자 이름: root 암호: root
3. 인터페이스 정의
1. 전원 커넥터
2.RS485 커넥터
참고: RS485 9~16 채널과 RS232 9~16 채널은 재사용 채널입니다.
3.RS232, CAN 인터페이스
참고: RS232 9~16채널과 RS485의 9~16채널은 재사용 채널입니다.해당 드라이브 인터페이스는 시간 분할 재사용 채널로 동일합니다.
4. 스위치량 출력 입력
참고: 릴레이 출력은 다음 그림과 같이 이중 투척 스위치입니다.
5. 네트워크 인터페이스
6. 디버그 인터페이스
디버그 구성: 전송률: 115200, 데이터 비트: 8, 정지 비트: 1, 검증 비트: none, 흐름 제어: 없음
7.RS485/RS232 드라이브 커넥터
드라이버 인터페이스는 관리자의 /dev 디렉토리에서 볼 수 있습니다.
4. 구동 인스턴스
시스템의 /program 디렉터리에 해당하는 스크립트 파일이 있어 간단한 테스트를 할 수 있습니다.여기서 startup.sh 파일에서 포트가 제대로 매핑되었는지 확인합니다.문건의 내용은 부록을 참조하시오.
부록:
1. 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의
2. serial.c 파일 내용:
#포함#포함
#포함
#포함
#포함
#포함
#포함
#포함
#definemax_buffer_size100/*버퍼 사이즈*/
/****************************************/intfd1;
인트플래그_클로즈;
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;return 0;
}
}
/********************************************************************/intmain(intargc, char*argv[])
{
time_ttNow, t오래된;인포트;
char
sbuf[]={"12345678901234567890123456789012345678901234567890/n"};/* 고정
전송된 데이터 * /
charsbufrec[256]={0};
intsfd, retv, i, ncount=0, mcount=0;structtermiosopt;
intlength=sizeof(sbuf);
/*****************************************************************
**/
만약(argc<2)
{
printf("입력: 시리얼 <1~4>/n");return 0;
}
**/
/
**/
port=atoi(argv[1]);open_serial(포트, &fd1);
/*****************************************************************
printf("readyforsendingdata.../n");tcgetattr (fd1, & 옵트);cfmakeraw(&선택);
/*****************************************************************
cfsetispeed(&opt,B9600);/* 전송률을 9600bps*/cfsetospeed(&opt, B9600)로 설정합니다.
/***************************************************** tcsetattr (fd1, TCSANOW, & 선택);
동안(mcount<5)
{
retv=write(fd1,sbuf,length);/* 데이터 전송*/if(retv==-1) {
//perror("쓰기");printf("writeerror/n");
}
다른 {
printf("thenumberofcharsentis%d/n",retv);
}
ncount=0;
printf("readyforreceivingdata.../n");
시간 (&tOld);tNow=t오래된;ncount=0;
while((((tNow-tOld)<2))/* 수신 제한 시간 설정*/
{
시간 (&tNow);retv = 읽기 (fd2, & sbufrec [0],1);if(retv==-1)
//perror("읽기");
//printf("errorread/n");
//printf("tOld=%d;tNow=%d/n",tOld,tNow);
}
다른 {
printf("%02x",sbufrec[0]);ncount+=1;
}
}
mcount+=1;printf("/n");
}
flag_close=close(fd1);
if(flag_close==-1)/* 포트 */printf("ClosetheDevice1failur!/n");
return 0;
}
온라인 조회
