1、串口摄像头通讯协议串口摄像头通讯协议(1.0)1、概述串口摄像头具有一个标准的 RS232 接口,可以同时提供 232 电 TTL 电平的输出/输入信号,可以同 PC 或其他具有 RS232 接口的设备相连,通讯的速率可以是 9600bps,19200 bps(默认) ,38400 bps 和 57600 bps。2、数据格式摄像头与主机间的数据按帧来传送,一共有 3 种帧结构:命令帧、应答帧和数据帧。命令帧的结构是:数据头“U”(1byte)命令字节(1byte)命令内容( 0n byte)结束标志“#”(1byte)注: 详细命令字节见表 1 命令内容长度由具体的命令字决定。命令帧用于设定
2、模块的工作状态和启动拍图操作。应答帧的结构是:正确应答数据头“U”(1byte)接收到的命令(1byte)结束标志“#”(1byte)应答帧由接收方在接到正确的命令帧后发送不正确应答数据头“U”(1byte)?(1byte)结束标志“#”(1byte)应答帧由接收方,在接到不正确的命令帧,或者无法执行所发命令后发送数据帧的结构是:(1506 字节)完全由 JPEG 文件数据组成。注: 所有数据采用小端模式(低字节在前) 。 除最后一包数据,其余数据包都是 506 字节。3、命令介绍表 1命令字节 命令内容 说明 距离I1、9600 波特率2、 19200 波特率3、 38400 波特率4、 5
3、7600 波特率初始化模块UI2#(初始化模块,并设定通讯波特率为19200)G1、 160128 像素2、 320240 像素3、 640480 像素拍摄一幅图像UG2#拍摄一幅 320240的图片S 1、 160128 像素 连续拍摄图像 US1#2、 320240 像素3、 640480 像素连续拍摄一幅160128 的图片P 数据长度(2 字节,16 进制表示) 。 请求传送图像数据UPcc0b#请求传送一幅长度为 0x0bcc 的图片N 无 进入休眠模式 UN#O 无停止拍图(无论是拍单幅图还是多幅图,收到此命令后,模块会立即中止传送过程)UO#注:未加说明的表内数据均为 ASII
4、表示,所有字母均为大写。4、协议书交互过程: 初始化模块功能:改变模块数据输出速率,如果使用默认通讯速率,此项协议可以不必发送。主机 模块发送初始化命令 应答举例:主机发送:UI4# 设定通讯波特率为 57600模块应答:UI# 拍摄单幅图像功能:拍摄一幅指定大小的图像主机 模块发送拍摄单幅图像命令 应答 请求传送图像 第一帧数据第 n 帧数据举例:S1:主机发送:UG1#模块应答:UG#S2:模块发送:UPcc0b#(图像大小 0bccH 字节)模块发送:FFD8 。 。 。 。 。 。 。 。FFD900 。通过判断长度或者根据 JPEG 的起始结束字节(FFD8 ) ( FFD9)就可以判断传输是否结束,数据包就是一幅完整的 JPEG 文件。 连续拍摄图像基本过程同拍摄单幅图,唯一的区别是模块在发送完一幅图片后,会自动发起下一幅图的传输请求,直到收到任何一种命令。