i.MX6超强功能处理器,支持单核,双核和四核,同时支持高清编解码两路高清视频播放:两路720P高清视频播放(同步或者异步)。 ubuntu12.04操作系统:广泛应用的Ubuntu12.04操作系统,直接安装已有的Ubuntu12.04应用软件即可。用IMX6Q的硬件编解码单元VPU对视频进行H.264编码保存,搭建嵌入式FTP服务器提供视频下载的传输服务。对运动目标进行检测与跟踪,开发智能检测算法,协助安全人员监控。广告*解码板(核心板+底板)可解1080P高清视频,具有输出HDMI 1080P的功能,只要接上屏线、高压控制线及电源即可直接驱动1366*分辨率768及其以下的屏幕,无须再另外加驱动板;驱动1920x1920 FULL HD LCD 亦只需增加一个HDMI 接口的驱动板即可。此款广告*集3路USB口、SD卡、网络接口、WIFI接口于一体,其优点是可以在局域网内高速传输下载广告内容,方便集中管理,方便及时发布信息。
功能列表: 处理器 | Freescale’s i.MX6Q CPUs: ARM Cortex A9, each @ 1GHz | | | | | | | | HDMI高清输出,显示支持1920x1080x60HZ ,视频播放最大支持1080P,两路异步视频播放最大支持720P。 | | 显示支持1920x1080x60HZ ,视频播放最大支持1080P,,两路异步视频播放最大支持720P。 | | | | | | | | | | | | | | |
实物
RS485算法
- 1 #include <stdio.h>
- 2 #include <string.h>
- 3 #include <unistd.h>
- 4 #include <sys/types.h>
- 5 #include <sys/stat.h>
- 6 #include <fcntl.h>
- 7 #include <termios.h>
- 8 #include <errno.h>
- 9 #include <poll.h>
- 10
- 11 int set_opt(int fd,int nSpeed, int nBits, char nEvent, int nStop)
- 12 {
- 13 struct termios newtio,oldtio;
- 14 if ( tcgetattr( fd,&oldtio) != 0) {
- 15 perror("SetupSerial 1");
- 16 return -1;
- 17 }
- 18 bzero( &newtio, sizeof( newtio ) );
- 19 newtio.c_cflag |= CLOCAL | CREAD;
- 20 newtio.c_cflag &= ~CSIZE;
- 21
- 22 switch( nBits )
- 23 {
- 24 case 7:
- 25 newtio.c_cflag |= CS7;
- 26 break;
- 27 case 8:
- 28 newtio.c_cflag |= CS8;
- 29 break;
- 30 }
- 31
- 32 switch( nEvent )
- 33 {
- 34 case 'O':
- 35 newtio.c_cflag |= PARENB;
- 36 newtio.c_cflag |= PARODD;
- 37 newtio.c_iflag |= (INPCK | ISTRIP);
- 38 break;
- 39 case 'E':
- 40 newtio.c_iflag |= (INPCK | ISTRIP);
- 41 newtio.c_cflag |= PARENB;
- 42 newtio.c_cflag &= ~PARODD;
- 43 break;
- 44 case 'N':
- 45 newtio.c_cflag &= ~PARENB;
- 46 break;
- 47 }
- 48
- 49 switch( nSpeed )
- 50 {
- 51 case 2400:
- 52 cfsetispeed(&newtio, B2400);
- 53 cfsetospeed(&newtio, B2400);
- 54 break;
- 55 case 4800:
- 56 cfsetispeed(&newtio, B4800);
- 57 cfsetospeed(&newtio, B4800);
- 58 break;
- 59 case 9600:
- 60 cfsetispeed(&newtio, B9600);
- 61 cfsetospeed(&newtio, B9600);
- 62 break;
- 63 case 115200:
- 64 cfsetispeed(&newtio, B115200);
- 65 cfsetospeed(&newtio, B115200);
- 66 break;
- 67 case 460800:
- 68 cfsetispeed(&newtio, B460800);
- 69 cfsetospeed(&newtio, B460800);
- 70 break;
- 71 default:
- 72 cfsetispeed(&newtio, B9600);
- 73 cfsetospeed(&newtio, B9600);
- 74 break;
- 75 }
- 76 if( nStop == 1 )
- 77 newtio.c_cflag &= ~CSTOPB;
- 78 else if ( nStop == 2 )
- 79 newtio.c_cflag |= CSTOPB;
- 80 newtio.c_cc[VTIME] = 0;
- 81 newtio.c_cc[VMIN] = 0;
- 82 tcflush(fd,TCIFLUSH);
- 83 if((tcsetattr(fd,TCSANOW,&newtio))!=0)
- 84 {
- 85 perror("com set error");
- 86 return -1;
- 87 }
- 88
- 89 // printf("set done!\n\r");
- 90 return 0;
- 91 }
- 92 int main(int argc , char **argv)
- 93 {
- 94 int fd,wr_static,ret,nread,count=0;
- 95 char *buffer = "hello world!\r\n";
- 96 char buff[8];
- 97 int i;
- 98
- 99 if(argc < 3)
- 100 printf("Usage ...");
- 101
- 102 printf("\r\n uart__test start\r\n");
- 103
- 104 char *uart = argv[1];
- 105
- 106 if((fd = open(uart, O_RDWR|O_NOCTTY|O_NDELAY))<0){
- 107 printf("open %s is failed",uart);
- 108 }
- 109 else {
- 110 printf("open %s is success\n",uart);
- 111 set_opt(fd, 115200, 8, 'N', 1);
- 112 }
- 113
- 114 if(atoi(argv[2]) == 0)
- 115 {
- 116 while(1){
- 117 if (ret == 0)
- 118 printf("write time out\n");
- 119 else{
- 120 ret = write(fd,buffer, strlen(buffer));
- 121 sleep(1);
- 122 }
- 123 }
- 124 }
- 125
- 126 else if(atoi(argv[2]) == 1)
- 127 {
- 128 memset(buff,0,8);
- 129 while(1){
- 130 while((nread = read(fd,buff,8))>0){
- 131 //count+=nread;
- 132 //printf("count = %d\r\n",count);
- 133 printf("read: ");
- 134 for(i = 0; buff[i] != 0; i++)
- 135 printf("%c",buff[i]);
- 136 printf("\r\n");
- 137 memset(buff,0,8);
- 138 }
- 139 }
- 140 }
- 141
- 142 close(fd);
- 143 return 0;
- 144 }
|