基于C8051F040多路浸水时刻记录电路模块化设计

发布者:zeta16最新更新时间:2024-01-11 来源: elecfans关键字:C8051F040 手机看文章 扫描二维码
随时随地手机看文章

针对某型航行器自沉系统中,需要掌握某合金材料在海水中因不同温度条件下的受腐蚀时间长短。采用模块化硬件设计,使用浸水传感器为检测单元、时钟芯片DS12887为计时模块;以C8051F040为微处理器和串行M25P80为存储模块设计浸水时间记录系统。外部数据通信采用CAN总线。通过实践证明,DS12887时钟能在掉电后正常运行,但时间长,需要新设定时间,以便准时记录。


在某型水下航行器自沉系统中,某合金材料在海水中一定时间内能正常工作,但正常时间过后会被海水腐蚀;从而实现该航行器的自沉功能。为此设计了该电路,用以测试铝铬合金材料在不同温度的多组时间信息。


1 系统硬件结构

基于C8051F040多路浸水时刻记录电路硬件部分由6个主要模块组成:浸水传感器、信号电平转换电路、达接斯时钟模块、串行存储器M25P80模块、单片机C8051F040模块和CAN通讯模块。系统硬件结构框图如图1所示。

a.JPG

1.1 单片机08051F040

C8051F040由美国Silicon Labs公司设计,对原51单片机内核进行了较大改造,由原来12个时钟执行一条指令,改进为一个时钟执行一条单周期指令,多数指令执行的时钟周期数与指令的Byte数相同,使得该款单片机的运行速度大幅提高。C8051F040具有64个数字I/O引脚,片内集成了一个CAN2.0B控制器。主要特性如下:(1)高速、流水线结构的8051兼容的CIP-51内核(可达25 MI·s-1)。(2)控制器局域网(CAN 2.0B)控制器,具有32个消息对象,每个消息对象有其自己的标识。(3)硬件实现的SPI、SMBus/I2C和两个UART串行接口。(4)5个通用16位定时器。(5)具有6个捕捉/比较模块的可编程计数器/定时器阵列。

1.2 浸水传感器及电平转换电路

浸水传感器采用自行研制的浸水模块,该模块接口简单,只需5根线分别为:浸水传感器测试点A、浸水传感器测试点B、供电电源24V、供电电源地、感应输出OUT24V。当浸水传感器测试点A和浸水传感器测试点B接触或之间有水使A、B导通,这样A、B间的电阻由无穷大变为几Ω甚至零。通过比较电路从而输出供电电压24 V,而单片机C8051F040I/O口能够承受的电压仅为5 V。电平转换电路采用光电隔离芯片TLP28 1-4电路图如图2所示。

b.JPG

1.3 时钟芯片DS12887

DS12887是美国达拉斯半导体公司推出的时钟芯片,采用CMOS技术制成,把时钟芯片所需的晶振和外部锂电池相关电路集于芯片内部。采用DS12887芯片设计的时钟电路无需外围电路并具有良好的微机接口。DS12887芯片具有微耗、外围接口简单、精度高、工作稳定可靠等优点,可广泛用于各种需要较高精度的实时时钟场合中。其主要功能如下:(1)内含一个锂电池,断电后运行10年以上不丢失数据。(2)计秒、分、时、天、星期、日、月、年,并有闰年补偿功能。(3)二进制数码或BCD码表示时间、日历和定闹。(4)12小时或24小时制,12小时时钟模式带有PWM和AM指导,有夏令时功能。(5)Motorola5和Inatael总线时序选择。

DS12887有4个状态控制寄存器,它们在任何时间都可访问,即使更新周期也不例外。具体电路连接图如图3所示。

c.JPG

1.4 串行存储器M25P80

存储器M25P80存储容量为8 MByte,它采用SPI数据总线的方式进行通信。该存储器有16个扇区,每个扇区有256页,每页256 Byte。工作电压范围2.7~3.6 V,工作温度范围-40~+85℃,最大时钟75 MHz。能进行10万次的擦写,数据保存20年,体积小巧,是一款通用存储器。M25P80支持的操作指令共有12条,指令格式为如图4所示。

d.JPG

其中,8位的命令是必需,地址、哑元以及数据字节的有无和长度会因指令的不同而有所差异,详情如表1所列。所有的命令码、地址、串行输入/输出的数据,均是高位在前。

e.JPG

由于单片机C8051F040的工作电源3.3 V,M25P80的工作电压范围为2.7~3.6 V故二者可以直接相连接。具体电路图如图5所示。

f.JPG

2 软件设计

由于整个浸水腐蚀的时间不确定,需要一个开始记录的时间。这个开始记录时间是以系统通电正常工作的时刻为准。系统的软件设计主要包括浸水传感器数据的检测程序、DS12887时钟数据存储程序和CAN通信程序3部分。

2.1 浸水传感器数据的检测程序设计

浸水传感器数据的检测程序设计采用定时器检测的方式;当持续检测到浸水输出信号3 s,则认为此刻浸水。具体设计框图如图6所示。

g.JPG

浸水传感器数据的检测程序初始化后,记录开始时间;在100 ms定时中断中,检测多路的浸水输出信号。针对不同的浸水传感器采用记录对应的编号同时记录该时刻的时间。

2.2 DS12887时钟数据存储程序

时间读取程序设计就是对DS12887芯片的内部的4个内部寄存器A、B、C、D进行相应的初始化和对其它寄存器数据的读取。

时间数据储存程序设计是通过SPI总线,将时间数据存入M25P80当中。C8051F040中有SPI总线模式。

2.3 CAN通信程序设计

由于C8051F040器件内部集成了Bosch CAN控制器,只需要对该控制器进行初始化和配置便可以实现CAN通信。操作通过特殊功能寄存器直接或间接访问CAN控制器中的CAN控制寄存器。


3 结束语

设计的时间记录系统能应用其他场合的时刻记录。该设计具有结构简单、功能齐全、系统运行可靠的特点。需要注意的是,DS12887时钟芯片启动后需要设定时间,这样才能与标准时间一致。实践证明,虽然DS12887时钟能够掉电后正常运行,但时间长(约3个月),需要重新设定时间以便准时记录。


关键字:C8051F040 引用地址:基于C8051F040多路浸水时刻记录电路模块化设计

上一篇:浅谈8051单片机进行外部数据交换的3种方式
下一篇:使用8051微控制器的数字电压表的实现方法

推荐阅读最新更新时间:2024-10-09 14:09

基于C8051F040的CAN总线智能节点设计
引言 “X型火控系统”根据实际需要采用了CAN总线方式来实现其内部单体间的通信。CAN总线是一种用于各种设备检测及控制的现场总线,它是一种多主总线,在高速网络和低成本的节点系统中应用都很广泛。CAN总线与一般的通信总线相比,它的数据通信具有突出的可靠性、实时性和灵活性。其特点如下: *可以多主方式工作。 *CAN节点只需对报文的标识符滤波即可实现点对点、一点对多点及全局广播方式发送和接收数据。 *CAN总线通信格式采用短帧格式。 *采用非破坏性总线仲裁技术。 *直接通信距离最大可达10km (速率5kb/s以下),最高通信速率可达1Mb/s (此时距离最长为40m),节点数可达110个,通信介质可以是双绞线、同轴电缆或光导纤维。
[单片机]
基于<font color='red'>C8051F040</font>的CAN总线智能节点设计
模块化LED大屏幕显示器的电路软硬件设计
   摘要: 针对现有的LED大屏幕显示器需重复设计、成本高等问题,提出了一种模块化设计的LED大屏幕显示器,可以实现灵活配置、脱机运行、特效显示等,并简要介绍了其硬件结构和软件功能。     LED大屏幕显示器由于其醒目、内容灵活多变等特点,已经越来越多地应用于广告、信息发布、交通指示等公共场所,取得了良好效果。LED显示屏主要分为数码显示和点阵显示两大数,本文只讨论点阵显示。目前的LED显示屏基本上都是先由用户提出要求,生产厂这根据需要订做,每次都要重复设计电路和机械结构,造成资源浪费,而且若用户的需求改变,改动将十分困难。   实际上不论显示屏的大小,其原理都是相同的,因此完全可以设计出一种标准化、模块化的LED显示屏,
[工业控制]
小广播
设计资源 培训 开发板 精华推荐

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

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

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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