智能安防视频监控系统《概要设计说明书V1.0.0》_第1页
智能安防视频监控系统《概要设计说明书V1.0.0》_第2页
智能安防视频监控系统《概要设计说明书V1.0.0》_第3页
智能安防视频监控系统《概要设计说明书V1.0.0》_第4页
智能安防视频监控系统《概要设计说明书V1.0.0》_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

概要设计说明书 共 页 版 次:1.0.0 文件编号: 概要设计说明书产品(项目)名称: 智能安防监控系统 项 目 经 理: 日 期: 2012.09.15 作 者: 徐恩华 东方锐智股份有限公司 嵌入式软件开发部Fuzhou P.R.China 版本历史说明版本时间版本说明发布1002012-9-15初始版本勘误表错误位置原来的值改正的值备注目录概要设计说明书41引言41.1编写目的41.2背景41.3定义41.4参考资料52总体设计52.1需求规定52.2运行环境52.3基本设计概念和处理流程62.4结构72.5功能器求与程序的关系82.6人工处理过程82.7尚未问决的问题83接口设计93.1用户接口93.2外部接口93.3内部接口214运行设计274.1运行模块组合274.2运行控制274.3运行时间275系统数据结构设计285.1逻辑结构设计要点285.2物理结构设计要点285.3数据结构与程序的关系286系统出错处理设计296.1出错信息296.2补救措施306.3系统维护设计317 实现模块时注意事项31All Right Reserved 设计文档,禁止传阅 24 / 24 概要设计说明书1引言1.1编写目的说明对项目的需求分析,主要是明确项目的开发背景,用户特点、开发目的及开发目标。重点说明项目的功能、性能及运行环境,为项目产品的可用性、易用性、易维护性和稳定性提供必要的前期保障。本文档的预期读者为:项目经理、软件开发人员、软件测试人员、软件评审人员。1.2背景随着我国老龄化程度的增加和生活节奏的日趋加快,人们在家的时间越来越短,对小孩老人的照顾越来越少,对家庭安全的要求越来越高,因此需要有一种对小区和家庭情况进行实时监控的系统,来保证家庭财务的安全,减少对老人小孩照顾的缺失,减少人间悲剧的发生。智能安防系统的需求应运而生,加上近年来嵌入式系统的发展和网络速度的提高,实时监控小区和家庭变的比较容易。因此,市面上监控设备、安防产品也越来越多,越来越智能化 本项目的智能安防视频监控系统只是整个小区智能安防系统的一部分,它的主要功能是将家庭或者小区的视频监控信息通过网络(有线或者3G无线网络)传输给在公司或者出差在外的主人,从而来保证家庭财务、老人和小孩的安全。1.3定义序号术语或缩写词说明性定义1H.263视频编码协议表(1-1)1.4参考资料序号资料名文件编号发表日期出版单位表(1-2)2总体设计2.1需求规定本系统所有需求完全来自于需求规格说明书v1.0.0文档规定,尽量做到完全理解该文档作者的原意,并且实现它所需要的所有功能。2.2运行环境本系统属于无人执守的设备,主要工作在室外,所以环境比较差。本系统的硬件平台是ARM SOC芯片,所以对本系统的时空效率提出了很高的要求,为了适应这两方面条件的要求,本系统采用了下面的设计:l 硬件环境硬件配置器件名称或器件参数特性CPUS3C2440,采用ARM920t核触摸屏电阻屏camera200W像素,支持YUYV或YUV420格式、720*576分辨率的视频输出USB接口/camera接口的ethernetDM9000 100/100M网卡表(2-1)l 软件环境 软件配置 系统软件或开发支撑软件 操作系统Linux系统 系统编译软件QT4.8.0(表2-2)l 运行外部环境 外部环境 外部环境指标 正常工作温度-10 50 正常工作时间工作时间应该是24小时不间断工作表(2-3)2.3基本设计概念和处理流程本系统的处理流程如下图:图(2-1)如上图,应用程序不属于本系统的实现范围,本系统主要实现除这个部分以外的模块,API模块实现协议指令的打包并且调用通讯接口将协议包发送给键盘,让键盘完成相应的操作,这个模块在本系统的二次开发Demo里面实现。通讯接口主要完成将API模块产生的协议包传送给键盘。应用模块调用指令接口执行指令,调用自检进入接口使用户可以通过输入特定的组合键来进入自检状态。指令实现模块主要向应用模块提供各个指令的接口,应用模块可以调用这些接口执行相应的指令。自检模块主要完成部分硬件的自检,生产参数的本地设置。2.4结构本系统的模块层次图:表(2-4)2.5功能器求与程序的关系显示时间界面读取用户按键自检(表2-5)2.6人工处理过程无2.7尚未问决的问题无3接口设计3.1用户接口本系统对直接用户来说操作比较简单,仅仅只需要按照液晶屏幕上的提示输入相应的信息就可以了,所以用户接口没有操作命令,也没有什么特殊的操作。3.2外部接口本系统的外部接口主要是提供给二次开发人员的API接口,下面是对所有API接口及API接口使用指令的说明:(1)、GetKey:扫描键盘,获得键盘的按键信息项目内容输出pchDatapchData0 - 键码,pchData1 - 通断标志返回成功0、1失败其它见6.1节错误代码说明注意无对应的通讯指令参数说明:主机发送给键盘:成员名字节长度说明Snr1包序列号,本系统中始终为0Command1指令码,这里为0x41Len1参数长度,这里为9Mode1指定扫描模式0-只有通码1-通断码都有Data88个字节的随机数据,最好是变化比较均匀的键盘返回给主机:成员名字节长度说明Snr1包序列号,本系统中始终为0Status1指令执行状态,0-有键按下 1-没有键按下Len1参数长度,这里为8CryData(加密数据)KeyCode1键码,无键按下时为0xffCode1通断码,Mode项为0时为0xff,为1时为通断码:0x55-通码 0xAA-断码Data6随机数的一部分注意:加密数据要先解密,解密后就是后面的格式了,密钥的计算方法是:1.计算随机数的所有字节之和,备份结算结果后,对8取模,2.用计算出来的值做为下标取出随机数中对应的字节放入随机数的第0位。3.将第1步备份的计算结果放入第2步中取出数据的位置(2)、DispValue:从指定的行列开始显示一个字符串项目内容原型int DispValue(HANDLE hCom, char chX, char chY, const char * cpchData)功能从指定的行列位置开始显示一个字符串输入hCom通讯接口句柄chX显示起始行chY显示起始列cpchData显示数据输出无返回成功0失败其它见6.1节错误代码说明注意无对应的通讯指令参数说明:主机发送给键盘:成员名字节长度说明Snr1包序列号,本系统中始终为0Command1指令码,这里为0x47Len1参数长度,这里Data长度加2X1显示起始行,范围(14)Y1显示起始列,范围(124)Data实际长度要显示的数据,数据最多只能有48个字节键盘返回给主机:成员名字节长度说明Snr1包序列号,本系统中始终为0Status1指令执行状态,0-成功 其它错误码Len1参数长度,这里为0(3)、ClearScr:清除屏幕显示项目内容原型int ClearScr(HANDLE hCom, char chMode, char chLine)功能清除屏幕显示输入hCom通讯接口句柄chMode擦除方式 1 - 擦整屏, 2-擦一行chLinechMode = 2时指定要清除的行输出无返回成功0失败其它见6.1节错误代码说明注意无对应的通讯指令参数说明:主机发送给键盘:成员名字节长度说明Snr1包序列号,本系统中始终为0Command1指令码,这里为0x49Len1参数长度,这里为5Mode1清除模式,1-整屏清除 2-清除指定行Line1指定清除的行,范围(14)键盘返回给主机:成员名字节长度说明Snr1包序列号,本系统中始终为0Status1指令执行状态,0-成功 其它错误码Len1参数长度,这里为0(4)、BeepCTRL:蜂鸣项目内容原型int BeepCTRL(HANDLE hCom, unsigned char uchTime)功能蜂鸣输入hCom通讯接口句柄uchTime蜂鸣时间(最长为10,单位:20ms)输出无返回成功0失败其它见6.1节错误代码说明注意无项目内容原型int SetBlackLight(HANDLE hCom, char chFlag)功能打开或关闭背光输入hCom通讯接口句柄chFlag开关标志1 -关闭 2-打开输出无返回成功0失败其它见6.1节错误代码说明注意无对应的通讯指令参数说明:主机发送给键盘:成员名字节长度说明Snr1包序列号,本系统中始终为0Command1指令码,这里为0x43Len1参数长度,这里为4OpenFlag1开关标志,1-关闭 2-打开Reserve3预留用0xff填充键盘返回给主机:成员名字节长度说明Snr1包序列号,本系统中始终为0Status1指令执行状态,0-成功 其它错误码Len1参数长度,这里为1Reserve1预留用0xff填充(6)、GetVersion:获得版本,包括:软件版本、硬件版本、字库版本、帮助库版本项目内容原型int GetVersion(HANDLE hCom, char chType, char *pchData)功能获得版本,包括:软件版本、硬件版本、字库版本、帮助库版本输入hCom通讯接口句柄chType版本类型(1-软件版本 2-硬件版本 3-字库版本 4-帮助库版本)输出pchData版本字符串,里面不能有空格长度有效范围(116)返回成功0失败其它见6.1节错误代码说明注意无对应的通讯指令参数说明:主机发送给键盘:成员名长度(字节)说明Snr1包序列号,本系统中始终为0Command1指令码,这里为0x43Len1参数长度,这里为1Type1版本类型(1-软件版本 2-硬件版本 3-字库版本 4-帮助库版本)键盘返回给主机:成员名长度(字节)说明Snr1包序列号,本系统中始终为0Status1指令执行状态,0-成功 其它错误码Len1参数长度,这里为16Version16版本内容(7)、SetVersion:设置版本,包括:硬件版本项目内容原型int SetVersion(HANDLE hCom, const char *cpchData)功能设置硬件版本输入hCom通讯接口句柄cpchData要设置的版本,里面不能有空格长度有效范围(116)输出无返回成功0失败其它见6.1节错误代码说明注意无对应的通讯指令参数说明:主机发送给键盘:成员名长度(字节)说明Snr1包序列号,本系统中始终为0Command1指令码,这里为0x50Len1参数长度,这里为16HardVersion16硬件版本,不足16位后补空格最好以v开头否则本系统会自动加入v到首位键盘返回给主机:成员名长度(字节)说明Snr1包序列号,本系统中始终为0Status1指令执行状态,0-成功 其它错误码Len1参数长度,这里为0(8)、GetDeviceID:读取机号项目内容原型int GetDeviceID(HANDLE hCom, char *pchData)功能设置硬件版本输入hCom通讯接口句柄输出cpchData机号,长度范围(115)返回成功0失败其它见6.1节错误代码说明注意无对应的通讯指令参数说明:主机发送给键盘:成员名长度(字节)说明Snr1包序列号,本系统中始终为0Command1指令码,这里为0x55Len1参数长度,这里为0键盘返回给主机:成员名长度(字节)说明Snr1包序列号,本系统中始终为0Status1指令执行状态,0-成功 其它错误码Len1参数长度,这里为15DeviceID15机号,长度范围(115)(9)、SetDeviceID:设置机号项目内容原型int SetDeviceID(HANDLE hCom, const char *cpchData)功能设置机号输入hCom通讯接口句柄cpchData需要设置的机号,有效长度范围(115)输出无返回成功0失败其它见6.1节错误代码说明注意无对应的通讯指令参数说明:主机发送给键盘:成员名长度(字节)说明Snr1包序列号,本系统中始终为0Command1指令码,这里为0x54Len1参数长度,这里为15DeviceID15机号,长度范围(115)键盘返回给主机:成员名长度(字节)说明Snr1包序列号,本系统中始终为0Status1指令执行状态,0-成功 其它错误码Len1参数长度,这里为0(10)、Reset:重启指令项目内容原型int Reset(HANDLE hCom, unsigned char uchTime)功能重启输入hCom通讯接口句柄uchTime重启前等待时间,范围(0250,单位:20ms)输出无返回成功0失败其它见6.1节错误代码说明注意无对应的通讯指令参数说明:主机发送给键盘:成员名长度(字节)说明Snr1包序列号,本系统中始终为0Command1指令码,这里为0x4eLen2参数长度,这里为1Time1重启前等待时间,范围(0250)(20ms一个单位)Reserve1预留用0xff填充键盘返回给主机:成员名长度(字节)说明Snr1包序列号,本系统中始终为0Status1指令执行状态,0-成功 其它错误码Len1参数长度,这里为0(11)、DownLoadPictureBase:下载帮助字库项目内容原型int DownLoadPictureBase(HANDLE hCom, const char * cpchWordBase, int iWordBaseSize, const char * cpchWord, int iWordSize)功能重启输入hCom通讯接口句柄cpchWordBase点阵字库iWordBaseSize点阵字库大小cpchWord要加入字库的汉字,头16个字符为字库的版本信息iWordSizecpchWord 的长度输出无返回成功0失败其它见6.1节错误代码说明注意本函数调用DownLoadData函数传递数据给下位机(12)、DownLoadWordBase:下载显示字库项目内容原型int DownLoadWordBase(HANDLE hCom, const char * cpchWordBase, int iWordBaseSize, const char * cpchWord,int iWordSize)功能下载显示字库输入hCom通讯接口句柄cpchWordBase点阵字库iWordBaseSize点阵字库大小cpchWord要加入字库的汉字,头16个字符为字库的版本信息iWordSizecpchWord 的长度输出无返回成功0失败其它见6.1节错误代码说明注意本函数调用DownLoadData函数传递数据给下位机(13)、DownLoadData:下载字库数据到键盘项目内容原型int DownLoadData(HANDLE hCom, char chType, char * pchData, int iLen)功能下载字库数据到键盘输入hCom通讯接口句柄chType要下载的数据类型3-字库 5-帮助字库pchData要下载的数据iLen要下载的数据长度输出无返回成功0失败其它见6.1节错误代码说明注意无对应的通讯指令参数说明:主机发送给键盘:成员名长度(字节)说明Snr1包序列号,本系统中始终为0Command1指令码,这里为0x4fLen1参数长度,这里为PocktetLength 4Type1下载数据类型3-字库 5-帮助字库PocketNum1本类型数据包的总数SeriNo1包序列号PocktetLength1本包数据长度数据实际长度最长为240字节键盘返回给主机:成员名长度(字节)说明Snr1包序列号,本系统中始终为0Status1指令执行状态,0-成功 其它错误码Len1参数长度,这里为1SeriNo1返回包号,为主机发送给本系统的(14)、ScrollControl:滚屏方式显示帮助信息项目内容原型int ScrollControl(HANDLE hCom, char chMode, unsigned char uchTime, char chFirstScroll)功能滚屏方式显示帮助信息输入hCom通讯接口句柄chMode滚屏模式:1-点滚动 2-行滚动 3-点继续 4-行继续 5-显示指定页 6-翻页 7-页滚动uchTime保持时间chFirstScroll第一行是否参加滚动 1-参加,0-不参加,这个功能目前的键盘没有实现,调用时应该设置本参数为1输出无返回成功0失败其它见6.1节错误代码说明注意指定屏幕第一行不参加滚动的功能目前的键盘没有实现对应的通讯指令参数说明:主机发送给键盘:成员名长度(字节)说明Snr1包序列号,本系统中始终为0Command1指令码,这里为0x49Len1参数长度,这里为5Mode1滚屏模式:1-点滚动 2-行滚动 3-点继续 4-行继续 5-显示指定页 6-翻页 7-页滚动Time1滚动数据保持时间:0-250,(单位:20ms),为0时为关闭滚动FirstScroll1指定第一行是否参加滚动(目前键盘没有实现第一行不参加滚动的功能)Reserve2保留键盘返回给主机:成员名长度(字节)说明Snr1包序列号,本系统中始终为0Status1指令执行状态,0-成功 其它错误码Len1参数长度,这里为0(15)、GetCurTime:获取本系统时间项目内容原型int GetCurTime(HANDLE hCom, short *psTime)功能获取本系统时间输入hCom通讯接口句柄输出psTime获得时间,格式顺序为年、星期、月、日、时、分、秒返回成功0失败其它见6.1节错误代码说明注意无对应的通讯指令参数说明:(16)、SetCurTime:设置本系统的时间项目内容原型int SetCurTime(HANDLE hCom, short *psTime)功能设置本系统的时间输入hCom通讯接口句柄psTime设置时间,格式顺序为年、星期、月、日、时、分、秒输出无返回成功0失败其它见6.1节错误代码说明注意无对应的通讯指令参数说明:(17)、SetScr:显示满屏,用于液晶屏的检测项目内容原型int SetScr(HANDLE hCom)功能显示满屏,用于液晶屏的检测输入hCom通讯接口句柄输出无返回成功0失败其它见6.1节错误代码说明注意无对应的通讯指令参数说明:(18)、DownProgram:更新程序项目内容原型int DownProgram(HANDLE hCom, const char *cpchFileName)功能更新程序输入hCom通讯接口句柄cpchFileName要跟新程序的文件指针输出无返回成功0失败其它见6.1节错误代码说明注意程序下载过程比较复杂,详细请参见ISP下载相关文档3.3内部接口通讯接口模块提供给API接口模块和应用模块的接口: 项目内容原型char ReceiveData(HANDLE hCom, unsigned char * puchData)功能接收协议数据输入hCom通讯接口句柄puchData接收数据的缓冲区输出无返回成功0失败其它见6.1节错误代码说明注意无项目内容原型char SendData(HANDLE hCom, unsigned char* puchData)功能发送协议数据输入hCom通讯接口句柄puchData要发送的数据输出无返回成功0失败其它见6.1节错误代码说明注意无接口驱动模块提供给通讯协议模块的接口: 项目内容原型char IsOpen(HANDLE hCom)功能查询接口是否开启输入hCom通讯接口句柄输出无返回已经打开1未打开0注意无项目内容原型char ReadCh(HANDLE hCom, unsigned char *puchBuf, unsigned char uchTime)功能等待接收一个字符输入hCom通讯接口句柄uchTime等待时长(单位:20ms)输出puchBuf接收字符的缓冲区返回成功0失败其它见6.1节错误代码说明注意无项目内容原型char WriteCh(HANDLE hCom, unsigned char uch)功能发送一个字符输入hCom通讯接口句柄uch需要发送的字符输出无返回成功0失败其它见6.1节错误代码说明注意无项目内容原型void ComClear(HANDLE hCom)功能清空接口缓冲区输入hCom通讯接口句柄输出无返回无注意无指令实现模块提供给应用模块的接口: 指令实现模块提供给应用模块的接口原型为:char Function(char * pchData);或unsigned char Function(unsigned char *puchData); 其中函数名和使用相同指令的API名称一样,参数puchData为指令协议包,所以这里就不在列出,具体见前面的协议。自检模块提供给应用模块的接口:项目内容原型void SelfCheck(void)功能实现自检功能输入无输出无返回无注意无DS1项目内容原型void DST_GetCurTime(unsigned char * puchCurTime)功能从实时时钟芯片中读取时间输入无输出puchCurTime存放当前时间的缓冲区,格式为:年 星期 月 日 时 分 秒 时间格式是BCD码的:61459返回无注意时间为24小时制项目内容原型void DST_SetCurTime(unsigned char* puchCurTime)功能设置当前的实时时钟时间输入puchCurTime存放设置时间的缓冲区,格式为:年 星期 月 日 时 分 秒时间格式是BCD码的:61459输出无 返回无注意时间为24小时制液晶模块提供给指令实现模块和自检模块的接口:项目内容原型void _LcdReset(void)功能复位液晶屏输入无输出无 返回无注意无项目内容原型void _LcdTurnOnBLight(void)功能液晶屏背光开输入无输出无返回无注意无项目内容原型void _LcdTurnOffBLight(void)功能液晶屏背光关输入无输出无返回无注意无项目内容原型void _LcdSetStartLine(unsigned char uchCLine)功能设置显示起始行输入uchCLine指定显存中的第几行为显示起始行输出无返回无注意无项目内容原型void _LcdClrScr(void)功能清屏输入无输出无返回无注意无项目内容原型void DispSpace(unsigned char uchX, unsigned char uchY)功能显示一个空格(816)输入uchX屏幕X坐标uchY屏幕Y坐标输出无返回无注意空格为8 X 16点阵项目内容原型unsigned char WriteInstruction(unsigned char uchHighOrLow, unsigned char puchBuf, unsigned char uchAddress, unsigned char uchNum)功能将数据写入EPROM输入uchHighOrLow指定读EPROM的高地址还是低地址puchBuf要写入的数据的缓冲uchAddress要写数据的地址uchNum要写数据的长度输出无返回1-成功

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论