设为首页 | 加入收藏 首页 | 关于我们 | 合作代理 | 样品申请 | 网站地图
咨询热线:0755-83980751
首页 关于我们 产品图片 产品库存 经营品牌 行业资讯 样品申请 客户留言 联系我们
库存搜索:
 热门关键字:
74HC4052D L7808CV L7806CV L7805CV 74HC4052D 74HC244D 74HC164D 
  • 基于S3C44B0X和MF RC500的产品防伪系统设
  • 发布时间:2012-4-20 22:39:30 来源:深圳市科特鑫电子有限公司—专业的电子芯片IC资源网



  • 1 IPCamera系统总体设计
    IPCamera系统的总体设计思路是:采用ARM9作为系统的处理器,利用普通USB摄像头完成图像采集。系统设计一块网卡和一个GPRS模块,用户可以根据需要决定选用其中的一种、或者二种同时使用。手机能够通过GSM网向IPCamera的GPRS发送拍照控制命令,系统会自动将拍下的照片通过 GPRS模块发回给手机;网络用户可以利用telnet协议向IPCamera发送拍照控制命令,然后再利用浏览器查看IPCamera上的照片。
    2 IPCamera的硬件设计
    在设计IPCamera时,考虑到系统的稳定性和成本等因素,因此将系统硬件设计为3个部分,即核心板、主板和GPRS模块,如图1所示。www.51kaifa.com
    核心板采用三星公司生产的S3C2410处理器;SDRAM采用2片HY57V561620AT-H构成64M;将它连接到系统nGCS6,所以它的起始地址为:0x03000000。NAND FLASH 采用SAMSUNG K9F1208芯片,FLASH芯片连接到系统的nGCS0,所以它的起始地址为:0x00000000。要系统从NAND FLASH启动,应将S3C2410的OM0和OM1引脚都接地。
    主板主要是一些接口电路。串行接口采用MAX3232芯片,由于本系统只使用一个串口,所以和S3C2410的TXD0和RXD0相连,构成第一个串口电路。JTAG接口直接由S3C2410处理器控制,只不过在连接电路上要加上接电阻。USB接口电路直接采用S3C2410内部的USB主机控制器,然后接上限流电阻和保险丝和USB插座。网卡采用AX88796-X86芯片,接在BANK2的位置上,所以片选接处理器的nGCS2信号,其地址为 0X200,所以IO_BASE0、IO_BASE1、IO_BASE2三个引脚悬空,中断选用INT2。网卡的逻辑地址是0x10000200。
    GPRS模块采用SIMCOM公司生产的SIM100-E芯片。通过第三个串口信号线TXD2和RXD2和处理器相连接。


    3 IPCamera引导程序、操作系统和驱动程序
    IPCamera引导程序选用韩国Mizi公司开发的vivi。vivi必须经过裁剪、交叉编译、下载到IPCamera等几个过程。首先使用 make menuconfig命令裁剪vivi,然后make命令编译生成vivi的二进制镜像文件,使用的编译器是armv4l-unknown-linux- gcc和armv4l-unknown-linux-as,最后使用JTAG将vivi烧写到IPCamera的flash芯片上。
    考虑到成本,以及系统对实时性的要求不高等因素,所以决定选用Linux操作系统。目前发行的Linux操作系统都能支持ARM机的体系结构,所以只要根据平台的具体结构进行移植。系统移植主要包括建立交叉编译环境、修改内核源码、内核裁剪和内核编译4等个环节。内核裁剪时,要让系统包括 telnet和ftp服务。telnet服务主要实现能够对IPCamera远程操作,ftp服务主要实现IPCamera的文件上传和下载。最后将编译好的内核映象文件利用vivi软件烧写到IPCamera的flash芯片上。www.51kaifa.com
    IPCamera需要串口、USB、视频设备和网卡等多个设备驱动程序[2],由于这些设备都是标准设备,所以可以到厂家去下载相应的设备驱动源程序,然后交叉编译成Linux下的驱动程序,最后通过insmod[3]命令向内核加载驱动程序。如:Linux系统提供了视频设备的内核驱动video4linux(简称V4L),它为视频设备的应用程序编程提供一系列接口函数,所以USB摄像头
    就可以采用V4L驱动程序。
    4 IPCamera应用程序的设计
    IPCamera主要包括3个应用程序,即:USB摄像头拍照、Web服务和GPRS操作控制等程序。这些应用程序都是用C语言来编写,然后通过交叉编译生成可执行文件。
    4.1 USB摄像头拍照程序的设计
    USB摄像头采用video4linux驱动,V4L图像采集的方法有两种,即overlay和mmap。本系统采用mmap,这种方法是通过将设备文件影射到内存的方法,直接通过指针操作内存的方式读取摄像头采集到的图像数据。控制拍照功能函数如下:
    int cap(char * fileName)
    {┅
    /***初始化设备***/
    if (device_init(DEFAULT_DEVICE, &vd, 0, 3) == -1)www.51kaifa.com
    { perror("device_init: failed...");
    return -1; }
    /***内存映射***/
    if (v4l_grab_frame(&vd, 0))
    return -1;
    if (v4l_grab_sync(&vd))
    return -1;
    img = device_get_address(&vd);
    /***读取图像数据***/
    p=img;
    for (i=0;i<PAL_NC_HEIGHT;i++)
    for (j=0;j<PAL_NC_WIDTH;j++)
    { tmpc=*(p);
    *(p)=*(p+2);
    *(p+2)=tmpc;
    p+=3; }
    /***转换图像数据格式,保存为jpg文件***/
    if (write_jpeg(fileName, img, 70, 0))www.51kaifa.com
    return -1;

    }
    4.2 Web服务程序的设计
    Web服务是通过http协议与客户端通信,工作流程如图2所示。http是一个请求、响应协议,即客户端发出一个请求,服务器端则响应这个请求。http利用可靠的TCP协议连接,默认使用80端口。目前市场上有许多Web 服务程序,但要将其移植到本系统中需要一定的工作量,所以可以设计一个简单的Web服务程序。程序的主函数如下:


    图2 Web工作流程图
    int main(int argc, char *argv[])
    {┅
    /*设置信号处理句柄*/
    signal(SIGCHLD, SIG_IGN);
    signal(SIGPIPE, SIG_IGN);

    /*建立TCP流SOCKET.html" target="_blank" title="SOCKET">SOCKET*/
    if (argc > 1 && !strcmp(argv[1], "-i")) {
    fclose(stderr);
    HandleConnect(0);
    exit(0);
    }
    if((s = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP)) == -1) {
    perror("Unable to obtain network");
    exit(1);
    }
    if((setsockopt(s, SOL_SOCKET.html" target="_blank" title="SOCKET">SOCKET, SO_REUSEADDR, (void *)&true,
    sizeof(true))) == -1) {
    perror("setsockopt failed");
    exit(1);
    }
    server_sockaddr.sin_family = AF_INET;
    server_sockaddr.sin_port = htons(SERVER_PORT);
    server_sockaddr.sin_addr.s_addr = htonl(INADDR_ANY);
    /*绑定监听端口*/
    if(bind(s, (struct sockaddr *)&server_sockaddr,
    sizeof(server_sockaddr)) == -1) {
    perror("Unable to bind socket");
    exit(1);
    }
    /*设置允许客户连接数*/
    if(listen(s, 8*3) == -1) {
    perror("Unable to listen");
    exit(4);
    /*侦听客户连接请求并进行处理*/
    while (1) {
    len = sizeof(ec);
    if((fd = accept(s, (void *)&ec, &len)) == -1) {
    exit(5);
    close(s);
    }
    HandleConnect(fd);
    }
    4.3 GPRS操作控制程序设计
    GPRS操作程序主要任务是监视手机短信,然后根据短信决定具体操作。程序主要利用GPRS的AT命令和SOCKET.html" target="_blank" title="SOCKET">SOCKET套接字来完成短信发送和图片传输。GPRS操作程序主函数如下:
    main()
    {┅
    { /**根据条件拍照***/
    if(TakePicture==TRUE)
    { remove("1.jpg");
    rename("2.jpg","1.jpg");

    rename("6.jpg","5.jpg");
    cap("6.jpg");
    }
    /**根据条件给手机发图片***/
    if(SendPicture==TRUE)
    SendPicToMob("6.jpg");
    }
专业电源IC供应商
科特鑫,诚信IC供应商
ON推出隔离型TO22
TDK吃下Epcos并
·专业电源IC供应商
·嵌入式在小型网络视频服
·嵌入式数据采集系统中的
·基于S3C44B0X和
·基于ARM和FPGA的
·基于ARM的嵌入式Bo
·电子元器件市场逐渐回暖
·应用于嵌入式实时系统的
·查找嵌入式软件设计中的
·开放嵌入式:构建嵌入式
·采用TDA7388调频
·手机探测器电路图
·警报器驱动电路
·TI扩展其KeySto
·Linux平台在网络广
·基于物联网驱动的嵌入式
·一种嵌入式无线智能家居
·OpenCV的加速嵌入
·基于CAN总线的A32
·基于ARM9+Linu
·基于ARM9的视频监控
·H.264解码纠错在软
·基于PicoBlaze
·基于嵌入式的电缆故障检
·一种μC/OS-II任
·Android系统的移
·一种嵌入式语音识别模块
·一种WAP嵌入式浏览器
电源指标的定义
人生的意义
TL431特性和应用
只做原装电子元器件供应
他擅长在酒桌上发现人才
专业电源IC供应商
第十届广州(国际)卫浴
2008甘肃(兰州)第
科特鑫,诚信IC供应商
关于我们 | 企业文化 | 公司新闻 | 产品图片 | 产品库存 | 人才招聘 | 样品申请 | 联系我们 | 网站地图
版权所有(C) 2000-2012 深圳市科特鑫电子有限公司 All Rights Reserved Powerby
地址: 深圳市福田区华强北路宝华厦A1705室
电话: 0755-83980751(20线) 83283929 传真:0755-83980751 E-mail:303987269@qq.com
Better View:800*600 Best View:1024x768 为了本系统能够更好的为您服务,请使用IE5.0或以上版本浏览器