您的位置 首页 数字

根据C8051F021的定位和报警移动终端规划

摘要:C8051F021是美国Cygnal公司生产的单片机。具有双串口、低功耗、高速度等优点。本文以GSM的数据业务,设计一种具有报警和定位的移动终端,并介绍该终端的结构框图、工作原理以及I/O配置和

摘要:C8051F021是美国Cygnal公司出产的单片机。具有双串口、低功耗、高速度等长处。本文以GSM的数据事务,规划一种具有报警定位的移动终端,并介绍该终端的结构框图、作业原理以及I/O装备和初始化程序。 关键词:C8051F021 GSM模块 GPS模块 移动终端 定位报警 导言 GSM网是现在移动通讯体系中最老练、最完善、运用最广的一种体系。数据事务作为GSM网络的一种根本事务,已得到越来越多的体系运营商和开发商的注重,依据这种事务的各种运用也繁荣发展起来。以GSM网络作为无线数据传输网络,可开宣布多种远景极端达观的运用,如无线远程检测和操控、无线主动警报等。本文依据GSM的数据事务规划一种实时性比较强、数据率为9.6kbps的具有报警定位的终端。 1 C8051F021简述 C8051F021是集成在一块芯片上的混合信号体系级单片机,芯片上有32位数字I/O端口(引脚),与规范8051的端口(P0~3)相同。 C8051F021在功用上有所增强,每个I/O端口都可独登时设置为推挽或开漏输出和弱上拉,这为一些低功耗体系规划供给了节约电源的手法,而其最杰出长处便是改进了能够操控片内数字资源与外部I/O引脚相连的穿插最初网络。经过设置穿插开关操控寄存器,将人的数字资源输入输出装备为端口I/O引脚,这就答运用户依据自己的特定运用将通用I/O端口与所需数字资源相结合。C7051F021具有双串口、多中止源、低功耗、高速度、低电压作业(3.3V)、高容量存储器等特性,这些特性满足本终端中心处理器的要求:低功耗、集成度高、可扩展性好等。 2 终端结构框图 终端体系是由C8051F021单片机、GSM模块、GPSOEM接纳模块、键盘和液晶显现器组成,如图1所示。C8051F021单片机是用来实时收集终端外围设备数据并进行相应的处理;GSM模块即GSM无线调制解调器,完结和GSM网的接续,担任经过串口接纳来自单片机所收集到的数据,并以无线电磁波的方法发送,或接纳来自远程核算机发来的信息并传递给单片机处理;GPSOEM的主要功用是接纳卫星发射导航电文的信号,并进行码丈量或相位丈量,然后依据导航电文供给的卫星方位和时钟差校对信息,核算GPS接纳机的当时方位,在单片机的操控下传输定位数据;键盘包含数字键和功用键,数字键用来设置呼叫远程主机的号码,功用键具有相应的报警功用如火灾、匪警等和辅佐功用;液晶显现器用来显现操作信息和提示信息。因为移动终端不需收集和存储很多的数据,仅收集GPS-OEM模块的导航数据、报警类型数据和存储呼叫远程主机的号码数据和体系程序,所以C8051F021自带的存储器容量即64KB+128 Flash和4KB+256B RAM已满足本终端的需求,故不需扩展外部存储器。 3 作业原理 在终端中,由GPS-OEM模块完结方位定位。GSM模块完结与GSM网通讯接续,用户按键盘上的报警按钮后,单片机经过串口实时读取来自GPS-OEM 宣布的导航电文,从中提取经度、纬度、速度、时刻、航向定位数据,并和相应的报警类型数据重新组合构成新的数据格式。一起,以ATD号码> 指令进行拨号在接,衔接成功后经过所树立的数据链路实时传输数据,监控中心核算机接纳数据并进行为纬度数据坐标改换、差错校对等处理,在电子在图上实时显现出当时监控的终端地理方位,并实时地盯梢移动终端,并以声光的方法提示作业人员,以便及时处理警情。移动终端也可随时接来自监控中心的操控指令,并依指令履行相应的动作。 4 终端I/O装备和初始化程序

1.jpg

因为本体系需求装备UART0、SMBus、UART1、INT0和INT1(8位),存储器的作业形式为片内方法。P1端口作为4%26;#215;4 键盘的接口,P2、P3口作为通用的I/O端口,其间INT0用作远程主机呼叫终端时的中止处理,INT1用作键盘中止处理。故C8051F021单片机的EMIF和I/O端口装备如下。 ①设EMI的装备寄存器EMI0CF=0x00,因为本运用无扩展存储器和存储器映像的I/O设备,即存储器作业形式为片内方法;一起将 EMIFLE(XBR2.5)设置为0,这样P037、P0.6、P0.5的引脚将由穿插开关或端口锁存器来决议,不被穿插开关疏忽。 ②按UART0EN=1、UART1EN=1、SMB0EN=1、INT0E=1、INT1E和EMIFLE=0设置XBR0、XBR1和XBR2为 XBR0=0x05、XBR1=0x14、XBR2=0x04。 ③装备P1端口为数字输入形式,即P1MDIN=0xFF。P1端口低4位为键盘输出,高4位为输入,P1MDOUT=0x0FH(P1.0~P1.3为推挽方法,P1.4~P1.7为漏极开路方法),P1|=0xF0。 ④使能穿插开关,即XBARE=1,XBR2=0x44。因为EMIFLE=0,穿插开关译码器将不越过P0.7、P0.6、P0.5引脚,所以按优先权穿插开关译码表进行分配。UART0具有最高优先权,故P0.0分配给TX0、P0.1分配给RX0;SMBus的SDA、SCL别离分配在P0.2、 P0.3引脚;UART1的TX1、RX1别离分配在P0.4、P0.5引脚;INT0分配在P0.6引脚;INT1分配在P0.7引脚。 ⑤设置UART0的TX0引脚(TX0,P0.0)、UART1的TX1引脚(TX1、P0.4)为推换输出方法,即P0MDOUT=0x11。RX0、 SDA、SCL、RX1、INT0和INT1是由穿插开关分配输入的,因而与其端口装备寄存器的值无关。 ⑥P2、P3作为一般I/O端口初始化输入状况,即P2MDOUT=0x00、P2=0xFF和P3MDOUT=0x00、P3=0xFF。 引脚分配如表1所列。 表1 单片机引脚分配 引脚 P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 P1 P2 P3 功用 TX0 RX0 SDK SCL TX1 RX1 INT0 INT1 键盘通用通用初始化程序如下: void System_init(){ WDTCN=0xdeh; //制止看门狗 WDTCN=0xadh; EMI0CF=0x00; XBR0=0x05; //使能UART0、SMBus XBR1=0x14; //使能UART1,使能穿插开关和弱上拉,制止外部寄存器低端口ALE、WR、RD由穿插开关寄存器或地址锁存器决议I/O端口装备 P0MDOUT=0x11; //TX0、TX1为推挽输出,RX0、SDA、SCL、RX1、INT0和INT1是由穿插开关分配输入的,因而与其端口装备寄存器的值无关 P2MDOUT.0=0x0; //把P2.0位初始化为输入方法,用作LCD的指令/数据的区分 P2.0=1; //初始化为4%26;#215;4键盘接口 P1MDIN=0xFFH; //装备P1端口为数字输入形式 P1MDOUT=0x0FH; //装备P1.0~P1.3为推挽方法,P1.4~P1.7为漏极开路方法 P1|=0xF0; //P1端口低4位为输出,高4位为输入 P3MDOUT=0x00; //将P3口设置为输入方法 P3=0xFF; IE=0x85; //使能INT0、INT1并按默许的优先权进行切换 } ;UART0初始化函数;定时器1为UART0波特率源 void UART0_init(){ SCON0=0x50; //UART作业形式为1,8位数据位,使能RX TMOD=0x20; //定时器1作业形式2,8位主动重载 TH1=-(SYSCLK/9600/16);//按波特率设置定时器1的重载值 TL1=TH1; //设置定时器1的初始值 CKCON|=0x10; //运用体系时钟SYSCLK作为时基 PCON|=0x80; //SCOD0=1 TR1=1; //发动定时器1 } ;UART1初始化函数;装备定时器4为串口波特率源 void UART1_Init(void){ SCON1=0x50; //SCON1:形式1,8位UART,使能RX T4CON=0x30; //中止定时器;铲除中止标明;使能UART波特率形式 RCAP4=-(SYSCLK/9600/32);//按波特率设置定时器T4重载值 T4=RCAP4; //给定时器4赋初值 T4CON|=0x04; //(TR4=1)发动定时器4 TI1=1; //铲除HW_UART接纳和发送中止 } ;SMBus初始化函数 void SMBus_init(){ SMB0CN=0x04h; //装备SMBus在应对周期发送承认ACK SMBOCR=0x60; //时钟速率大约10μs,依据SMBOCR公式核算 SMB0CN|=0x40h; //使能SMBus } 6 总结 该该端具有功耗低、集成度高、数据处理速度快以及数据通讯实时性强等特色,可广泛运用于个人、出租车和远程车辆的定位和报警。因为其使用GSM网的电路型数据事务进行无线数据通讯,其通讯费用相对比较高。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/zhishi/shuzi/291964.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部