自动气象站数据采集器一般基于单片机或PC/104总线控制器设计,具有与PC兼容性好、功耗低、体积紧凑等特点,然而如何设计出功能强大,网络传输功能强的自动气象站数据采集器,满足现代气象检测的要求,是一个值得研究的课题。
文中基于ARM微处理器和Linux操作系统平台,借助前端无线传感器网络的数据输入,利用嵌入式Qt的开发优势并设计数据通信格式,完成无线气象数据通信系统的设计,实现了数据的可靠传输。为天气预报、科学研究、气象灾害预警等提供实时的气象观测数据。
1 无线气象数据通信系统的基本组成
如图1所示,无线气象数据通信系统主要由无线传感器网络节点、协调器、数据通信器(数据通信器以S3C2440AL为核心)、远程服务器等组成,完成对数据的采集、处理、传输和存储等功能。数据的采集基于CC2530的无线传感器网络,传感器节点将采集到的气象数据定时发送给协调器,再由协调器将数据通过RS232接口传给数据通信器,数据通信器按气象数据处理规范对接收到的数据进行处理后,一方面显示在液晶显示屏上,另一方面经以太网发送到远程服务器。此外,数据通信器保存接收的数据。
2 硬件电路设计
2.1 CC2530与S3C2440AL的连接
CC2530是TI公司以C51为内核的ZigBee芯片,它支持IEEE802.15.4标准以及ZigBee、ZigBee PRO和ZigBee RF4CE标准,提供101 dB的链路质量,具有高接收灵敏度和强抗干扰性,同时具有低功耗、低成本、时延短、高安全等特点。此外,系统采用Samsung S3C2440AL来实现高分辨率彩色显示、触摸控制、高速数据处理及管理、网络接口扩展等需要。
CC2530与S3C2440AL之间采用串口通信,其连接如图2所示。CC2530的串行数据发送端P0_3与S3C2440AL的串行数据接收端RXD1相连,CC25 30的串行数据接收端P0_2与S3C2440AL的串行数据发送端TXD1相连。此处将CC2530的设备类型设置为协调器,实现无线接收各个传感器节点发送的气象数据。
2.2 S3C2440AL外围电路设计
由于系统需要移植嵌入式Linux操作系统、安装微型数据库、运行可视化应用程序、存储气象数据以及将数据经过以太网发送给远程服务器,需要扩展液晶显示器、外部存储器、以太网控制器等。液晶显示屏采用320x240分辨率的3.5英寸触摸真彩液晶屏,SDRAM采用H57V25 62GTR,NANDFLASH采用K9F1216UOA,以太网控制器采用单芯片快速以太网MAC控制器DM9000。S3C2440AL部分外围电路如图3所示。
关键字:ARM微处理器 Linux 无线气象数据通
引用地址:
基于ARM微处理器和Linux的无线气象数据通
推荐阅读最新更新时间:2024-11-13 07:22
linux内核移植之一 linux-4.1.4的zImage生成(Makefile分析)
一 编译过程 仍然以2410的编译说明,执行如下步骤 (1)主Makefile修改变量如下 ARCH := arm CROSS_COMPILE := arm-linux- (2)make s3c2410_defconfig (3)make zImage 最终生成用于uboot启动的内核应该是uImage,uImage是zImage通过uboot的mkimage工具加上一个文件头生成的,这里只分析到zImage。 二 make s3c2410_defconfig分析 主Makefile下有如下定义: %config: scripts_basic outputmakefile FORCE $(Q)$(MAKE) $(build
[单片机]
谷歌第三款移动操作系统Fuchsia放弃Linux内核
腾讯科技讯 据外媒报道,谷歌(微博)从来都没有想过凭借一款产品征战市场,它显然不满足于Android和Chrome OS,它正在努力开发一款名为“Fuchsia”的开源、实时OS。 这款操作系统曾在去年8月让世人惊鸿一瞥,但是当时它还只是一个命令行,现在这个神秘项目的用户界面(UI)终于浮出水面。 与Android和Chrome OS不同,Fuchsia并不是建立在Linux之上,它采用的是谷歌自主研发的微内核“Magenta”。在Fuchsia项目上,谷歌不仅放弃了Linux内核,而且还丢掉了GPL。这款操作系统是按照BSD 3条款、MIT和Apache 2.0进行授权的。放弃Linux内核或许有些令人意外,但是Andr
[手机便携]
【MINI2440】linux系统下载全流程
一、首先,需要下载BOOT到NOR FLASH 官方资料给出两种硬件下载方式。JTAG串口下载 和 LPT并口下载。 时代发展至今,笔记本已经不支持并口了。导致软件H-JTAG的LPT下载功能不能正常使用。 使用JTAG方式下载boot程序到开发板的NOR FLASH中。 学习视频 https://www.bilibili.com/video/BV17h411o7TK?p=17&spm_id_from=pageDriver 准备好boot文件 开发板是友善之臂的,bootloader使用他们提供的supervivi文件。提供了两个文件,选择128M的进行下载(我是64M的板子,也下载128M的vivi文件)。为了让下载工具识别
[单片机]
《Linux驱动:s3c2410/s3c2440 ts驱动分析 之二》
一,前言 前面结合“平台总线-设备-驱动”模型分析了ts(触摸)驱动的加载过程,现在进入驱动程序分析下其具体的实现。涉及到输入子系统详解、input核心层程序分析、evdev事件处理层程序分析、ts设备驱动层程序分析以及s3c2440的ADC转换和触摸控制器的操作。 二,涉及的寄存器 image.png 三,调用probe函数 根据上一篇的分析,驱动层通过platform_driver_register注册后,会调用到该驱动层的probe函数。 四,s3c2410ts_probe函数分析 4.1 硬件寄存器设置 4.1.1 获取设备参数 struct s3c2410_ts_mach_info *info; info
[单片机]
arm-linux-gcc 裸机程序开发(一)
以前开发arm裸机程序都是在ADS1.2开发环境下编译和调试的。刚开始时初学嵌入式好多东西不懂,选择这个开发环境的理由,一是资料多的,mini2440开发板上提供了很多例程可以参考,网上几乎所有arm裸机程序都是基于ADS1.2开发的。二是开发环境友善,虽然后来感觉ADS1.2有点难用,但毕竟是IDE的环境,对初学者来说总比命令行的方式更加直观与方便。随着学习的深入,感觉它就像傻瓜相机一样,虽然好用但屏蔽了很多内容,影响了我们深入理解代码编译以及链接的细节。而且ADS对于程序的开发没有GNU工具链灵活。这段时间因为需要,又要编写一些arm裸机程序。自己已经用Linux习惯了,不想再切回windows下工作了。所以,最近对linux
[单片机]
ARM-Linux移植之(四)——根文件系统构建
相关工具版本: busybox-1.7.0 arm-linux-4.3.2 linux-2.6.22 1.配置busybox并安装。 在我们的根文件系统中的/bin和/sbin目录下有各种命令的应用程序,而这些程序在嵌入式系统中都是通过busybox来构建的,每一个命令实际上都是一个指向busybox的链接,busybox通过传入的参数来决定进行何种命令操作。 1)配置busybox 解压busybox-1.7.0,然后进入该目录,使用makemenuconfig进行配置。这里我们这配置两项 一是在编译选项选择动态库编译,当然你也可以选择静态,不过那样构建的根文件系统会比动态编译的的大。 - Busybox Settings
[单片机]
全志推出基于玄铁C906的Linux SBC,售价12美元
本文来源CNX-Software,作者Jean-Luc Aufranc 阿里巴巴在2019年推出了玄铁910 RISC-V内核(又名XT910),具有强大功能,最多支持16个内核。但在2020年的更新显示,该公司计划开发一个完整的RISC-V核心系列产品,用于从低功耗微控制器到服务器SoC的广泛应用。 当时,我只是假设公司计划保留他们的核心,但时间证明我错了,因为阿里巴巴负责开发RISC-V核心的子公司平头哥开始与全志科技合作开发开源处理器,很快就会发布低成本的支持Linux的RISC-V SBC(单板电脑)。 据我所知,公司与全志科技签订了保密协议,但根据现阶段可用的公开信息,售价12.5美元的矽速科技(Sipee
[嵌入式]
浅谈ARM智能工业嵌入式微处理器
在科技飞速发展的今天,我们周围一切都发生着翻天覆地的变化,而传统工业也正经历着一场有着“第三次工业革命”之称的深刻变革。这场变革正发生在我们的身边,其核心是“制造业数字化”,即为“智能工业”.
“智能工业”是将具有环境感知能力的各类终端、基于泛在技术的计算模式、移动通信等不断融入到工业生产的各个环节,大幅提高制造效率,改善产品质量,降低产品成本和资源消耗,将传统工业提升到智能化的新阶段。智能工业的实现是基于物联网技术的渗透和应用,并与未来先进制造技术相结合,形成新的智能化的制造体系。所以,智能工业的关键技术在于物联网技术,而物联网技术的基础在于智能嵌入式系统应用。嵌入式微处理器具有性能强大、体积小、重量轻、成本低、
[单片机]