基于C8051F410单片机实现双频固定式阅读器的应用方案

发布者:Shuxiang最新更新时间:2024-02-26 来源: elecfans关键字:C8051F410  单片机 手机看文章 扫描二维码
随时随地手机看文章

随着当前物流行业的快速发展。作为物流主要运输方式的集装箱运输.其运输效率及货运安全性日益受到人们关注。近几年来,随着RFID技术的发展和推广,将RFID技术用于集装箱信息识别.实现集装箱运输的智能化已经成为各集装箱厂家竞相开发的目标。RFID技术是一种利用射频通信方法实现的非接触式、快速、实时和准确的采集与处理信息的自动射频识别技术。目前集装箱运输上对RFlD技术的应用仅仅限于利用阅读器射频信道识别电子标签内集装箱信息.并有实现其运输安全上的保证。本文设计了一种基于C8051F410单片机的双频固定式阅读器。该阅读器与智能集装箱安全设备及路标设备配合实用.不仅能快速识别集装箱信息,而且能监测集装箱内货物的安全。一旦集装箱被非法打开阀读器就能侦查到并将相关信息发送到监控中心报警。


1 ICSD系统介绍及阅读器在ICSD系统中的作用

ICSD(Intelligent Container Safe Device)系统即智能集装箱安全设备系统就是一种用于集装箱的安全监测装置及系统.其可以在集装箱箱门被非法打开时自动侦测并且记录信息.可以通过有效监测系统将记录信息传送到管理中心数据库,为相关工作人员提供信息。完整的ICSD系统包括ICSD、手持/固定式阅读器、路标设备、监控软件。数据中心和用户查询终端六个部分。各部分的功能及联系如图1所示:


集装箱在运输过程中要经过三个主要站点:货运出发点堆场、海关检查站点和货运目的地港口。在运输过程中整个系统工作方式是:在货运是出发点,工作人员利用阅读器向ICSD写入本次运输的相关信息,并进行电子施封。在货运出发点出口ICSD通过阅读器将其状态信息上传到数据中心。在海关检查站点,海关人员利用手持设备对ICSD进行海关用户电子解封,检查完毕后冉用海关命令电子施封,之后,ICSD更新相关信息并在海关人口处通过阅读器再次将其状态信息上传至数据中心。到达货运目的地港口后.丁作人员利用阅读器解封并禁能ICSD。出目的地港口时.阅读器将ICSD信息上传至数据中心。同时,在整个运输过程中.用户可随时通过用户查询终端追踪集装箱的状态及所处位置。


由ICSD系统功能流程原理分析可以看出,阅读器在ICSD系统中起通信桥梁的作用。上位机监控软件与ICSD之间必须通过阅读器的作用才能成功实现通信。


2 阅读器硬件设计

2.1阅读器总体结构

为了能使ICSD准确的定位和通信.阅读器与ICSD之间的通信采用了高、低频两种数据传输类型。采用433MHz或2.4GHz高频作为远距离数据链路通信频段.采用125KHz低频作为短距离数据链路通信频段。根据阅读器在ICSD系统中的功能和特性。本固定式阅读器硬件总体设计为五个模块:控制模块、高频收发模块,低频发射模块、串口通信模块和其他功能模块。其总体结构框架图如图2所示:

图2阅读器总体结构框图

2.2阅读器各模块的功能介绍

控制模块即MCU控制电路.选择的芯片是C8051F410。C8051F410是一款完全集成的低功耗混合信号片上系统型MCU。它具有功耗低、片内存储空间大、端口资源丰富、功能强大等特点。可以在阅读器基础卜进行其他功能的扩展。控制模块功能是完成低频信号的发射和高频信号的收发、解码。以及系统其他部分的控制。


串口通信模块主要用于完成单片机与上位机的串口通信。本部分设计为可选择的RS232和RS485电平转换电路。RS485电平转换芯片采用MAX485,RS232电平转换芯片采用SP3232 EE。


高频收发模块包括高频收发电路和高频天线两部分。高频模块选用的芯片是CC2500。CC2500是一款低成本真正单片的超高频收发器,是专为低功耗无线应用而设计。C2500射频收发器具有可编程的数据传输率。可达500kbps。内部集成了前向误差校正选项。大大提高了芯片的性能。另外.CC2500还为数据包处理、数据缓冲、突发数据传输、清晰信道评估、连接质量指示和电磁波激发提供广泛的硬件支持。高频收发模块主要功能就是完成高频信息的收发。当PC通过串口向阅读器发送对ICSD的相关操作指令信息时,控制部分的MCU通过SPI总线与CC2500通信,由CC2500射频电路转发PC命令至ICSD。ICSD在接收到阅读器转发的PC命令并且响应对应操作指令后,向阅读器回发响应信息。此时CC2500高频部分再次接收ICSD的此响应信息并通过串口上传至PC机。


低频发射模块包括低频电路和低频天线两部分。低频发射模块选择的主要芯片是TA5275。ATA5275是ATMEL公司开发的一款用于汽车轮胎压力监测系统frPMS)。工作频率为125KHz的BCDMOS天线驱动器Ic。该芯片具有超低功耗,驱动器过电流保护,过热保护,低频唤醒芯片等功能。低频发射模块主要功能就是向ICSD发送低频唤醒信号,唤醒休眠的ICSD.使其与阅读器进行通信.并响应相关操作指令。当装有ICSD的集装箱进入读写器的识别范围时候上位机软件发送ICSD唤醒指令到阅读器阅读器再通过低频发射电路转发至ICSD.唤醒ICSD。


其他功能模块包括三个部分,电源部分、JTAG接口编程电路部分、报警电路部分。电源部分主要包括AC—DC转换模块、SIPEXlll7 3.3V电源芯片和SIPEXlll7 5.0V电源芯片。220V交流电通过AC—DC转换模块转换为12V DC.再通过两个电源芯片的稳压输送到各自所需的模块供电。JTAG接口电路功能就是实现在片编程和调试。报警部分电路主要芯片是FM3130.由电源或后备电源供电。FM3130是一个高度集成的器件内部集成块了64Kb的串行非易失性RAM、带有报警功能的RTC和可编程频率的时钟输出。报警模块的功能就是提供实时报警。


3 通信协议的制定

根据阅读器在ICSD系统中的作用,总体上可将通信协议设计为两个部分:PC机与阅读器的通信协议格式和阅读器与ICSD的通信协议格式。这两种协议又可以向下细分为命令数据包格式和响应数据包格式。又因为阅读器与ICSD的通信包括高频和低频两种方式,也必须分开制定两种方式的协议格式。由于ICSD和阅读器各种应用环境十分恶劣,从系统可靠性和稳定性要求出发.本协议的制定考虑使阅读器功能尽量简化。阅读器f或Pcl对ICSD的高频通信命令数据包格式见表I,ICSD高频响应阅读器(或PC)的数据包格式如表2。阅读器与ICSD低频通信数据包格式见表3。起始帧决定数据包传送的开始。命令模式确定是点对点还是广播指令。地址确定是否为本地地址。ICSD参数描述用户须知的集装箱相关信息。ICSD状态参数描述ICSD当前所处状态及用户须知的集装箱相关信息。CRC校检位检验传送数据数否出错。工作模式位描述ICSD所处的状态。结束帧决定数据传送的完毕。

4 阅读器软件设计

阅读器程序总体设计分为四个部分:初始化部分,串口指令及响应处理部分.低频扫描处理部分和高频数据转发部分。


初始化部分主要完成系统初始化。包括定时器初始化,串口初始化,端口配置,中断初始化。SPI初始化,CC2500初始化,ATA5275复位.晶振初始化.以及部分变量的初始化。

串口指令处理及响应部分先判断CRC位和起始位是否正确.如果正确进入串口数据处理程序进行解析.并且响应串口指令。由于串口指令包括点对点和广播两种形式所以将程序定为两个分支:阅读器广播指令解析及响应部分与非阅读器广播指令解析及响应部分。


阅读器广播指令解析及响应部分.首先判断是否为PC扫描阅读器参数指令。是则扫描阅读器参数并利用串口发送指令应答数据。


非阅读器广播指令响应部分又分支为阅读器点对点指令和其他高频指令。非阅读器广播指令解析及响应部分首先判断是否为本地地址,然后根据本地地址是否匹配分支为阅读器点对点指令和其他高频指令。对于阅读器点对点指令则先判断点对点指令的具体功能.最后进入具体功能函数进行解析处理。其他高频指令具体包括ICSD点对点指令和ICSD广播指令。对于本地ICSD点对点指令或广播指令.阅读器直接转发。非本地的ICSD点对点指令或广播指令如果存在报警事件就转发.否则当作干扰跳过。串口指令处理程序充分考虑到阅读器功能的扩展。


在低频扫描过程中要先使高频进入空闲状态。其他时间高频均处于接收状态。为防止与其他中断的冲突.在低频扫描之间要关全局中断,扫描完后开全局中断。


高频数据接收转发处理分主要完成高频数据的接收和串口转发。高频收发完成后高频进入接收状态。


阅读器主程序流程图如图3所示:

图3阅读器主程序流程图

5 结论及展望

本文设计的ICSD系统中双频固定式阅读器.通过指令数据模拟,经在PC机上运用串口通信软件测试,实现了阅读器与ICSD、PC之间的通信。经试验测试该阅读器能快速准确识别集装箱信息并能对报警事件及时响应,提高了集装箱流通速率和其运输安全性。根据当前国内集装箱运输领域需求分析。如果按每年1%的需求量逐年递增来推广该产品.预计每月的收益将增加50多万元同时.也可以为商家挽回因偷盗而造成的损失。因而,该阅读器具有广阔的应用前景。随着网络技术的发展.ICSD系统不仅要求阅读器能够快速识别集装箱信息.还要求具有接入网络的功能,今后的工作是进一步完善硬件设计和优化程序流程.并在阅读器中加入Wi—Fi和Ethemet功能.使其具有能够接入应用场点无线局域网和以太网的功能。


本文作者创新点在于:采用双频通信的方式解决了阅读器信息识别和运输安全监测的功能;该阅读器具有价格低廉和经济效益高的特点。


关键字:C8051F410  单片机 引用地址:基于C8051F410单片机实现双频固定式阅读器的应用方案

上一篇:基于8051F350单片机实现温度采集监控系统的应用方案
下一篇:基于单片机C8051F021和时钟芯片实现定时采集存储系统的设计

推荐阅读最新更新时间:2024-11-12 19:51

AT90S8515单片机对LED数码显示管的控制设计
一、电路 附图是AT90S8515控制数码显示的电路略图(图中只画出了与数码管接口的电路,其余接线略)。单片机的PBO~PB7接LED共阴数码管的a~h脚,控制段码;单片机的PDO—PD5分别接六只LED数码管DO~D5的共阴极,控制位码。其中PDO~PD5是通过SL-AVR开发实验器上的LED数码管短路块DLED接至数码管DO—D5的。 二、字符8右循环移位显示程序 在SL-AVR开发实验器LED上实现字符8右循环移位显示的源程序清单如下: 第1行表示程序中包含定义AT90S8515特殊功能寄存器的头文件8515def.inc,指明所用器件为AT90S85150接着定义寄存器r16、r22分别为暂存器temp、sc
[单片机]
AT90S8515<font color='red'>单片机</font>对LED数码显示管的控制设计
无线远程遥控风扇设计实现
  引言   目前市场上销售的风扇主要是通过导线将转速控制器和扇体连接起来,并且在使用的时候转速控制器往往被固定在墙体上,不能够实现随时随地的对风扇进行调控。同时由于采用导线连接方式进行调控风扇,必然会铺设大量的线路,造成线路冗余和浪费。并且目前的绝大多数的电扇不具备根据外界环境智能调节转速的功能,使得当前风扇的使用过于机械性。   本文设计一种可以远程遥控风扇转速,并且通过PIC单片机控制在外界一定温度下扇体可以自能调控自身的转速,达到用户可以像遥控电视一样遥控风扇,并且也不需要铺设大量的尸体线路去连接转速控制器和扇体。由于在扇体电路设计时,通过加入PIC单片机主控芯片智能的根据外界温度(遥控器中传送的温度数据)自动控制转速
[单片机]
无线远程遥控风扇设计实现
51单片机1s延时程序设计
#include sbit P1_0 = P1^0; void Delay(); // 下面引用时一定要和这里的大小写一致否则会有警告或错误 void Main() { while (1) // 开始一直循环 { P1_0 = 0; Delay(); // 没有参数也要加 () 否则会有Warning P1_0 = 1; Delay(); } } void Delay() // 12M晶振1s延时 { unsigned char h, i, j, k; for (h = 5; h 》 0; h--) for (i = 4; i 》 0; i--) for (j = 116; j 》 0; j--) for (k = 214;
[单片机]
51<font color='red'>单片机</font>1s延时程序设计
战略合作 | IAR全面支持云途车规级MCU
IAR嵌入式开发解决方案现已全面支持云途半导体YTM32系列MCU,携手合作伙伴共同助力高端创新应用的开发 中国,上海 – 2024年1月26日 – 嵌入式开发软件和服务的全球领导者IAR与知名国产汽车芯片公司江苏云途半导体有限公司(以下简称“云途半导体”)联合宣布, 两家公司达成战略合作,最新发布的IAR Embedded Workbench for Arm 9.50版本已全面支持云途半导体车规级YTM32系列MCU,双方将共同助力中国汽车行业开发者的创新研发 。 云途半导体是一家专注于高性能汽车控制器芯片的集成电路设计公司。通过建立完善的汽车集成电路设计和验证平台,并严格遵循AEC-Q100、ISO-26262功能安全
[汽车电子]
战略合作 | IAR全面支持云途车规级<font color='red'>MCU</font>
如何用keilc51--单片机程序第一节
一、打开keil软件,创建项目 第二步选择芯片类型: 虽然用STC89C52RC(或者用STC90C516RD)的单片机,但 我们应选择ATMEL-AT89C52这个芯片。因为都是51的内核,只是厂商不同(一个是STC,另一个是ATMEL) 出现一个窗口,是51单片机的启动代码,不要。因为编译器在编译我们的文件时,会自动的添加启动代码进去。 第三步:建立文件 第四步:C文件添加到工程文件里 第五步:编写程序,输出HEX文件,也就是单片机可执行的二进制文件 #inclede sbit LED = P2^0; void main() { LED = 0;
[单片机]
如何用keilc51--<font color='red'>单片机</font>程序第一节
80C51单片机的startup.a51程序模块的作用
80C51在电源重置后(Power On Reset)所执行的第一个程序模块并不是使用者的主程序main(),而是一个隐藏在KEIL-C51标准链接库中称为startup.a51的程序模块。 startup.a51的主要工作是把包含idata、xdata、pdata在内的内存区块清除为0,并且初始化递归指针。接着startup.a51被执行的仍然是一个隐藏在KEIL-C51标准链接库中称为init.a51的程序模块。而init.a51的主要工作则是初始化具有非零初始值设定的变量。 在完成上述的初始化程序之后,80C51的控制权才会交给main()开始执行使用者的程序。
[单片机]
ST中国峰会:2017年STM32 MCU出货超10亿颗,中国市场贡献巨大
4月28日消息 毫无疑问,物联网时代已经到来!而且数据表明,意法半导体已经成为其中受益者之一。 4月25日至26日,意法半导体(以下简称ST)在深圳召开第三届“STM32中国峰会”。本次峰会主题是“无线连接与云接入”。今天讨论的主要话题包括传感与数据处理、安全、智慧工业等。包括微软、阿里云、机智云等众多合作伙伴带来的与ST 合作方案。 会议具体安排上,4月25日为意法半导体高层主旨演讲及STM32生态系统伙伴针对传感与数据处理、无线连接与云接入、安全与智能工业三大分论坛;4月26日将首次推出盛大的STM32粉丝狂欢节线下大派对,使与会者可以参加研讨会,观摩ST及合作伙伴的最新技术及展品。 在第一天会议演讲上,ST高管演讲分
[半导体设计/制造]
GD32 MCU的选项字节是什么?
GD32 MCU的选项字节是什么,有什么功能呢?选项字节被误篡改如何回复? 读者朋友们是否会有以上的疑问,首先我们先为大家介绍选项字节是什么以及选项字节的功能。 以GD32F30X系列MCU为例,其选项字节说明如下表所示,该选项字节共16个字节,用于芯片内部配置。具体说明如下:SPC为读保护控制位,可以设置芯片读保护;SPCN为SPC补字节,不需要配置;USER为用户配置字节,可以配置芯片从BANK0还是BANK1启动,配置低功耗模式唤醒后继续进入低功耗模式还是复位,配置是否使能硬件独立看门狗(硬件看门狗使能后,芯片上电后会自动打开看门狗,如果读者有发现芯片看门狗复位,且软件上没有打开看门狗,就可以排查下看是否该控制位被打开,
[单片机]
GD32 <font color='red'>MCU</font>的选项字节是什么?
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved