版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
短信息毕业论文摘要为了使GSM短信息业务得到更加广泛的应用,本文设计了基于GSM模块Q2403A的短信息收发系统。该系统由硬件系统和软件系统两局部组成。硬件局部(无线收发终端)主要由Q2403A收发模块及其外围电路组成,通过RS232串口与PC机相连;软件局部主要由设计的系统应用程序通过动态链接库向模块发送AT指令,完成对短信息收发终端的控制,从而使系统完成短信息收发的功能,并通过与数据库相连,完成对短信息的各种管理。系统具有结构简单、操作方便、应用前景广泛等特点。关键词:GSM;Q2403A;AT指令;短消息效劳;动态链接库第一章绪论1.1GSM网络介绍GSM是GlobalSystemforMobileCommunications的英文缩写,意为全球移动通信系统,为欧洲80年代末研制出来的、以数字为主的第二带代移动系统,它是在模拟蜂窝移动通信的根底上开展起来的,是全球最成熟的数字移动网络标准之一,使用的是窄带TDMA技术,能提供业务及全面的语音、文字和数据业务,并提供一些诸如短消息效劳、语音信箱、呼叫转移等的增值业务。它定义了建设该网络及提供效劳的各种标准,这些标准由欧洲电信标准化协会〔ETSI〕掌管。实现中通常使用的频率为900MHz、1800MHz、1900MHz,其中中国的GSM网络实现在900MHz和1800MHz的频率上,也就是常说的GSM双频。GSM蜂窝系统的主要组成局部可分为移动台、基站子系统和网络子系统。基站子系统〔简称基站BS〕由基站收发台〔BTS〕和基站控制器〔BSC〕组成;网络子系统包括:移动交换中心〔MSC〕、操作维护中心〔OMC〕、原籍位置存放器〔HLR〕、访问位置存放器〔VLR〕、鉴权中心〔AUC〕和设备标志存放器〔EIR〕等组成。一个MSC可管理多达几十个基站控制器,一个基站最多可控制256个BTS。由MS、BS和网络子系统构成公用陆地移动通信网该网络由MSC与公用交换网〔PSTN〕、综合业务数字网〔ISDN〕、和公用数据网〔PDN〕进行互连。GSM移动通信系统最初被设计成为一个泛欧洲的移动通信标准,是第一个数字移动通信系统,能够在欧洲范围内进行国际漫游。GSM系统是迄今为止商业化运营最成功的移动通信系统,现在已经不仅局限欧洲范围内,世界上许多国家也采用GSM系统。1987年末我国广州开通了第一个模拟蜂窝式移动通信系统,采用ETACS体制900MHz频段,作为我国蜂窝移动通信系统的标准。1992年GSM系统由我国联通首先引入广州,经过近十年的开展,GSM网络已经覆盖了全国大多数的城市和乡镇,其用户数量也占我国移动通信用户的大多数。目前,我国移动通信运营业开展十分迅速,GSM移动通信网络已经覆盖祖国内地的所有地〔市〕和99%以上的县〔市〕,到2003年6月底我国移动交换机容量合计2.9734亿户,移动用户总数达2.3447亿户,普及率18.3%,这意味着我国不仅拥有世界上最大的GSM移动通信网,GSM移动用户数也位居世界第一。1.2短信息业务〔SMS〕的现状及开展SMS是短信息效劳〔ShortMessageService〕的简称,是通过发送和接收有限长度的文本信息的功能。文本信息是词语、数字和字母的组合,一条短信息可以包含160个英文字母〔7-bit编码〕或70个非拉丁字母〔16-bit编码〕,如中文汉字或阿拉伯字等Unicode编码。SMS具有以下几个方面的特点:〔1〕SMS采用的是存储—转发模式,即短信息被发送出去之后,不是直接发送给接收方,而是先存储在短信息效劳中心〔ShortMessageServiceCenter,SMCC〕,然后再由短信息中心将短信息转发给接收方。如果接收方当时关机或者是不在效劳区内,SMCC就会自动保存该短信息〔一般不超过3天〕,等到接收方在效劳区出现的时候再发给他。〔2〕SMS对发送信息具有保证的双向效劳,与普通的寻呼机制不同。寻呼机的发送方不清楚消息是否发送成功,而SMS发送方可以将短信息发送出去之后得到一条确认通知,返回传递成功或者失败的信息,以及不可到达的原因。〔3〕SMS可以与话音、数据、等业务一起进行同步传输。由于SMS是非对称业务,他使用SS7信令信道传输数据分组,所以即使在业务信道处于顶峰期的情况下,也照样可以使用短信息顺利通信,并且SMS还可以实现全国和国际漫游。SMS的优点也十清楚显,主要有以下几点:〔1〕收费低廉。对于消费者而言,资费始终是首要关心的问题。不管是长途还是市内,每发送一条短信息仅0.1元,而且接收免费。虽然话音业务的资费不断下调,但与双向收费都是每分钟0.4元的话音业务相比,SMS的价格优势不言而喻。〔2〕随时随地。短信息和不一样,打要求接听方同时在另一端,而短信息用户可以随时随地的发送短消息,不用担忧对方没有开机也不用担忧对方是不是在效劳区,因为短信息是采用存储—转发方式储藏在短信息中心,一旦对方开机,短信息就会自动发送。〔3〕能够承载多种数据。短信息有三种模式:块模式、PDU模式和文本模式。通过PDU编码的短消息内容可以是文字、声音或者图像,可以实现图片和铃声的下载。SMS的一些根本应用:〔1〕根本的发送和接收短信功能。用户可以利用SMS交流简短的信息。发送简化的短信息就是将一些常用的信息用代码表示,以利于输入。〔2〕资讯效劳。包括新闻;天气预报;股市行情;火车、航班时刻查询;费查询;旅游效劳中的旅游景点、宾馆介绍等等。〔3〕移动商务。包括移动证券交易;移动银行;预定车船票等。〔4〕商务助理。包括事务提醒;移动地址本;移动名片夹等。〔5〕定位效劳:查询附近的商业设施等。〔6〕远程监控:对工业、水文、地质等数据采集并进行远程监控。〔7〕企业效劳:对企业内部的信息进行交流和管理。1.3短信收发系统的应用前景GSM网路系统是目前移动通信体制中最成熟、最完善、应用最广的一种系统。GSM短消息业务由于其方便、快捷、廉价等特点而受到用户的青睐,它作为GSM网络的一种根本业务,已经得到越来越多的系统运营商和系统开发商的重视。基于这种业务的各种应用也蓬勃开展起来。基于GSM短消息的功能做成可以传输各种检测、监控数据信号和控制命令的数据通讯平台,可以广泛地应用于移动车辆监控定位系统,远程监控系统,数据采集和信息查询系统,以及公共信息发布系统和个人通信终端系统等。下面简单介绍几种短信收发系统的应用。移动目标监控系统对于移动目标监控最普遍地应用就是利用GPS全球定位系统,监视移动目标的位置速度和方向,利用现在已有的短消息业务,传输信息。将这两种技术结合起来就可以解决通信和地域问题,为城市交通提供方便。GPS为车辆提供位置信息,以短消息的方式将车辆的位置信息通过GSM网络传递给车辆调度和管理中心,实现对车辆的管理。公共信息的查询和发送系统利用GSM的短消息中心将各种公共信息〔例如天气预报、交通信息、会议通知等等〕建立成一个信息查询系统,通过传送可以直接向信息系统查询所需要的信息,也可以要求信息系统将所需要的信息发送到用户的终端上,同时也可以定时向用户发送公众信息。电子邮件转发系统将集团内部的电子邮件效劳器直接与短消息信息平台相连,直接将电子邮件的内容〔邮件中的附件除外〕转发到用户的上。同时还可以直接利用回复邮件。而且这将有利于不管身处何地的集团员工对集团信息的快速了解。个人通信终端个人化便携式通信终端可以提供比普通PDA更强大的使用功能,还可以实现双向移动数据传送和查询从而实现全球范围内的移动信息通信,并且它可以实现双向寻呼、定票、E-mail接收/发送、信息点播、等多种功能。旅游景区银行支付系统在很多旅游景区地形地貌复杂,同时也为了保护文物和保持原有景观特点的原因,很难在景区架设专用通信线路,这样给游客在景区利用银行卡进行消费带来很多不遍。但是如果利用现有的GSM网络〔完全可以覆盖整个景区〕通过短消息的方式进行交易,利用设在景区的多个无线终端将用户的卡号密码以短消息的形式发送到银行的网络系统中进行处理,这样可以很轻松的完成各种支付活动。第二章系统整体设计方案2.1系统框图如下列图2.1所示系统框图,计算机通过RS-232串行通讯接口与无线Modem相连,在软件平台上对无线Modem进行操作;而被控端,一般可由一台控制单片机与无线Modem相连或者是可以接收短信的移动终端,以短信息的形式接收对方传输的字符命令,建立通信连接。数据库数据库PC机用户界面PC机GSM无线ModemGSM网络GSM无线控制终端GSM无线控制终端GSM无线控制终端图2.1系统框图2.2系统的软硬件设计方案系统硬件设计方案系统硬件结构框图如下列图2.2所示RS-232GSM无线RS-232GSM无线Modem图2.2硬件结构框图在本系统中的GSM无线Modem采用目前在市场上提供的可供二次开发的标准GSM模块,如西门子的TC35、Wavecom公司的Q2400系列等等。这些通信模块都具备无线GSM无线通信的全部功能,并且提供标准的串行通信接口,支持GSM07.5所定义的AT指令集的指令。因此,计算机能非常方便的通过串行接口与GSM模块相连接。并且可以通过AT命令就可以方便快捷地实现短信息的收发。由于GSM模块的控制依靠AT指令集,当用户操作GSM模块收发短消息和对其进行管理时如果只能直接使用AT指令集,那将十分复杂和繁琐,而且通用性很差,为了使整个系统的可操作性加强,系统需要一个操作方便、简洁、友好的软件平台,通过这个软件平台操作者可以很快捷的实现GSM模块短信息的收发和管理。系统软件设计方案系统软件平台包括了数据库,动态链接库,用户界面三个局部,系统软件框图如图2.3所示。动态链接库动态链接库用户界面数据库GSM无线Modem图2.3软件结构框图如下列图2.4所示系统软件流程图:形成AT指令通过串口发送通过串口接收数据形成AT指令通过串口发送通过串口接收数据分析数据提取短消息执行短信操作系统初始化翻开串口图2.4系统软件流程图整个系统的工作过程如下:在计算机上运行软件平台,编辑短消息后通过串口控制GSM无线Modem将短消息送出去;当无线Modem收到短消息后经过串行接口传到计算机,并通过软件平台显示出来,或者通过软件平台对其进行管理。第三章系统的硬件设计GSM模块作为一种主要的GSM网络接入设备,已经得到越来越多的系统制造商和系统开发商的重视,基于它的各种应用也蓬勃开展起来。GSM模块是继GSM外又一种非常重要的GSM移动通讯系统的终端设备。它是传统调制解调器与GSM无线移动通信系统相结合的一种数据终端设备,因此也叫无线调制解调器。本系统采用法国WAVECOM公司生产的GSM模块Q2403A。3.1GSM模块Q2403A简介Q2403A是法国WAVECOM公司生产的双GSM外置调制解调器〔EGSM900/1800MHz或EGSM900/1900MHz〕,适用于数据,,短信息及话音应用并已通过所有认证,为特定应用设计的AT指令遥控系统。如下列图3.1所示GSM模块Q2403A的外观图图3.1GSM模块Q2403A的外观图模块的功能体系内存管理GPSI控制通内存管理GPSI控制通用接口电源供给FLSASH电源管理SIM卡音频接口RF接口SRAMI/O控制A/D接口SIM卡控制CPU声音合成键盘控制通用异步收发射频功能图3.2模块的功能体系图模块的引脚介绍GSM模块Q2403A的引脚图如图3.3所示图3.3GSM模块Q2403A的引脚图模块Q2403A的引脚描述如下所示:CHG_IN〔1,2,4脚〕充电输入脚;SIMCLK〔3脚〕SIM卡的时钟脚;SIMRST〔5脚〕SIM卡的复位脚;ON/~OFF〔6脚〕电源控制开关脚;SIMDATA〔7脚〕SIM卡的I/O数据口;SDA/SPI_IO〔8脚〕SPI数据脚;SIMVCC〔9脚〕SIM卡电源脚;SIMPRES〔50脚〕SIM卡检测脚;SCL/SPI_CLK〔10脚〕SPI时钟脚;VDD〔11脚〕电源脚,与+VBATT相连接;BOOT〔12脚〕下载脚;ROW0~ROW4〔13,15,17,19,21脚〕键盘接口;~RST〔14脚〕模块复位脚,低电平有效;~INTR〔16脚〕外部中断脚;GPI〔18脚〕通用输入脚;GPO0~GPO2〔26,22,20脚〕通用输出口;CLO0~CLO4〔23,25,27,29脚〕键盘接口;GPIO0~GPIO5〔24,52,53,54,35脚〕通用IO口;CT105/RTS〔30脚〕RS232请求发送脚;CT104/RX〔32脚〕RS232接收脚;CT108-2/DTR〔34脚〕RS232数据终端准备好脚;CT107/DSR〔36脚〕RS232数据准备好脚;CT106/CTS〔37脚〕RS232去除发送脚;CT103/TX〔39脚〕RS232传输脚;BAT_TMP〔38脚〕电池温度输入脚;AUXV0〔33脚〕音频输入脚;VCC〔40脚〕2.8V电源输出脚;SPK1P~SPK2P〔41,45脚〕话筒1,2正极输出;SPK1N~SPK2N〔43,47脚〕话筒1,2负极输出;MIC1P~MIC2P〔42,46脚〕麦克风1,2正极输入;MIC1N~MIC2N〔44,48脚〕麦克风1,2负极输入;BUZ〔49脚〕蜂鸣器脚;VBATT〔55,57,58,59,60脚〕电源输入脚;VCC_RTC〔56脚〕电源输入脚;3.1.2模块的性能指标SMA天线接口
活动SIM插槽
通过AT指令控制
输出功率:Class4(2W&900MHz);
Class1(1W&1800/1900MHz);
输入电压:3.3V~4.5V;
输入电流:5mA待机状态,140mA在GSM900MHz@12V通话状态;
5mA待机状态,100mA在GSM1800/1900MHz@12V通话状态;
温度范围:-20℃~+55℃工作状态;
-25℃~+70℃保存状态;
产品大小:58.3mm×32.2mm×3.9mm3.2模块的外围电路设计模块外围电路设计框图GGSM模块电源供给SIM卡电路串行通信麦克风听筒电路LED灯电路蜂鸣器图3.4模块外围电路框图电源电路设计电源局部是GSM模块外围设计的关键,由于GSM模块产生脉冲序列,要求电源在很短的时间内到达电流最大值,电源提供的电压最高和最低值不能超过某个特定的数值。电源要提供两个不同的输入电压,一个是VBATT,用来提供射频局部和VDD的电压。另一个用来个基带局部供电。电源电压值如表3.1所示表3.1电源电压值表VminVnomVmaxVBATT3.3V3.6V4.5VVDD3.1V3.6V4.5V在实际的电路设计时,由于使用的是5.3V(1A)的外接电源,这就需要设计一个电压变换电路,将5.3V变换成3.3~4.5V这个电压范围中的某个确定的电压值,并且要求输出稳定。为了到达实际电路中的设计要求,本电路中采用了芯片LM2941S,其引脚排列如图3.4所示。ON/OFFON/OFFOUTINADJUSTGND图3.4LM2941S引脚排列图LM2941S的特点是:可以调整5~20V的直流电源;输入输出的电压差小于等于3V。具体的外围电路如图3.5所示:图3.5LM2941S典型应用外围电路图图3.5LM2941S典型应用外围电路图如上图3.5所示:根据公式;可以得到R1和R2的关系,Vout=4.1V,Vref=1.275V,将此带入上式,解得R2≈2R1在实际的设计中,选择R2=6.8K,R1=3K;实际的电源电路设计如下列图3.6所示图3.6电源电路设计图图3.6电源电路设计图3.2.3异步串行通信接口电路设计Q2403A不仅提供了数据传输TXData(CT103/TX),数据接收〔ReceiveDataCT104/RX〕,请求发送(RequestToSendCT105/RTS),去除发送(ClearToSendCT106/CTS),数据终端准备好(DataTerminalReadyCT108-2/DTR)和数据准备好(DataSetReadyCT107/DSR)6个通用的串行通信接口外,还提供了一个数据载波检测口〔DataCarrierDetectCT109/DCD〕和一个铃声指示信号口(RingIndicatorCT125/RI)。本设计采用了MAX3237作为RS232通信芯片。Max3237的技术特性:低补充电流:I=500uA;传输速率:正常工作状态时为250kbps;兆波特工作状态时为1Mbps;工作电压:3V~5.5VMAX3237的引脚排列图如下列图3.7所示:图3.7MAX3237引脚排列图下面介绍MAX3237的引脚功能:C2-~C2+:〔3,1脚〕分别接电容的负正极;C1-~C1+:〔25,28脚〕分别接一电解电容的负正极;V+:〔27脚〕接一极性电容的正极,电容另一端接地;V-:〔4脚〕接一极性电容的负极,电容另一端接地;T_OUT:〔5,6,7,10,12脚〕RS-232发送输出端;T_IN:〔17,19,22,23,24脚〕RS-232发送输入端;R_IN:〔8,9,11脚〕RS-232接收输入端;R_OUT:〔18,20,21脚〕RS-232接收输出端;Vcc:〔26脚〕电源脚,接+3.0V~+5.5V电压即可;R1OUTB:〔16脚〕接收输出端;MBAUD:〔15脚〕接地是为正常传输速率状态;~SHDN:〔14脚〕关断控制端,低电平有效;~EN:〔13脚〕接收使能端,低电平有效;GND:〔2脚〕地脚,接地;具体电路设计如下列图3.8所示:图3.8异步串行通信接口(RS-232)电路设计SIM卡电路设计GSM模块2403QA具有5个SIM卡信号通道:SIMVCC:SIM电源9脚SIMRST:复位5脚SIMCLK:时钟3脚SIMDATA:I/O口7脚SIMPRES:SIM卡识别50脚这个SIM卡的专用接口控制3V的SIM卡,将接口直接接到SIM卡座相对应的引脚即可。如下列图3.9所示A图为SIM卡引脚分布图B图为SIM卡卡座引脚分布图GNDGNDSIMDATASIMCLKSIMRSTSIMVCCVPP无定义SIMVCC无定义I/OVPPGNDSIMCLKSIMRSTAB图3.9SIM卡及SIM卡座的引脚排列图具体的SIM卡电路设计如下列图3.10所示:图3.10SIM卡电路设计图图3.10SIM卡电路设计图特别指出的是模块的第50脚,即SIMPRES脚,它具有识别SIM卡的功能,当该引脚收到低电平变换为高电平信号时,说明SIM卡已经插入SIM卡卡座;当该引脚收到高电平变换为低电平信号时,说明SIM卡已经从SIM卡卡座中取出。本设计未使用该功能,因此将该引脚接高电平即接Vcc。音频电路设计Q2403A模块提供了两个麦克风输入和两个话筒输出端。麦克风输入增益通过AT指令集可以调节〔30dB~51dB〕其中Q2403提供的2个麦克风输入口MIC1和MIC22个话筒输出口SPK1和SPK2。引脚分别为:SPK2P45脚SPK2N47脚SPK1P41脚SPK1N43脚MIC2P46脚MIC2N48脚MIC1P42脚MIC1N44脚下面根据麦克风的典型连接方式设计出如图3.11所示的麦克风电路图:图3.11麦克风典型方式电路图C6=C7=C8=47pF~100pF;L1=L2=100nH;要注意的是很多麦克风厂商已经将C7做在了麦克风里面。MIC1和MIC2的区别在于,MIC1有内部偏置,而MIC2确没有。下面根据麦克风的微分连接方式设计出如图3.12所示的麦克风电路图:R1=100~300欧;R2=1000~3300欧C1=10uF~47uF;C2=47pF~100pF;C4=47pF;L1=L2=100nH图3.12麦克风微风方式电路图复位电路复位信号提供一个持续至少10μs的低电平,用来产生一个复位动作,这只能看作一个紧急复位。在上电过程中,模块内部硬件电路驱动产生一个复位动作。这种信号同样可以为外部器件提供的一个复位信号,如果不需要外部复位那么可以将该接口悬空,如果要使用紧急复位,它必须使用一个开环的继电器或者由一个开环电流来驱动以完成复位动作。RESET14脚如下列图3.13所示复位电路的原理图:RESET14脚复位开关图3.13复位电路原理图复位开关图3.13复位电路原理图当复位开关=1时,Reset=0模块复位;;当复位开关=0时,Reset=1模块处于正常工作状态在实际的电路设计中,按照图3.13所示只要将复位开关的一端接地,另外一端接模块的第14脚即可。图3.14指示灯及蜂鸣器电路图指示灯及蜂鸣器电路设计图3.14指示灯及蜂鸣器电路图〔b〕〔a〕〔b〕〔a〕模块的第53脚〔GPIO1〕是个通用I/O口,可以用来控制闪烁灯,外接一个三极管和上拉电阻用来控制电流,就可以实现。电路图如上图3.14〔a〕所示。模块的第49脚〔BUZ〕是个蜂鸣器数字输出端,将蜂鸣器接在这个输出端和VBATT之间,最大电流控制在80毫安,如上图3.14〔b〕所示,图中的D2起到保护作用。整个外围电路的原理图见附录13.3模块外围电路的制作〔PCB制板〕为了使所设计的模块外围电路得以实现,下面将详细介绍模块外围电路板〔PCB板〕的设计流程和方法。原理图的和PCB图的设计都是在Protel99SE环境下完成的。Protel99SE作为Protel公司2000年推出的基于Windows平台的最新产品,不仅能绘制电路原理图,还能对设计的电路原理图进行及时地在线仿真与验证,以便在整个设计过程中都可以随时仿真查看和发现设计中所存在的问题并加以改正,而且还能以多种设计规那么设计多层印刷电路板。如图3.15PCB设计流程框图所示:否否否建一个数据库文件〔*.DDB〕建一原理图文件〔*.Sch〕建一原理图库文件〔*.Lib〕元器件制作特殊元器件设计原理图设计检查并生成网络表文件〔*.Net〕建一PCB文件〔*.PCB〕建一PCB库文件〔*.Lib〕元器件制作特殊元器件设计导入网络表文件〔*.Net〕PCB图设计布局布线〔自动布线和手工布线〕文件保存图3.15PCB设计流程框图作为一个工程设计,一般先进行原理图的设计,在原理图确定后再进行PCB的设计。运用PROTEL99SE软件设计原理图,具体步骤如下:〔1〕先建立一个数据库文件(DDB)〔2〕原理图的设计:第一步:建立原理图文件名。第二步:在Protel99SE中元件库比拟丰富,假设所需元器件在库中无现成的可用,那么需进行元器件的制作,元器件的制作先要进入库文件编辑环境进行元器件的制作。第三步:所需特殊元器件制作完成后就可进行原理图的设计:先从元器件库中把所需的元器件调出进行简单布局,根据走线交叉少、走线短等要求,微调元器件位置以利走线或利用“NETLABEL〞来确定相互间的连接关系,在进行标注时要符合要求,只需采用“PLACE〞菜单中的“NETLABEL〞选项把标注放在相应走线的左上角即可,否那么就会出现错误。第四步:布局与连线完成后,先进行检查,确定无误后形成“NET〞文件,以备进行自动PCB设计及检查使用。〔3〕PCB设计流程:第一步:建立PCB文件第二步:元器件制作在Protel99SE中的PCB的元器件非常丰富,一般的元器件都有现成的可以直接调用,但对于一些特殊的元器件例如模块的60pin插座,5V电源插口等等那么需自行制作,元器件的制作过程在这里重点论述一下:a〕首先必须进入元器件库的编辑环境:在Protel99SE的总的设计环境中,在对话框中选中应的元器件库文件,同时进入元器件库的编辑环境中;也可在PCB的设计环境中进入元器件的制作;b)TOPLAYER层以PLACEPAD等命令在一定的位置(由元器件各管脚相互间的间距来定)画出相应的焊盘,双击并编辑成所需的焊盘(包括焊盘形状、大小、内径尺寸及角度等,另外还应标出焊盘相应的管脚名);C〕以器件的中心为参考点,取一个元器件名存入元器件库中就完成了元器件的制作;第三步:导入网络表选择“DESIGN〞菜单中的“LoadNetlist〞将由原理图导出的网络表(前提是由原理图导出的网络表没有错误)导入到PCB设计图中来,将所有的元器件导到PCB图中时,所有的元器件都是重叠在一起的,只要将所有的元器件拉开即可进行第四个步骤。第四步:布局布局是PCB设计的关键之一,布局的过程是先确定与其它PCB或产品的接口元器件的位置,然后确定与装配有关的元器件的位置(主要是那些体积较大的元器件)或一些有特殊要求的元器件的位置最后那么是根据功能进行划分功能块,同一功能块的元器件应尽量放置在一起。第五步:布线布局大体完成后就要进行布线工作,布线的实现:先采取让系统自动布线然后再手工布线的方法,先设定线的最小宽度和最小间距,以及过孔的最小直径等系统自动步先后在根据自己的要求用手工布线的方法进行修改。注意:布线与布局是相互紧密联系的,在进行布线时,往往需对元器件位置进行调整以利于更好地布线,因此,布局与布线可以说是同时完成的。模块的外围电路PCB图见附录2;短信终端的外观图见附录3;系统的软件设计4.1AT指令集介绍AT指令时一个用于控制MODEM〔调制解调器〕工作的控制指令集,本模块Q2403A的内部控制也是由AT指令来完成。AT指令是Hayes公司为MODEM制定的一个控制指令集,用于数据终端〔计算机〕和MODEM之间的通讯。由于Hayes公司生产的MODEM产品在工业界占有主导地位,为了保持产品的兼容性,其它MODEM制造厂商也接受并使用了AT指令,因此AT指令目前在工业界已经变成一个事实标准,非Hayes公司的MODEM产品也都支持AT指令集。在一般情况,MODEM接到一个AT指令后会产生相应的动作或时间,并返回一个指示操作结果的指示码,指示码可以是字符串表示的文本信息码,也可以是1个字节表示的数字码,数据终端〔计算机〕可以根据指示码判断MODEM执行指令的情况以及MODEM所处的状态。下面列出局部常用的指示码〔“/〞之前为数字码,其后为文本码〕:“0”1/CONNECT连接成功,连接速率为0~300bps2/RING检测到振铃信号3/NOCARRIER没有检测到载波信号4/ERROR指令错误5/CONNECT1200连接成功,连接速率为1200bps6/NODIALTONE检测不到拨号音7/BUSY线路忙13/CONNECT9600连接成功,连接速率为9600bpsMODEM在建立连接后将返回一个CONNECTXXXX的指示码,其中XXXX表示连接所使用的波特率。不同的MODEM在回应CONNETXXXX指示时所使用的数字码可能不一样,因此在使用程序控制时最好使用文本码,通过检测CONNECT一词来确认连接的建立。AT指令通常由字符AT或at〔大小写要一致〕作为前缀,MODEM从这两个字符中检测出计算机所使用的波特率、字长、奇偶校验等信息。发给MODEM的指令一般使用7个数据位、一个奇偶位和一个停止位组成的帧,也可以使用8个数据位、无奇偶位和一个停止位组成的帧。下面介绍常用的AT指令的格式及其用法:Dn――拨号指令,常用的参数有:0~9拨号数字P双音频拨号T脉冲拨号,逗号,数字之间的间歇,插入1秒钟等待时间W1秒钟拨号等待;分号,指令执行后强令MODEM停留在指令模式〔在指令行的末尾〕AT指令的根本格式为:AT+命令字符及相关设置参数。AT为前导符,表示命令的开始,命令字符及相关设置参数表示将进行何种操作,如:AT+CMGR=〈n〉表示读索引号为n的短消息。AT指令的返回代码分别以字符<CR>和<LF>开始和结束。如果指令的语法不正确,就返回“ERROR〞字符;如果指令是正确的,但存在错误的参数,便返回“+CMEERROR:<Err>〞或“+CMSERROR:<SmsErr>〞,其中<Err>和<SmsErr>是不同的错误代码;如果指令被成功的执行那么会返回“OK〞。例如:用AT指令发送短消息的格式为AT+CMGS=<length><CR>,其中length为短消息内容的PDU编码。如表4.1所示一局部常用的收发短消息的AT指令。表4.1常用的短消息AT指令集功能格式说明选择短消息效劳AT+CSMS选择是否翻开短消息效劳以及播送效劳短消息存储AT+CPMS选择短消息优先存储区域短消息格式AT+CMGF选择短消息支持格式〔TEXTorPDU〕保存设置AT+CSAS保存+CSCAand+CSMP参数设置恢复设置AT+CRES恢复+CSCAand+CSMP参数设置显示TEXT参数AT+CSDH显示当前TEXT模式下结果代码新消息提示AT+CNMI选择当有新的短消息来时系统提示方式读短消息AT+CMGR读取短消息列短消息AT+CMGL将存储的短消息列表发送短消息AT+CMGS发送短消息写短消息AT+CMGW写短消息并保存在存储器中从内存中发短消息AT+CMSS发送在存储器中保存的短消息设置TEXT参数AT+CSMP设置在TEXT模式下条件参数删除短消息AT+CMGD删除保存的短消息4.2软件设计语言与原那么软件语言的选择本系统将采用Microsoft公司推出的VisualBasic语言作为软件的程序设计语言。主要有以下几点原因:〔1〕VisualBasic本身是一种可视化的、面向对象和采用事件和采用事件驱动方式的结构化高级设计语言,可用于开发Windows环境下的各类应用程序。并且具备简单、方便、高效率的特点。〔2〕VisualBasic系统具有很强的数据库管理功能。利用数据控件和数据库管理窗口,可以直接建立或处理MicrosoftAccess格式的数据库,并提供强大的数据存储和检索功能。同时,VisualBasic还能直接编辑和访问其他外部数据库,如dBASE,FoxPro等,这些数据库格式都可以用VisualBasic编辑和处理。除此之外,VisualBasic提供开放式数据连接〔opendatabaseconnectivity〕,即ODBC功能,可通过直接访问或建立连接的方式使用并操作后台大型的网络数据库,如SQLServer,Oracle等。〔3〕VisualBasic是一种高级程序设计语言,不具备低级语言的功能,对访问机器硬件的操作不太容易实现。但是它可以通过动态链接库〔DLL〕技术将C/C++或汇编语言编写的程序参加到VisualBasic应用程序中去,可以像调用内部函数一样调用其他语言编写的函数。此外,通过动态链接库,还可以调用Windows应用程序接口〔API〕函数,实现SDK所具有的功能。数据库的选择根据本系统的要求和实际条件,通过比拟和分析,数据库选用桌面型数据库产品中的Access数据库。数据库设计是系统开发过程中非常重要的一个阶段,数据库设计的好坏直接影响了工程开发的复杂程度和系统的执行效率。选择一个适宜的数据库系统显得尤为重要。现在的数据库分两类,一是桌面数据库,例如Access,Foxfro和dBase等;另一类是客户/效劳器型数据库,例如SQLServer、Oracle和Sybase等。一般而言,桌面数据库一般运行在个人计算机上,具有对硬件要求低、容易操作、开发本钱低等特点,它一般应用于小型的、单机的应用程序,它不需要网络和效劳器,实现起来比拟方便,只提供数据的存储功能。客户/效劳器数据库主要使用于大型的、多用户的数据库主要适用于大型的、多用户的数据库管理系统。Access是Microsoft公司的一个成功的数据库产品。其核心是MicrosoftJet数据库引擎。早期的产品Access2.0在自动化中获得了广泛应用,后续版本的功能不断得到提高,它与MicrosoftOffice套件紧密结合,使之得到越来越广泛的应用。Access本身是一个可视化的数据库管理系统,它使用了内嵌VisualBasic语言作为开发工具,完全面向对象编程,可以可视化地创立数据库应用程序,而且与传统桌面数据库不同地是它支持网路环境地应用。另外,将VisualBasic和Access结合起来使用,最主要的优点就是两者使用相同的数据库引擎,即MicrosoftJet。因此,可以建立既包括VisualBasic组件又包括Access组件的应用程序,这样就提高了程序稳定性,充分发挥了两者各自的优点。4.2.3〔1〕实用性原那么系统要求最大限度地满足实际工作地需要,充分考虑各业务层次和各管理环节数据处理地实用性,用户接口和操作界面设计尽可能考虑人体结构特征及视觉特征,界面力求美观大方,操作力求简捷实用。〔2〕可拓展性和可维护性原那么为了将来地开展,系统应具备良好的可拓展性和可维护性。软件设计尽可能模块化、组建化,并提供配置模块和组件化工具,使应用系统可以灵活配置,适应不同的情况。数据库的设计尽可能考虑到将来的需要。〔3〕平安、可靠性原那么应用软件与数据库系统的设计要做到平安可靠,防止非法用户的入侵。应用系统采用多级认证措施。〔4〕标准化原那么软件设计严格执行国家有关软件工程的标准,保证系统质量,提供完整、准确、详细的开发文档,为用户二次开发提供源程序。4.3动态链接库的原理与设计动态链接库的原理动态链接库是WINDOWS系列软件的重要组成局部。动态链接库是指WINDOWS把一个模块中的函数调用链接到库模块中的实际函数上的过程。动态链接库发生在运行时刻。在WINDOWS中,动态链接库是作为一个独立的模块进行编译和加载的,在应用程序执行时,被动态链接。动态链接库提供了一种进程调度的新方法。这些函数不是进程的可执行代码,函数的可执行代码存在动态链接库中,其中包括一个或多个函数。而且,这些函数直到进程使用时才编译,链接并存在内存中。如WIN95的API函数就是使用动态链接库。当进程开始进行时,或当进程的一个过程调用动态链接库中的函数时,动态链接便加载到该进程上。当动态链接库加载到一个进程中时,操作系统便把DLL模块映射到进程的地址空间中,使DLL的可执行代码在该进程中有效。而当动态链接从进程中卸下来时,DLL模块就收回进程中的地址空间映射。使用动态链接库,易于维护用户程序,允许WINDOWS应用程序共享资源和代码,提高了效率,节省了资源。动态数据交换的功能除表达在应用程序中外,目前应用较广的是动态数据交换技术是可在WINDOWS的开发工具中实现动态数据交换。以VB为例:VB以其编程高效而著称,但它也有其不完善的地方。如VB本身并不提供音乐。而且VB是一种解释执行的程序设计语言,没有编译执行的语言的运行速度快,如果需要在VB中实现一些较为费时的复杂操作,那么可以使用由更快的程序设计语言(如C,VC++等)编写的动态链接库。VisualBasic最强的功能之一就是使用了独特的动态链接库的能力,大大扩展了其功能。有了动态数据交换以后,VB不但可以自动从其它应用软件中获得数据,而且可以自动更新,甚至可应用其它软件的特殊功能来弥补自己的缺乏。建立动态链接库的方法有很多种,这里提供一种建立C动态链接库比拟简单的方法。它只要求编写一个源代码文件(.C),相应的一个模块定义文件(.DEF)和头文件(.H),然后用VC5.0编译器编译链接就可生成DLL文件。建立动态链接库的C语言代码与DOS下运行的C语言代码略有区别,它必须写成子程序的形式,子程序init()执行初始化串行口一的功能,子程序recbyte()以查询方式从串行口一接收一个字符,关键字APIENTRY表示以后应用程序可以象调用Windows本身的API函数一样调用这两个函数。对于子程序recbyte(),在通讯线状态存放器第0位为0,即数据没有准备好,并且没有超时期间,它一直查询。数据准备好了,立即进行接收;万一接收超时,它返回一个ERROR,这样就可在发送方没有发数据的情况下防止进入死循环。本程序处理各种通讯出错都返回同一个ERROR,当然最好能根据各种通讯出错原因返回相应号码。动态链接库的设计建立短信收发动态链接库的方法是首先在VC中新建一个ATLCOM工程,然后创立接口TESTTFTOPSms,接着按照最初设计添加其它类,最后完成编码和调试。该组件的接口名称是TESTTFTOPSms,提供的接口函数有:StartSMSThread;AddSMSToPool;GetSMSFromPool;EndSMSThread;SendASMS;ReceiveASMS;EndSMS;其功能分别是:启动短信收发线程;将短信参加短信线程;将收到的短信放到短信线程;结束短信线程;直接发送短信;接收短信;接收短信收发。短信的收发包括两种方式:一种是采用线程方式进行短信的发送和接收,即将短信参加队列进行收发,StartSMSThread;AddSMSToPool;GetSMSFromPool;EndSMSThread;SendASMS是采用非线程收发短信的函数;另外一种是采用非线程的方式进行短信的收发。SendASMS;ReceiveASMS;EndSMS这三个函数就是采用非线程方式,即直接收发短信。除此之外,该动态链接库还包括了一些公共函数,线程方式和非线程方式都可以使用,用来配置参数和测试设备。这些函数是:SMSSettings;GetSMSDeviceID;CheckDevice。其中SMSSettings的功能是设置短消息中心号码,设置串口,波特率。GetSMSDeviceID的功能是获得设备ID号,CheckDevice的功能是测试设备。4.4数据库的设计与实现数据库设计原那么〔1〕一致性原那么对信息进行统一,协调好各数据源,做到“数出一门〞、“算法统一〞和度量一致。保证系统数据的一致性和有效性。〔2〕完整性原那么数据库的完整性使指数据的正确性和相容性。要防止合法用户使用数据库时向数据库向数据库参加不合语义的数据。〔3〕平安性原那么数据库的平安是指保护数据,防止非法用户使用数据库,或合法用户非法使用数据库造成数据泄露、更改或破坏。〔4〕可伸缩性原那么数据库结构的设计应充分考虑开展的需要、移植的需要,具有良好的扩展性、伸缩性和适度冗余。已接收短信箱表由于选用的是MicrosoftAccess数据库,根据需求建立表1,表2,表3如下列图4.1建立Access数据库。已接收短信箱表已发送短信箱表已发送短信箱表簿表簿表图4.1建立Access数据库建立一个名为短信箱的数据库,在其中参加3张表,它们分别是“收到的短信〞,“已发送的短信〞,“簿〞。在VB环境中参加ADO控件,即可调用这个数据库中的各张表,详细的调用方法将下下节中介绍。4.5PC机用户界面设计与实现本节将介绍在VisualBasic环境中调用动态链接库以及数据库的连接。在建立短信收发工程的同时也要建立一个标准模块,模块主要是对通用过程的声明。以方便在窗体的设计中调用短信息收发的各种函数。下面介绍采样线程的方式进行短信的发送和接收线程函数接口的工作原理:在程序的开始局部启动短信线程,调用函数StartSMSThread,在程序的结束局部结束我们的短信线程,调用函数EndSMSThread,当短信线程成功开始后,线程自动的从线程的短信发送队列中取出短信进行发送或者接收短信并放到接收短信队列中,只要使用函数AddSMSToPool把要发送的短信放到线程的短信发送队列中,要得到发回的短信,调用GetSMSFromPool,当此函数返回值为TRUE时,意味着有短信,短信的相关信息放在函数的参数里。具体的模块函数声明过程见附录4本设计使用AdoData控件访问数据库,可以不用编写代码,只需要通过简单的设置和操纵其属性就可以实现与数据库的连接,通过绑定数据感知控件就能提供一个访问数据库的界面,用来对数据的浏览、保存、删除等操作。用户界面包括两个窗体,一个是短信接收区,包括一个已接收短信列表;另一个窗体是短信发送区,包括一个已发送短信列表。短信接收区窗体如下列图4.2所示,当短信收发模块收到一条新的短信时,就会自动在短信接收区中的各个工程中显示出来,包括对方的号,接收时间和短信内容。当接收到一条新短信后可以选择是否存储到已接收短信箱中。图4.2短信接收区窗体图短信发送区窗体如下列图4.3所示,在填入对方号和短信内容后,点击发送并确定后即可将短信息发送到目的。这时也可以选择是否将所发送的短信保存到已发送短信箱中。图4.3短信发送区窗体图当翻开短信收发应用程序前先要设置串口号和传输数率以及设置短信中心号码,确定后,软件就会提示短信中心号码设置是否成功,如果设置成功即可开始收发短信,如果设置失败,那么要检查短信收发终端。如下列图4.4所示,设置各项参数。图4.4参数设置界面图短信接收区窗体和短信发送区窗体的设计源代码见附录5第五章系统的调试与性能分析5.1系统的调试本系统中的硬件局部主要是是短信收发终端,包括GSM模块〔Q2403A〕和它的外围电路。市面上的GSM模块现在国内无法生产,都是直接进口。模块的外围电路那么是由作者根据模块的技术手册自行设计,并制作出了PCB板。软件局部那么是以VisualBasic6.0为应用程序编译环境,通过调用动态链接库发送AT指令〔RS-232通信〕给短信收发终端,实现其短信息的收发功能,在与Access数据库相连后就可以实现对短消息的各种管理。硬件调试硬件局部中的外围电路的PCB设计图经过屡次修改和完善后拿到印刷电路板厂制作了3块。外观图见附录中所示。元器件那么是由作者自行焊接上去。硬件调试主要是通过以下几个步骤:电气检查;元器件检查;电源局部测试;串口通信局部测试。1〕电气检查由于模块的外围电路硬件的焊接都是由作者手工焊接完成,并且有许多元器件都是采用的贴片封装,其中引脚的最小间距只有0.3mm,这都给焊接带来了很多不便〔在没有焊接专用设备的情况下〕,在这种情况下就很容易出现虚焊甚至漏焊的现象。这一步调试时采取的是利用万用表来检测每个焊接点,看是否有虚焊漏焊。通过逐个焊点的排查,确实出现了一些虚焊的地方,重新加焊后即可解决问题。再每个焊接点都检查后,确定排除了焊接带来的问题后,开始下一步调试。2〕元器件检查要确保电路能够调试成功,一个最根本的要求就是所用到的元器件都能够正常工作。在制作硬件时除了保证元器件能够正常工作外,还要确保元器件的位置正确,即元器件的实际位置和设计图保持一致。其中包括元器件的种类,取值大小都和设计图相同。在将PCB板上所以的元器件和设计图一一对照检查后,没有错误后,开始下一步测试。3〕电源局部测试电源局部测试是硬件调试过程中一个必不可少的步骤,只有这个局部工作正常,其他的电路才可能工作正常。模块外围电路的电源局部包括一个电压变换电路,即将外部电源接入后经过一电压变换电路后,提供一个稳定的电压给模块以及其他电路。再测试时,先测试外部电源电压,电压表显示正常。当测试电压变换芯片LM2941S的电压输出端〔Vout〕时,电压值为5.489V,并且不时地跳变,与理论值相差很大,测试+VBATT脚电压时,电压值一度到达6.753V,也十分不稳定,测试说明电源电路存在问题。为了查明原因只有从电源电路地源头查起,测试显示外部电源提供的电压是稳定的正常的。那问题一定出在电压变换电路即LM2941S上。根据理论设计,LM2941S的输出电压值是通过两个外接电阻的比值来调节的。在确保没接错电阻的情况下,判断LM2941S工作不正常。造成LM2941S工作不正常的原因有很多,在确定芯片没坏的情况下查找问题所在,经过对电源电路反复的检查和测试发现电源电路的接地不正常。问题出现在外部电源的输入端口,如图3.6中所示的Z5,当外部电源的输出端未插入电源输入端口时,它的两个GND端时相连的,但是当外部电源的输出端插入电源输入端口时两个GND端就断开,不能连通。这种情况导致的后果时外部电源电源的负极未能与外围电路的GND相连,在解决这个问题后,接上外部电源,经测试LM2941S的Vout端的电压值为4.098V,与理论设计值4.1V非常接近,测试其他地方,电压一切正常。问题得到解决,电源局部测试完毕。4〕串口通信局部测试将PC机和短信息收发终端相连是实现短信息收发功能的关键所在,只有实现PC机和短信息收发终端的互相通信,才能用PC机控制短信息收发模块。在实际的调测时,需要注意的一个问题是,九针串口的类型有M型和F型,在实际的焊接时,短信息收发终端上使用的是一个M型的串口,这时用一根两端都是F型的串口线将短信息终端和PC机相连,两者不能实现通信。由于计算机上的九针串口是M型,所以短信收发终端上串口最好使用F型。因为用来连接PC机和短信息收发终端的串口线一端为F型一端为M型时,它的两端才是一一对应的。软件调试软件需要和硬件即短信息收发终端结合起来调试,在VB6.0环境中编译后无错误出现后,生成相应的可执行程序后,就可将PC机和短信收发模块相连,看应用程序是否能控制短信收发模块实现短信的收发,看是否能完成对短信息的各种存储。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024至2030年中国钨铜材数据监测研究报告
- 2023年滤光片项目评价分析报告
- 2024年芳纶纤维项目综合评估报告
- 2024至2030年中国节气门位置传感器软膜电路数据监测研究报告
- 2024至2030年中国箱带行业投资前景及策略咨询研究报告
- 2024至2030年中国水性丙烯酸填充料数据监测研究报告
- 2024至2030年中国无甲醛多层板数据监测研究报告
- 2024至2030年中国家用电冰箱数据监测研究报告
- 2024至2030年中国合毛油数据监测研究报告
- 中医内科学试题附答案(卷3)
- TCALC 003-2023 手术室患者人文关怀管理规范
- 班主任工作经验分享如何成为优秀的班主任
- 古诗文系列课件模板-山房春事二首
- 2024年上海市第二十七届初中物理竞赛初赛试题及答案
- 2011年认识实习报告
- 水务公司招聘笔试题库及答案
- 医疗垃圾分类与处理的人员培训与资质要求
- 审核的改进计划和措施
- 《旅游管理》专业调研报告
- 2024野生哺乳动物及栖息地调查技术规程
- 2024年中医药知识与技能竞赛题库附含答案
评论
0/150
提交评论