当前位置:首页 > 单片机 > 单片机
[导读]为了转发水质监测数据,采用新型的1T周期单片机STC10F04EX为控制核心,将双4选1模拟开关4052的2个公用端与单片机的RxD、TxD端连接,通过分时连通的方式,对单片机的UART进行扩展,构成一个多串口的数据转发系统。扩展的串口分别连接到3个不同的水质监测设备,以及一个与无线发射模块。单片机分时得到3个水质监测设备传来的数据,并将得到的数据通过无线模块进行转发,转发距离可达3 000 m。远离现场的计算机完成数据接收及分析。该方法用于对单片机串口扩展和远距离数据传送简洁可靠。所建的数据收发系统,可以同时连接多台串口监测设备,弥补了计算机串口较少的不足,并且功能有别于多串口卡。该系统已成功应用于多传感器水环境监测的数据转发。

引言
    RS 232串口通信是一种常用的通信方式,许多数字化设备、测量仪器都具有串行接口。这些设备可以方便地与PC、PLC等控制器连接进行数据交换,从而组成一个测试检测/监测系统。
    目前安装在江、河、湖等水体现场的不同种类的水环境监测设备,通过采集水样,周期性地生成一组数据通过串口向外传送。如果在现场需配置一台或多台PC,既不经济,又难以维护。本文介绍的基于单片机的多串口数据收发控制系统,可以同时连接多台不同类型的水质监测设备,现场接收采集的数据并通过无线模块向远端控制中心传递,转发传送的距离约为3 000 m,远远大于直接的RS 232互连。多串口数据收发控制系统不同于多串口卡,可以脱离计算机独立工作,是计算机串口扩展、延伸的一种全新方法。
    用多串口数据收发控制系统取代计算机安置于监测现场,将来自于不同设备的数据进行初步整合,再通过无线方式向远离现场的中央控制室进行传送,则监测系统的可靠性、实时性、易维护性都大为增强。

1 水质监测系统的构成
   
本文所提及的水质监测系统,由光谱分析仪、水毒性分析仪、生物状态分析仪等组成,这些设备都具有RS 232接口,但是接口参数不尽一致,传送的数据格式也差别极大(见表1)。


    这些位于水体现场的测试设备,需要及时地将测量数据传递给远端的中央控制室。

2 多串口数据收发控制系统
2.1 多串口数据收发控制系统工作原理

    多串口数据收发控制系统,以单片机STC10F04EX为控制核心,扩展出多个全双工异步串行口(UART),用以同时连接多个外部串口设备。该系统既可独立地与所连接的设备交换数据,又能起到数据中继的作用,将来自上位端的命令传递到指定的串口设备上,或将接收到的来自不同串口设备上的数据经过初步整理后发送到上位端。
    由于要连接多个下位端执行设备,但STC10F04EX的独立UART只有一个,因此,必须对该单片机的UART进行扩展,才能连接多台串口设备。经过扩展的各路UART不能同时工作,必须在I/O的配合下选择对应通道分时工作。
    被监测的对象所发生的变化是个缓变过程,监测系统中的各个分析仪器所要传送的数据量有限,并且接收端大部分时间处于等待阶段,控制程序在设计时已充分考虑到数据的衔接和每种设备的采样和转换周期。因此,分时连接不会造成数据丢失导致失准,可以满足监测要求。
    图1显示了多串口收发控制系统的结构框图以及与3个外部串口设备的连接。该系统既可以将接收到的数据通过无线方式对外发送,也可以用有线的方式直接传递给本地电脑。


2.2 多串口数据收发控制系统硬件组成
   
多串口数据收发控制系统,采用型号STC10F04XE的单片机为控制核心,外加7279A键盘及数码管驱动电路,TTL-RS232电平转换电路MAX
232,4052双4选1模拟开关,无线收发模块等组成。
    STC11F04XE的单片机,以8051为内核,并具有以下鲜明特点:抗干扰能力强,1T周期CPU,独立波特率发生器,2个可切换串口,在系统可编程(ISP),片上扩展XRAM等。
    单片机STC10F04EX的UART可在P1口的P1.6/P1.7(UART2)和P3口P3.0/P3.1(UART1)间切换,可以分时当2个串口使用,这为调试系统和扩展串口带来了方便。由于该系列单片机支持在系统可编程(ISP),因此系统中的UART1通过电平转换电路,直接连接到PC机的一个串口上,用于对单片机的程序下载和调试。单片机正常工作时,可将串口设置在UART2上。
    采用双4选1模拟开关4052,将单片机的UART2扩展为4路。其中,单片机端的RxD/TxD分别接到4052的公共端,扩展端再由MAX232电平变换连接到外部具有串口的测量设备上。STC10F04EX的2个I/O引脚P1.1,P1.0与4052的通道选择线B、A分别相连,UART2的具体指向由这2条I/O选择控制。扩展的串口只能分时工作,具体分配见表2。


    由于连接的不同串口设备的通信参数不完全相同,STC10F04EX必须根据设备指向动态调整串口参数以适合外部串口设备。
    显示芯片7279A可以驱动8位共阴LED数码管并可采集64个键盘位置信号。该系统通过数码管显示工作状态(收发,等待,时间,通道号,参数等);通过键盘不仅可以设置“多串口数据收发控制系统”自身参数和调节自身状态,还可修改/设置所连接的外部设备的传送参数。CPU通过4个I/O引脚与7279A的4条控制线CS、DATA、CLK、KEY连接,就可驱动8位数码管并对按键进行监控。为了响应及时,采用中断方式响应按键状态,因此将KEY连接到P3.2(int0)上。
    无线收发模块,嵌入高性能射频芯片,采用高效循环交织纠检错编码,发送距离可达3 000 m。模块具有TTL电平的UART口,因此可以很方便地与单片机的一个扩展的UART连接。向无线收发模块写入和读出数据,与一般的串口操作基本一样。无线收发模块频点、空中速率、本地串口速率、校验方式等参数可以在线设置或通过厂家提供的程序进行设置。
    系统中无线收发模块本地串口通信参数设为(9 600,8,N,1),数据被调制在434 MHz进行发送和接收,空中速率9 600 b/s,发射功率100 mW。
    该无线收发模块,收到数据后通常延时几十到几百毫秒才发送,所带缓存256 B。若本地串口速率大于等于空中速率,则存在数据流量问题,可能会出现数据溢出导致丢失现象。因此若传送数据超过256 B,要进行数据分割,插入等待周期,采用分次发送的方式以避免数据丢失。本系统所连接的光谱仪数据量较大,因此单片机接收光谱仪数据后再经无线转发,要采用分段接收/转发方式,每次的数据量要小于256 B,多次重复,直至全部数据。

3 软件设计
3.1 有关寄存器的说明

    程序运行时首先进行初始化设置,其中涉及到几个比较特别的寄存器,其定义不同于其他51系列的单片机。
    寄存器AUXR,地址8EH。关系到独立波特率发生器,STC10F04EX既可以采用定时器1作为波特率发生器,又可以采用独立波特率发生器以释放定时器1,见表3说明。


    寄存器AUXR1,地址A2H。其中的D7位关系到单片机内在的串口切换。例如:
   
3.2 数据存储及转发
   
STC10F04EX单片机,内部数据存储器为256 B,片上扩展的外部数据存储器为256 B,共计512 B,数据空间紧凑。程序运行中的一些变量需要占用一部分数据空间,因此只能开辟约220个字节作为缓存空间,暂存接收到的来自串口设备的数据。如果一次接收的数据量小于缓存空间,则不会导致数据溢出;如果外部设备需传送的数据量较大,则必须与外部设备建立联络控制发送,以使每次传来的数据小于系统缓存,避免数据丢失现象的发生。
    所建立的水质监测系统中,“光谱仪”给出的数据量较大,因此“多串口收发控制系统”分时连接到“光谱仪”时,采用命令应答方式控制光谱仪的数据发送,分批多次传送。单片机将UART指向光谱仪,首先向光谱仪发送命令,指明数据来源和传送的数据量(例如200个字节);其次等待光谱仪的响应并将传来的200个字节的数据暂存在所开辟的缓冲区中;然后再将UART切换至无线模块通道,将单片机缓存中的数据写入无线模块转发出去;重复进行上述步骤直至接收到光谱仪的全部数据。
    水质监测系统中的另外2种设备的数据量相对较小,可以一次性接收/转发。
3.3 接收/转发控制流程
   
根据设备的不同数据周期,以时间为线索,为相应的设备分配接收/发送时间(图2),在所分配的时间里,单片机要进行UART通道切换:指向串口设备接收或发送数据、指向无线设备发送数据。


    程序采用中断方式处理定时、串口的数据接收/发送、键盘输入等过程。以中断方式运行,提高了程序的执行效率。图3为定时中断服务程序流程图。该水质监测过程,就是循环扫描3个水监测设备,获取数据并进行无线转发。


3.4 主要的程序功能模块说明
   
串口驱动程序为分析判断数据来源,并调用相应的函数,完成对不同串口设备的数据接收和发送。将接收到的数据暂时保存于缓存中;将缓存中的数据进行转发;定时中断程序为周期性地切换UART通道,分别连接到外部的3个串口设备上和无线发射模块上。切换串口通道的同时,调整串口通信参数,以适应不同的串口设备。触发串口发送过程,将缓存中的数据写入无线模块转发;INT0中断服务程序为及时响应键盘操作,然后调用相应的函数,完成参数设置等控制任务;显示程序为控制7279A.驱动LED数码管,显示系统状态等信息。

4 结语
   
多串口数据收发控制系统,已应用于水环境监测的数据转发,工作稳定,数据收发可靠。
    本系统为采用一片单片机控制的单核心结构,与采用多核结构相比,尽管只能分时使用UART,但数据协调相对容易,并且在设计时已考虑了数据衔接问题,不会导致数据丢失现象的发生;与采用多串口卡的方案相比,本系统可以脱离计算机独立工作,因此现场不需要一台计算机参与数据接收;无线方式数据传送,传送距离相对更远;系统占用资源少,维护成本降低。
    该系统还可应用于其他的多串口数据收发场合。经过扩展,可连接的串口数目可以进一步扩大。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭