当前位置:文档之家› 基于MSP430F149的串口服务器设计

基于MSP430F149的串口服务器设计

基于MSP430F149的串口服务器设计
基于MSP430F149的串口服务器设计

随着计算机网络技术的发展,各种工业设备、试验设备以及家电等正在走向网络化,“让全世界的设备连入网络”已成为全球共识,所以把具有串口通信接口的设备连入网络,进行远程数据交换和网络控制,显得尤为重要。

本文采用了TI公司生产的16位超低功耗的混合信号处理器(mixed signal processor)和Cirrus公司生产的高集成度的全面支持IEEE802.3标准的以太网控制器CS8900A来设计嵌入式串口服务器终端,以模块化设计思想提供软件设计,鉴于嵌入式系统有限的内存,对TCP/IP进行了精简,并进行了调试。

1硬件电路设计

主控制器MSP430[1]是美国Texas Instruments(TI)公司于1996年开始推向市场的超低功耗微处理器,拥有5种低功耗模式,以适应不同的需要。CPU从低功耗模式被唤醒,这个过程最多只需要6μs。灵活的时钟使用方式也是MSP430的一大特点,除了片内集成一个晶体振荡器外,还可外接1~2个晶体振荡器。不同的内部功能模块可根据需要使用不同的晶体振荡器,在不需要时可以通过设置寄存器将其关闭,以减低功耗。MSP430采用了16位的RISC架构,具有125ns的指令周期,且内部具有丰富的功能模块,集成了多通道10~14位的A/D转换器、双路12位D/A转换器、比较器、电源电压检测、串行口USART(UART/SPI)、硬件乘法器、Flash存储器、看门狗定时器及多个16位、8位定时器等功能模块。这些结构使得MSP430微处理器可以应用到更多的场合,有更广泛的应用,也使得串口服务器的设计更为简单化。

以太网控制芯片CS8900A[2]是Cirrus Logic公司生产的低功耗、性能优越的16位以太网控制器。其突出特点是使用灵活,物理层接口、数据传输模式和工作模式等都能根据需要而动态调整,通过内部寄存器的设置来适应不同的应用环境。

系统的硬件框图如图1所示。

基于MSP430F149的串口服务器设计

陈政石1,秦红波1,2,李铁鹰2

(1.茂名学院计算机与电子信息学院,广东茂名525000;

2.太原理工大学信息工程学院,山西太原030024)

摘要:MSP430微处理器具有功耗低和功能模块丰富的特点。采用MSP430F149为主控制器和以太网控制芯片CS8900A设计串口服务器,并且嵌入精简后的TCP/IP协议。以过程控制设备为目标进行调试,实现RS-232串口和网络接口RJ45的转换。使串口设备联入以太网,实现远程网络控制。

关键词:MSP430;串口服务器;以太网

中图分类号:TP393.11文献标识码:A

Design of serial device server based on MSP430F149

CHEN Zheng Shi1,QIN Hong Bo1,2,LI Tie Ying2

(1.College of Computer and Electronic Information,Maoming University,Maoming525000,China;

2.College of Information Engineering,Taiyuan University of Technology,Taiyuan030024,China)

Abstract:Microprocessor MSP430has ultralow-power and includes abundant function modules.The chief controller MSP430F149and ethernet chip CS8900A are used to design serial device server,in which simple TCP/IP is embedded.It is de-bugged on the experiment equipment in the process control lab and realizes the conversion between RS-232and RJ45.Serial e-quipment is linked to ethernet,and remote network control is executable.

Key words:MSP430;serial device server;ethernet

*基金项目:广东省2005年自然科学基金资助项目,编号:5011905

95

《电子技术应用》2009年第1期

电源通过5V电源适配器,经LD1117芯片转化为3.3V稳压电源给主控制器MSP430、以太网芯片

CS8900A及SP3223供电。MSP430接8MHz的晶振,同时外接一个JTAG口,通过JTAG口接MSP430仿真器用于系统与MSP430开发软件IAR之间的程序调试[3]。

主控制器负责控制以太网接口完成网络数据包的发送和接收,以及相应的封装和解包工作,根据上位机的指令完成相应的数据采集和处理,并且检测串口通信模块是否有事件发生然后做出相应的反应;负责完成系统上电复位、初始化以及低电压检测等功能。CS8900A 内部的802.3介质访问控制[4]负责处理有关以太网数据帧的发送和接收,包括:数据检测、帧头的产生和检测、CRC校验码的生成和验证。以太网模块用于完成TCP/ IP协议栈中的链路层功能,在发送时把网络层数据包转换成以太网物理帧格式用于物理信道上的传输;在接收时将物理信道上接收到的信号转换成网络层数据包。

2软件程序设计

软件部分采用模块化的设计思想,把程序化繁为简,便于程序的设计、调试及维护。整个部分包括初始化模块、串口数据采集及处理模块、网络数据采集及处理模块和TCP/IP模块,另外还有定时器中断用于TCP的重发机制计时和数据采集计时、串口中断用于转发串口数据。

程序工作流程如图2所示。

2.1初始化模块

初始化模块包括对主控制器MSP430F149和以太网控制器CS8900A的初始化;包括时钟振荡器的设置、I/O 口初始化设置、定时器A的初始化和CS8900A片内寄存器的初始化[5]。

初始化XT1上的8MHz晶振,并用作系统主时钟MCLK。

static void InitOsc(void)

{

WDTCTL=WDTPW+WDTHOLD;

//关闭看门狗

BCSCTL1|=XTS;//XT1工作在高频模式__bic_SR_register(OSCOFF);//启动XT1晶振do

{

IFG1&=~OFIFG;//清除振荡器失效标志OFIFG DelayCycles(100);//延时130μs }

while(IFG1&OFIFG);//判断XT1是否起振BCSCTL2=SELM_3;//选择MCLK为XT1 }

I/O口的初始化:P3.7和P3.6初始化用于控制CS8900A的IOW和IOR,P3.5和P3.4用于串口UART0,P3.3~P3.0用于CS8900的地址总线,P5用于CS8900A 的数据总线,这些都在CS8900A的初始化程序中进行。

以太网模块CS8900A的初始化程序如下:

void Init8900(void)

{

unsigned int i;

P3OUT=IOR|IOW;

P3DIR=0xff;

P5OUT=0;

P5DIR=0xff;

DelayCycles(40000);

DelayCycles(40000);

Write8900(ADD_PORT,PP_SelfCTL);

Write8900(DATA_PORT,POWER_ON_RESET);

do

Write8900(ADD_PORT,PP_SelfST);

while(!(Read8900(DATA_PORT)&INIT_DONE));

}

2.2数据采集及处理

这里包括网络数据和串口数据的采集和处理。程序设计中设置了全局变量DonetworkStuff函数来检查是否

96

《电子技术应用》2009年第1期欢迎网上投稿https://www.doczj.com/doc/f28034224.html,

《电子技术应用》2009年第1期

层名称功能

例子

应用层包含提供服务的不同HTTP ,telnet ,E-mail 应用程序的协议(SMTP ,POP )

传输层在端点间通信

传输控制协议TCP ,用户数据报协议UDP

互联网层Internet 端点间数据IP ,Internet 控制报协议的交付和发送ICMP,地址解析协议ARP 网络接口层

数据传输的主机Ethernet (IEEE802.3),点对明确执行

点协议(PPP ),AX.25

表1TCP/IP 协议各层功能

收到一个帧

。当确定数据包是发给特定模块时,开始调用函数ProcessFrame ()来对数据进行处理。

2.3TCP/IP 模块

层次结构是描述协议栈普遍采用的方法,每一层都向上一层提供服务,同时使用来自下层提供的服务,低层的操作细节对上层来说是不透明的。根据嵌入式自身的特点和系统需求,对TCP/IP 进行了精简,以更适合嵌入式系统的需要。TCP/IP 的4层结构与OSI 的7层参考模型对应关系如图3所示。

TCP/IP 协议中应用层、传输

层、互联网层和网络接口层的基本功能如表1所述。

当有串口数据需要发送或者收到网络数据后,系统进入TCP/IP 协议模块对数据进行处理,TCP/IP 协议模块的初始化程序如下:

void TCP Init(void){

BCSCTL1&=~DIVA0;

//ACLK=XT1/4=2MHz

BCSCTL1|=DIVA1;

TACTL=ID_3+TASSEL_1+MC_2+TAIE;

//选择ACLK 为时钟源,1/8分频,连续计数模式Init8900();

TransmitControl =0;TCPFlags =0;

TCPStateMachine =CLOSED;SocketStatus =0;}

目前市场成型的串口服务器产品大多采用高性能

32位微处理器在RTOS (实时多任务操作系统)上开发,

成本高,开发周期长。采用16位的MSP430的串口服务器,成本较低,而且功耗较低,配置以太网控制器

CS8900A ,有很广泛的应用场合。采用16位微处理器、网络接口芯片和精简TCP/IP 协议的设计,实现RS-232串

口和网络接口RJ45的转换,既经济,又简单。

在系统的实时性方面,MSP430F149单片机指令速度可达8MIPS ,采用可以提高数据传输速度的DMA (Direct

Memory Access ),完全可以满足串口通信对实时性的要

求。另外MSP430F149具有2KB 的ROM ,通过建立数据缓冲区,能有效解决串口和网口传输速率不匹配的矛盾,提高系统的实时性。参考文献

[1]张晞,王德银,张晨.MSP430系列单片机实用C 语言程

序设计.北京:人民邮电出版社,2005:2-4.

[2]张鹏,张爱民,李杰.基于以太网控制器CS8900A 实现

嵌入式系统的网络互联.电子工程师,2002(2):4-5.

[3]张晓飞.基于MSP430单片机的嵌入式网络终端.合肥

工业大学硕士论文,2006:7-8.

[4]姚军,温阳东,谢毓广.基于MSP430F1611MCU 的微机

保护控制单元.电气时代,2005.

[5]MSP430internet connectivity.https://www.doczj.com/doc/f28034224.html,

(收稿日期:2008-07-24)

(上接第94页)

列表中的地址继续发送扫描数据包,代理与管理站之间采用ATP 协议进行通信,将数据报头考虑进来,告警消息约在5KB~6KB,告警消息的传输引起了瓶颈连接流量的骤然增长,至告警消息传输完毕,结点扫描被禁止后,瓶颈连接处的流量降至了正常业务水平。由图6可以看到应用移动代理的系统整体对网络负载的压力较小。需要指出的是,当网络流量较大时,告警消息的传输带来的流量影响是很小的。因此对于大型异构多应用的网络故障管理,应用移动代理系统的优势是明显的。

基于移动代理的网络故障管理体系将移动代理技术引入到网络故障管理之中,它摒弃了传统网络故障管理体系中全网的故障都在网络管理中心进行管理的方式,利用代理的智能性和移动性,将故障管理放在更加靠近故障源的地方进行,减轻了网络负载。本文根据移

动代理的特点,设计3层网管体系,并设计了各种代理以及代理之间的协同工作过程。在这种体系下,网管任务被细化,移动代理的特点得到了充分的体现。实验结果证明了系统的部分优越性。参考文献

[1]张云勇,刘锦德.移动Agent 技术.北京:清华大学出

版社,2003.

[2]DALMEIJER M,HAMMER D K.TMAERTS A.Mobile

software https://www.doczj.com/doc/f28034224.html,puters in Industry,2000,(14):251-260.[3]SATOH I.Building reusable mobile agents for network

management systems.Man and Cybernetics,2003,33(3):350-357.

[4]MILOJICIC D.Agent systems and applications.IEEE Con-currency,2000,8(2):22-23.

(收稿日期:2008-07-30)

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

97

串口调试助手设计思路与手册

(2016-11-21)本设计包含的函数模块有: 1.打开/关闭串口和设置串口参数 2.软件退出 3.获取串口参数 4.发送数据 5.接受数据 6.清空发送区 7.清空接收区 8.计数清零 9.暂停/开启接收数据 10.自动发送 11.发送周期设置 12.打开文件 13.保存数据 补充说明: 1.设置串口参数里面包括了1)获取串口可用串口。2)波特率下拉参数设置。3)校验位下 拉参数设置。4)数据位下拉参数设置。5)默认设置。6) 2.发送数据前先判断是否为十六进制,是否为自动发送。是十六进制发送则把数据先转为 十六进制格式并获取数据长度,再把数据转到发送缓冲区发送,否则ASCII码文本发送3.接收数据函数在串口运行时一直在判断是否有新数据,并根据不同的接收模式,加显不 同格式的数据 软件代码详细介绍: (74-92h)可用串口检测及下拉控件。 (96-109h)波特率下拉控件设置。 (113-121h)校验位下拉控件。 (125-131h)数据位下拉控件。 (135-141h)停止位下拉控件。 (145-155h)默认参数设置。 (159-162h)接收数据串口说明与启动。 (168-174h)关闭软件设置。 (176-180h)关闭窗口后先关闭线程再关闭进程。 (182-194h)定义串口各参数。 (197-281h)打开串口按钮回调函数,先判断是否有可用串口,没有则显示“无可用串口,无法打开”然后返回,有则继续判断当前是要打开串口还是关闭串口,若是需要打开串口则尝试设置串口参数并打开串口,打开串口失败会提示无法打开串口,打开串口成功则串口参数下拉控件变灰发送数据按钮点亮,判断自动发送控件如果被选中则打开串口后直接自动发送数据。如果之前判断按钮回调是关闭串口,则进行关闭串口并配置相关参数。 (282-347h)CRC16查表法校验函数。 (349-357h)发送数据按钮回调及自动发送按钮回调。 (358-369h)发送数据线程配置。 (371-510h)发送数据函数,先判断是否正在发送数据,如不在发送则设置当前正在发送状态,后继续判断是写序列号模式还是串口调试模式,串口调试模式时先定义发送缓冲区和

串口调试助手毕业论文

1. 双击运行软件 如果出错,请先安装Microsoft .NET Framework 2.0,即微软.NET 2.0虚拟机。 第一次运行时,请先阅读使用协议,并单击“我同意”。如图1.1所示。 图1.1 第一次运行时请阅读使用协议,单击“我同意” 图1.2 JCBus串口调试助手的工作区域 随后,可以看到如图1.2所示的软件工作区域: 1.1标题栏:显示为“JCBus串口调试助手” 1.2菜单栏:包括“文件”、“帮助” 等菜单项目 1.3串口参数设置区:用于设置串口名称、波特率、校验位、数据位和停止位等 1.4调试结果解析区:用于解析调试过程中的数据,使数据在16进制、10进制等之间转换。 1.5调试区:分“消息应答”和“自动接收”两种调试方式。 A.“消息应答”:软件向设备发送一条消息后接收设备回应的信息;

B.“自动接收”:软件只负责接收设备发送的消息并在界面上显示出来。 两种方式可以通过点击“消息应答”或者“自动接收”标签页来切换。 1.6显示区:处于调试区的中间位置1.7调试操作区:记录“消息应答” 方式的详细调试操作 2设置串口参数 软件使用单串口调试设备,所以必须正确地设置串口参数。软件启动后将自动识别所有可用的串口,并打开第一个可用的串口,如图2.1所示。 图2.1 JCBus串口调试助手启动后,默认打开第一个可用的串口如果要使用另一个串口或者更改当前串口的设置,请先单击“关闭”按钮,软件将显示串口已经关闭,如图2.2所示。 图2.2 设置串口参数前,请先关闭已经打开的串口您可以设置的参数有: A.串口:软件自动识别所有可用的串口,您只需要在下拉框中选择即可; B.波特率:除了常规的2400、4800、9600、19200和38400以外,只要您的硬件允许,您还可以输入其他波特率; C.校验位:可以选择“无”、“奇校验位”、“偶校

(完整版)基于蓝牙和wifi的生理数据采集设计与实现本科毕业设计

分类号密级 本科毕业论文(设计) 学院、系软件学院 专业名称软件工程 年级 2011级 学生姓名常卫建 指导教师何立强

2015年4月24日

基于Bluetooth和Wi-Fi生理数据采集的设计实 现 作者:常卫建 指导 老师:何立强 摘要本论文来源于国家级大学生创新计划《基于MIF的远程空巢老人服务机器人》机器人。该机器人基于多传感器信息融合技术,以移动机器人为平台,将智能卫生打扫服务与监测、记录、整理老人生理指标,监护老人生活状况等功能结合在一起。项目实现了帮助空巢老人打扫房间的同时,利用可穿戴设备采集老人生理数据,并发送到远程子女客户端,为子女提供老人各项生理指标。子女客户端将监测到的老人生理指标进行统计归档,实现对老人生理健康的分析、预测。与此同时,利用摄像设备对老人生活状况进行实时监测,并在异常状况下自动报警,为老人在家中提供安全保障。该项目在为空巢老人的日常生活提供了方便的同时也解决了子女身处异地无法监护老人的难题。 本论文主要利用可穿戴设备采集生理数据,并依托移动机器人平台将数据发送到远程子女客户端以备统计归档。首先是利用心电采集模块采集心率数据,然后将数据通过蓝牙主从模块搭建的无线串口通路发送到移动机器人本体上,之后在ARM9处理器对心率数据进行简单的处理。完成以上步骤后,通过网络编程将心率数据发送到远程子女客户端。本项目用到的核心技术包括嵌入式系统设计及框架的搭建、设备驱动分析与移植、蓝牙通信技术、蓝牙模块配置和连接、网络编程、串口通信技术等。 本论文利用所设计的机器人设备进行实际实验。对蓝牙主从模块进行配对,在移动机器人处理器上通过串口通信技术收集数据,在将数据发送

串口调试助手使用规范V15.01(试用)

串口调试助手使用规范(试用) ——截取指令方法
版本:V15.01 日期:2015.0128 类别:APP 使用规范
1
串口调试助手使用规范(试用) 截取指令方法
广州市英沙电子系统有限公司 2015-01-28 发布

串口调试助手使用规范(试用) ——截取指令方法
版本:V15.01 日期:2015.0128 类别:APP 使用规范
2
目 录
1 引言 ................................................................................................................................................................................... 3 2 使用前准备........................................................................................................................................................................ 3 3 串口调试助手及其安装 ................................................................................................................................................... 3 4 串口线与设备的物理连接 ............................................................................................................................................... 4 5 串口调试助手截取指令步骤 ............................................................................................................................................ 4 6 分析截取的指令............................................................................................................................................................... 6?

C#串口通讯编程

C#中串口通信编程收藏 本文将介绍如何在.NET平台下使用C#创建串口通信程序,.NET 2.0提供了串口通信的功能,其命名 空间是System.IO.Ports。这个新的框架不但可以访问计算机上的串口,还可以和串口设备进行通信。 我们将使用标准的RS 232 C 在PC间通信。它工作在全双工模式下,而且我们不打算使用任何的握手 或流控制器,而是使用无modem连接。 命名空间 System.IO.Ports命名空间中最重用的是SerialPort 类。 创建SerialPort 对象 通过创建SerialPort 对象,我们可以在程序中控制串口通信的全过程。 我们将要用到的SerialPort 类的方法: ReadLine():从输入缓冲区读一新行的值,如果没有,会返回NULL WriteLine(string):写入输出缓冲 Open():打开一个新的串口连接 Close():关闭 Code: //create a Serial Port object SerialPort sp = new SerialPort (); 默认情况下,DataBits 值是8,StopBits 是1,通信端口是COM1。这些都可以在下面的属性中重新设置 : BaudRate:串口的波特率 StopBits:每个字节的停止位数量 ReadTimeout:当读操作没有完成时的停止时间。单位,毫秒 还有不少其它公共属性,自己查阅MSDN。 串口的硬件知识

在数据传输的时候,每个字节的数据通过单个的电缆线传输。包包括开始位,数据,结束为。一旦 开始位传出,后面就会传数据,可能是5,6,7或8位,就看你的设定了。发送和接收必须设定同样 的波特率和数据位数。 无猫模式 没有Modem模式的电缆只是简单地交叉传送和接收线。同样DTR & DSR, 和RTS & CTS 也需要交叉。 RS232针图 这里,我们三条线。互连2和3(一段的2pin连接3pin),连接两端的5pin。 [示例程序] 主程序 如果想使用默认属性,按“Save Status”按钮,如果想改变属性按“Property”。它会弹出下图:

基于Zigbee的智能家居无线图像监控系统设计与实现

辽宁建材 2008年第5期 基于Zigbee的智能家居无线图像监控系统设计与实现 1引言 随着计算机的普及和信息技术的迅猛发展,人们已不满足于传统的居住环境,对家庭及住宅小区提出了更高的要求,智能化被引入家庭及住宅小区,并迅速在世界各地发展起来。人们对居住环境要求的日见增高,体现在希望住宅不仅更便利、舒适而且更安全。监控系统作为安全防范的重要手段,越来越多的应用在智能家居中。 无线监控系统集成了计算机技术、无线宽带通讯技术、图像解压缩技术、图像识别技术、红外图像采集技术、工业数据采集等诸多学科的技术。与传统的有线监控系统相比,它具有很大的优势:系统的组建比较简单,可省去布线的麻烦;具有可移动性,并且不受地点限制,可随意摆放在家里任何一个角落;在拆迁时直接取下布置的无线监控产品就可以带走了。 目前,无线图像监控系统广泛应用于家居监控、交通监控、110报警中心对城市重要现场监控、公安通讯指挥车的重要现场监控、收费站监控系统、油田及矿山的重要现场监控、重要仓库,码头、森林防火监控、银行监控联网等领域。 2无线通信技术介绍 目前,各种无线传输技术林立,都在争取成为市场标准。每个技术都有其立足的特点:有基于传输速度、距离、耗电量等特殊要求的;有着眼于功能的扩充性的;还有符合某些单一应用的特别要求的。 (1)蓝牙技术是一种无线数据与语音通信的开放全球规范,其实质内容是为固定设备或移动设备之间的通信环境建立通用的近距离无线接口,能在近距离范围内实现相互通信或操作。但蓝牙技术遭遇最大的障碍是过于昂贵。突出表现在芯片大小和价格难以下调、抗干扰能力不强、传输距离太短、信息安全问题等等。 (2)IrDA是一种利用红外线进行点对点通信的技术,是第一个实现无线个人局域网(PAN)的技术。 IrDA的主要优点是无需申请频率的使用权,因而红外通信成本低廉。并且还具有移动通信所需的体积小、功能低、连接方便、简单易用的特点。此外,红外线发射角度较小,传输上安全性高。IrDA的不足在于它是一种视距传输,两个相互通信的设备之间必须对准,中间不能被其它物体阻隔。 (3)Wi-Fi无线保真技术与蓝牙技术一样,同属于在办公室和家庭中使用的短距离无线技术。虽然由Wi-Fi技术传输的无线通信质量不是很好,数据安全性能比蓝牙差一些,传输质量也有待改进,但传输速度非常快,可以达到11mbps,符合个人和社会信息化的需求。 (4)Zigbee是一种新兴的短距离、低速率、低功耗无线网络技术,它是一种介于无线标记技术和蓝牙之间的技术提案。它此前被称作“HomeRFLite”或“FireFly”无线技术,主要用于近距离无线连接。与蓝牙、红外、GSM/GPRS和无线局域网等无线系统相比较,ZigBee技术的主要包括数据传输速率低、功耗低、成本低、时延短、安全、网络容量大、优良的网络拓扑能力、有效范围小、工作频段灵活等特点。 赵强 (沈阳建筑大学,辽宁沈阳110168) [摘要]本文结合智能家居监控系统的实际需求,提出了一种基于ZigBee协议的无线图像监控解决方案,并介绍了该方案的硬件设计、软件开发的方法及过程。 [关键词]ZigBee;智能家居;图像监控;无线通信;微控制器 [中图分类号]TU858[文献标识码]A[文章编号]1009-0142(2008)05-0028-03 [收稿日期]2008-05-14 28

通用串口通讯程序设计

通用串口通讯程序设计 作者:和光同尘版本:V1.0 序 做硬件开发近20载,花了近十年做基础开发,对硬件开发略知一二,接触的做国防/工业大项目的人才我就是和他们沟通中获取了很多思想;人生已过而立之年,不惑解疑,总想写点什么。从一线研发(做了4年),开发(3年),硬件开发主管(12年),算起来人生从不到弱冠之年(中专毕业)开始接触MCS51、AVR等8位处理器到ARM v7核、CoretxM 核的32位处理器,CPLD/FPGA、PLC…………啰嗦了!! 最近因为工作原因需要把一些自己感悟的记录下来,希望传递给入门的有心沉下心做基础健壮扎实的初学者。

正文 做嵌入式硬件开发一般都会用到通讯数据交互,这就涉及通讯协议/规约的设计。本文从基础的串口(RS232、RS485等)为模型进行讲解。 说道串口通讯,就是编写串口程序,简单的就是1个字节的发送,1个字节的接收,但这不能满足绝大多数实际工作业务需求,实际需要一串字节数据的交互,A发送,B接收……Z 接收;Z机……B机收到根据情况需要回复(ACK)A机,这个过程就叫交互双向通讯(本文不讨论多主机、1主机相对复杂通讯机制。)。这种通讯就需要提前设计好通讯的规约(大家约定好暗号——每个字节代表什么意思)。 接下来编写通信程序(发送/接收),如何写出一个健壮高效串口程序?是否健壮高效其实很大一部分取决于通讯接收程序的架构。 通讯程序编写依据是——通讯规约,通讯帧的设计。 ●I类通用型: ||帧头段|===|数据段|===|校验码|===|帧尾段|| ●II类时隙通讯: ||开始时隙T(T1T2T3T4T5T6)|=|功能码|=|数据段|=|校验码|=|结束时隙T(T1T2T3)|注意:时隙只是纯粹的前后两帧数据的间隔时间,这期间坚决不能有数据产生。 1.1I类通用型 ◆帧头段 帧头段用于鉴别一串字节流中1帧数据起始位置,这个帧头段必须具有足够的特殊标识(易分辨)。 什么样的特殊标识可作为帧头? 根据个人经验: ①具有监测通讯波特率功能特点:0B01010101(55H)、0B10101010(AAH)或0B00000000(00H)、0B11111111(FFH); ②利用ASCII码如MODBUS ASCII规约以冒号‘:’(3AH)作为帧头。也可以采用ASCII ‘U’(55H)、‘@’(40H)等等 只要保证帧头字节数据内容,在所有通讯数据字节流中,除帧头有意为之而出现,那就是帧头。建议最好有两个字节及以上,这样数据出现与帧头一致的概率更加小,才做到独一无二的特殊性。

无线串口通信

无线串口通信实验报告 CHINAJIA

无线串口通信 一实验目的 1 完成串口基本实验(MCU和PC通信) 2 完成无线模块的调试 3 编制通信协议是通信可靠稳定 二.实验原理 1、无线数据传输模块PTR 2000和无线通信芯片nRF401 本实验项目选用的无线传输模块为PTR2000,他是一种超小型、低功耗、高速率的无线收发数据传输模块,使用的是挪威Nordic公司推出的nRF401无线通信芯片。该芯片使用了433MHz IGM频段,是真正的单片UHF无线收发一体芯片。 在数据编码方面,nRF401采用串口传输,无须多数据进行曼彻斯特编码,应用及编程非常简单,传送的效率很高,标称速率就是实际速率。 在控制芯片外围元件的数量方面,nRF401也是一个较为理想的选择,它的外围元件仅需10个左右,无须声表面滤波器、变容器等昂贵的元件,只需使用4MHz的晶体,收发天线合一,减小了系统开发的难度。 在目前较为流行的无线通信芯片中,无论是从使用的方便性、传输速度还是输出功率等各个方面考虑,nRF401都是较为理想的选择,本实验项目就是基于 nRF401芯片的无线数据传输模块。 PTR2000是一种超小型、低功耗、高速度的无限数据传输模块,它的通信速率最高可达20Kbps,也可工作在其他速率,如4800bps/9600bps。PTR2000采用了低发射功率、高灵敏度设计,可满足无线管制的要求且无须使用许可证,是目前低功率无线数据传输的理想选择。 2、无线通信芯片Nrf401引脚功能说明 Nrf401使用20引脚的SSOCI封装,其引脚分布如下图1-1 下面介绍各个引脚的功能。 XC1、XC2(引脚1、20):这两个引脚用于连接外部参考晶振,其中,XC1为晶振输入,XC2为晶振输出。 VDD(引脚2、8、13):电源输入脚,电压范围2.7-5.2V。 VSS(引脚3、7、14、17):电源地。 FILT1(引脚4):滤波器接入端。

串口调试助手c开发

1.建立项目: 打开VC+ + 6.0,建立一个基于对话框的MFC应用程序SCommTest(与我 源代码一致,等会你会方便一点); 2.在项目中插入MSComm控件 选择Project菜单下Add To Project子菜单中的Componentsand Controls,选项,在弹出的对话框中双击Registered ActiveXControls项(稍等一会,这个过程较慢),则所有注册过的ActiveX控件出现在列表框中。选择Microsoft Communications Control,version6.0,,单击Insert 按钮将它插入到我们的Project 中来,接受缺省的选项。(如果你在控件列表中看不到Microsoft Communications Control, version 6.0,那可能是你在安装VC6时没有把ActiveX 一项选上,重新安装VC6,选上ActiveX就可以了),这时在ClassView 视窗中就可以看到CMSComm类了,(注意:此类在ClassWizard中看不到,重构clw文件也一样),并且在控件工具栏Controls中出现了电话图标(如图1所示),现在要做的是用鼠标将此图标拖到对话框中,程序运行后,这个图标是看不到的。3.利用ClassWizard定义CMSComm类控制对象 打开ClassWizard- >Member Viariables 选项卡,选择CSCommTestDlg^,为IDC_MSCOMM1添加控制变量:m_ctrlCom m,这时你可以看一看,在对话框头文件中自动加入了//{{AFX_INCLUDES()#include "mscomm.h" //}}AFX_INCLUDES (这时运行程序,如果有错,那就再从头开始)。 4 .在对话框中添加控件 向主对话框中添加两个编辑框,一个用于接收显示数据ID为 IDC_EDIT_RXDATA另一个用于输入发送数据,ID为IDC_EDIT_TXDAT A再添加一个按钮,功能是按一次就把发送编辑框中的内容发送一次,将其ID设为 IDC_BUTTON_MANUALSEND别忘记了将接收编辑框的Prop erties->Styles 中把Miltiline和Vertical Scroll属性选上,发送编辑框若你想输入多行文字,也可选上Miltiline。

Java串口通信编程指南

Java串口通信编程指南

1. 概述 在java中,利用Java Communication包可以操作串口,但官方的包在3.0之后就只支持Linux和Solaris平台了,Windows平台的只支持到98年出的2.0版本,不过在XP下还能使用。另外,也可以用开源的Rxtx实现串口通信,这里仅以Java Communication包,在Windows 平台实现串口通信进行说明。 2. 前期准备 2.1. 下载Java Communication包 ?下载地址如下:https://www.doczj.com/doc/f28034224.html,/Jolt/javacomm20-win32.zip。 ?如果是非Windows平台,请到Sun网站选择其他版本下载。地址如下: https://www.doczj.com/doc/f28034224.html,/download/products.xml?id=43208d3d 2.2. 配置 ?解压缩javacomm20-win32.zip ?把win32com.dll拷贝到{JAVA_HOME}\jre\bin ?把comm.jar拷贝到{JAVA_HOME}\jre\lib\ext ?把https://www.doczj.com/doc/f28034224.html,m.properties拷贝到{JAVA_HOME}\jre\lib ?set CLASSPATH={JAVA_HOME}\jre \lib\ext \comm.jar;%classpath%

3. 实现过程 主要步骤包括: ?获得串口标识 ?打开串口 ?设置串行端口通讯参数 ?获取输入(出)流 ?进行读写操作 3.1. 获得串口标识 指定串口的端口号,生成串口的标识类的实例。 https://www.doczj.com/doc/f28034224.html,mPortIdentifier是通讯端口管理器,控制访问到通讯端口的中心类。一个应用程序首先使用CommPortIdentifier中的方法,通过相关的驱动去获取那些通讯端口是可用的并且选择一个端口便于开始。它包括如下功能: a. 通过驱动决定通讯端口是可用的。 b. 打开通讯端口为了I/O操作。 c. 决定端口的拥有者。 d. 解析端口拥有者的争夺。 e. 管理事件显示在端口拥有者的中的状态改变。 示例代码如下: 代码: 3.2. 打开串口 示例代码如下: 代码:

基于zigbee无线数据收发的设计和实现

基于zigbee无线数据收发的设计和实现

1.总的设计方案 图 1.上位机与平板电脑之间无线数据传送模块的总体设计 注释: (1)射频模块采用cc2530该模块是现成的,可以直接利用; (2)工作流程:下位机发送指令通过RS232传给连接下位机的射频模块,该模块经过处理后将信息传给连接在平板电脑上的射频模块,该模块通过USB接口将信息传给平板电脑;而平板电脑传送给下位机的信息传递方式与上述的类似。 2 .硬件原理框图

图2.zigbee无线收发模块的硬件工作原理框图 注释: (1)串口转换电路:实现RS232 串口数据转换. 因此,可以实现无线模块与PC 机之间的串口数据通信 (2)无线收发模块:采用zigbee射频部分; 工作原理:CC2430的接收器是基于低-中频结构之上的,从天线接收的RF信号经低噪声放大器放大并经下变频变为2MHz的中频信号。中频信号经滤波、放大,在通过A/D转换器变为数字信号。自动增益控制,信道过滤,解调在数字域完成以获得高精确度及空间利用率。集成的模拟通道滤波器可以使工作在2.4GHz ISM波段的不同系统良好的共存。 在发射模式下,位映射和调制是根据IEEE 802.15.4的规范来完成的。调制(和扩频)通过数字方式完成。被调制的基带信号经过D/A转换器再由单边带调制器进行低通滤波和直接上变频变为射频信号。最终,高频信号经过片内功率放大器放大以达到可设计的水平。 (3)JTAG接口电路:在线编程,实现对常常

cc2430的编程和测试。引脚定义: TCK——测试时钟输入; TDI——测试数据输入,数据通过TDI 输入JTAG口; TDO——测试数据输出,数据通过TDO从JTAG口输出; TMS——测试模式选择,TMS用来设置JTAG口处于某种特定的测试模式。 可选引脚TRST——测试复位,输入引脚,低电平有效。 (4)电源模块:选用了AH805 升压稳压器,这样就可以将干电池提供的3V 电压变压至5V ,满足MAX232 电路的供电. 而3V 电压为CC2430 模块和J TAG模块提供稳定电压.。小注:MAX232是专为RS-232标准串口设计的单电源电平转换芯片。 3.硬件设计电路图 (1)cc2430的典型应用 电路使用一个非平衡天线,连接非平衡变压器可使天线性能更好。电路中的非平衡变压 器由电容C341和电感L341、L321、L331以及

串口调试助手C++开发

1.建立项目: 打开VC++6.0,建立一个基于对话框的MFC应用程序SCommTest(与我源代码一致,等会你会方便一点); 2.在项目中插入MSComm控件 选择Project菜单下Add To Project子菜单中的 Components and Controls…选项,在弹出的对话框中双击Registered ActiveX Controls项(稍等一会,这个过程较慢),则所有注册过的ActiveX 控件出现在列表框中。选择Microsoft Communications Control, version 6.0,,单击Insert按钮将它插入到我们的Project中来,接受缺省的选项。(如果你在控件列表中看不到Microsoft Communications Control, version 6.0,那可能是你在安装VC6时没有把ActiveX一项选上,重新安装VC6,选上ActiveX就可以了),这时在ClassView视窗中就可以看到CMSComm类了,(注意:此类在ClassWizard中看不到,重构clw文件也一样),并且在控件工具栏Controls中出现了电话图标(如图1所示),现在要做的是用鼠标将此图标拖到对话框中,程序运行后,这个图标是看不到的。

3.利用ClassWizard定义CMSComm类控制对象 打开ClassWizard->Member Viariables选项卡,选择CSCommTestDlg类,为IDC_MSCOMM1添加控制变量:m_ctrlComm,这时你可以看一看,在对话框头文件中自动加入了//{{AFX_INCLUDES() #include "mscomm.h" //}}AFX_INCLUDES (这时运行程序,如果有错,那就再从头开始)。 4.在对话框中添加控件 向主对话框中添加两个编辑框,一个用于接收显示数据ID为IDC_EDIT_RXDATA,另一个用于输入发送数据,ID为IDC_EDIT_TXDATA,再添加一个按钮,功能是按一次就把发送编辑框中的内容发送一次,将其ID设为IDC_BUTTON_MANUALSEND。别忘记了将接收编辑框的Properties->Styles中把Miltiline和Vertical Scroll属性选上,发送编辑框若你想输入多行文字,也可选上Miltiline。 再打开ClassWizard->Member Viariables选项卡,选择CSCommTestDlg 类,为IDC_EDIT_RXDATA添加CString变量m_strRXData,为

串口设备远程监控软件设计与实现毕业论文

串口设备远程监控软件设计与 实现毕业论文 目录 第一章绪论 (1) 1.1引言 (1) 1.2物联网、串口通讯及远程监控的概述 (1) 1.2.1发展历史 (1) 1.2.2研究现状 (3) 1.3本文的主要工作 (5) 1.3.1硬件结构设计 (6) 1.3.2监控软件设计 (7) 第二章串口联网服务器概述及VC++(MFC)工具介绍 (7) 2.1串口联网服务器概述 (7) 2.1.1串口联网服务器原理 (8) 2.1.2串口联网服务器工作模式 (8) 2.1.3硬件网络架构 (9) 2.2 VC++ (MFC)工具介绍 (10) 2.2.1 VC++ (10) 2.2.2.MFC (11) 2.3本章小结 (12) 第三章串口联网服务器通讯底层 (13) 3.1 通信底层设计 (13) 3.2 MFC中TCP socket编程 (14) 3.2.1 TCP socket基本原理 (14) 3.2.2 基本Windows Socket API (15) 3.2.3 MFC下的 Socket编程类 (20) 3.2.4 MFC下Socket编程基本步骤 (21) 3.3 TCP Client端Socket的编程实现 (23)

3.3.1 Client接收数据处理 (23) 3.3.2 Client Socket套接字创建 (25) 3.4本章小结 (29) 第四章 GPS设备协议解析 (29) 4.1 接收数据的验证 (29) 4.2 接收数据的解析 (31) 4.3本章小结 (32) 第五章人机交互设计 (32) 5.1 Visual C++ 6.0编译器简介 (32) 5.2 MFC框架 (34) 5.2.1 MFC框架简介 (34) 5.2.2 MFC类层次结构图 (34) 5.2.3 初始化流程及消息循环机制 (37) 5.3 MFC开发应用程序实现 (38) 5.3.1 Visual C++6.0新建MFC应用程序 (38) 5.3.2 消息响应函数添加与实现 (42) 5.4 课题的人机界面设计 (44) 5.5本章小结 (45) 第六章结论 (45) 6.1 成果展示 (45) 6.2 课题工作总结和结论 (47) 6.3 需进一步研究的问题 (48) 致谢 (49) 参考文献 (50)

C++课程设计 串口调试助手

目录 【内容摘要】 (2) 【关键词】 (2) 1 开发语言及开发平台简介 (3) 1.1 开发语言 (3) 1.1.1 C语言 (3) 1.1.2 C++语言 (3) 1.2 开发平台 (4) 1.2.1 Microsoft Visual C++ (4) 1.2.2 C++ Builder (5) 2 软件开发过程 (6) 2.1 开发所需要的控件 (6) 2.1.1 按钮控件 (6) 2.1.2 文本控件 (6) 2.1.3 串口控件 (6) 2.1.4 选择控件 (7) 2.2 数据发送设计 (7) 2.3 数据接收设计 (9) 3 软件使用说明 (11) 4 软件测试 (13) 4.1 辅助工具 (13) 4.2 发送测试 (13) 4.3 接收测试 (13) 5 总结 (15) 致谢 (16) 参考文献 (17) 附录主要程序 (18) 串口发送程序 (18) 串口接收程序 (19) 【Abstract】 (21) 【Key Words】 (21)

串口调试助手设计 专业:电子科学与技术学号:XXXXXXXXXXX 学生姓名:X X X 指导老师姓名:X X X 【内容摘要】串口调试助手是串口调试相关工具,网络上有很多串口调试助手,界面不同,功能各异,使用的开发语言和开发平台也不相同。有的使用C语言开发,有的使用C++语言开发,还有的即使用C语言也使用C++语言;开发平台有的使用Visual C++,有的使用C++ Builder等。本软件使用C语言和C++语言,开发平台使用C++Builder软件。该串口调试助手串口调试助手版支持常用的110 ~ 256000bps波特率,能设置校验、数据位和停止位,能以ASCII码或十六进制接收或发送数据或字符(包括中文),能发送文本文件(*.txt 文本),可以任意设定自动发送周期,并能将接收数据保存成文本文件(*.txt),是做项目开发调试串口的好工具。 【关键词】串口;C++;C++ Builder;控件;测试;

C#中串口通信编程

本文将介绍如何在.NET平台下使用C#创建串口通信程序,.NET 2.0提供了串口通信的功能,其命名 空间是System.IO.Ports。这个新的框架不但可以访问计算机上的串口,还可以和串口设备进行通信。 我们将使用标准的RS 232 C 在PC间通信。它工作在全双工模式下,而且我们不打算使用任何的握手或流控制器,而是使用无modem连接。 命名空间 System.IO.Ports命名空间中最重用的是SerialPort 类。 创建SerialPort 对象 通过创建SerialPort 对象,我们可以在程序中控制串口通信的全过程。 我们将要用到的SerialPort 类的方法: ReadLine():从输入缓冲区读一新行的值,如果没有,会返回NULL WriteLine(string):写入输出缓冲 Open():打开一个新的串口连接 Close():关闭 Code: //create a Serial Port object SerialPort sp = new SerialPort (); 默认情况下,DataBits 值是8,StopBits 是1,通信端口是COM1。这些都可以在下面的属性中重新设置: BaudRate:串口的波特率 StopBits:每个字节的停止位数量 ReadTimeout:当读操作没有完成时的停止时间。单位,毫秒 还有不少其它公共属性,自己查阅MSDN。

串口的硬件知识 在数据传输的时候,每个字节的数据通过单个的电缆线传输。包包括开始位,数据,结束为。一旦 开始位传出,后面就会传数据,可能是5,6,7或8位,就看你的设定了。发送和接收必须设定同样 的波特率和数据位数。 无猫模式 没有Modem模式的电缆只是简单地交叉传送和接收线。同样DTR & DSR, 和 RTS & CTS也需要交叉。RS232针图 这里,我们三条线。互连2和3(一段的2pin连接3pin),连接两端的5pin。 [示例程序] 主程序

家庭无线网络设计与实现

家庭无线网络 GPRS的无线智能家居控制系统方案 提要]随着网络技术和通信技术的不断发展以及人们对生活要求的不断提高,实现家庭智能的远程控制已经成为必然的趋势。国家建设部住宅产业化促进中心提出住宅小区要实现六项智能化要求,其中包括实行安全防范自动化监控管理:对住宅的火灾、有害气体的泄漏实行自动报警;计算机系统能对防盗报警系统进行集中管理和控制。 随着网络技术和通信技术的不断发展以及人们对生活要求的不断提高,实现家庭智能的远程控制已经成为必然的趋势。国家建设部住宅产业化促进中心提出住宅小区要实现六项智能化要求,其中包括实行安全防范自动化监控管理:对住宅的火灾、有害气体的泄漏实行自动报警;防盗报警系统应安装红外或微波等各种类型报警探测器;系统应能与计算机安全综合管理系统联网;计算机系统能对防盗报警系统进行集中管理和控制。但由于目前无线通讯技术的不成熟、运行费用高等弊端,智能家居控制器与外网无线通讯技术成为导致市场接受度低的重要因素,而GPRS系统的特点能够很好的解决该问题。GPRS网络通信业务是通讯公司推出的一项数据传输通信业务,在GPRS网络覆盖区域内,传输距离不受限制,通信费用相对低廉,传输速率较快。本文涉及家庭智能系统及GPRS技术相关背景,分析了其各自基本特点和所要实现的基本功能,并在此基础上提出了基于GPRS无线家庭智能控制系统的总体解决方案。最后总结系统核心GPRS芯片软硬件实现方法。 系统总体架构 网络应用的普及以及各种信息家电的产生都使得在家庭内部对Internet的访问不再局限于单个PC,每个家庭都将面临如何在家庭内部传送Internet 数据以及如何将各种家电设备连接起来的问题,基于此,智能家居网络应运而生。智能家居网络是信息社会的基本单元。未来的家庭中,各种家电设备将组成一个家庭局域网,并通过智能家居控制器接入互联网。智能家居网络的市场发展潜力极其可观,几家大的厂商Intel、IBM、Microsoft 及Sony 都早已涉及其中。 智能家居网络指的是在一个家居中建立一个通信网络,将各种家电设备互相连接起来,实现对所有智能家居网络上的家电设备的远程使用和控制及任何要求的信息交换,如音乐、电视或数据等。智能家居网络的构架包括家庭内部网络系统、智能家居控制器以及智能家居网络与外部Internet网络之间的数据通信。其中,智能家居控制器是智能家庭网络的一个重要组成部分,起到核心的管理、控制和与外部网络通讯作用。它是通过家庭管理平台与家居生活有关的各种子系统

基于labview串口助手设计

学院:华东交通大学机电工程学院班级:2012xxxxxx 学号:2012xxxxxxxx 姓名:xxxx

目录 《虚拟仪器设计》课程设计任务书 (2) 1.引言 (4) 2. labview及串口通信简介 (4) 2.1 Labview (4) 2.2串口通信简介 (5) 3.串口相关节点介绍 (6) 3.1 VISA配置串口 (6) 3.2 设置缓冲区大小 (7) 3.3visa写入 (7) 3.4 VISA读取 (7) 4.程序框图设计 (8) 4.1 串口初始化输入模块 (8) 4.2数据发送程序 (9) 4.3数据接收 (9) 4.4字节数显示 (10) 4.5 属性节点设置 (10) 5.前面板设计 (10) 6.结语 (11) 7.心得体会 (12) 8. 参考文献 (13)

华东交通大学机电工程学院 《虚拟仪器设计》课程设计任务书 学生姓名:高俊须学号:20120310110212 一、设计题目 串口调试助手设计 二、设计目的和要求 通过对虚拟仪器的设计,了解虚拟仪器设计的基本原理及常用的对象使用方法;通过设计一台虚拟式数据采集系统、图形识别系统、通过串口、并口控制、测温系统、转速测量系统等,了解虚拟仪器数据采集卡的使用及设置,并口或串口的数据传输,了解虚拟编程中如何使用非NI公司的数据采集卡或电脑中常用的声卡,如何配置DAQ助手等,学会把外界物理信号采集到计算机并进行简单分析或者通过虚拟仪器产生符合要求的信号并通过声卡输出或者学会利用NI的ELVIS系统设计简单的测量软件。加深虚拟仪器知识、单片机的了解,培养学生运用虚拟仪器思想解决工程实际问题的能力。 二、设计内容 A.详细要求: (1)串口可选;(2)波特率可调;(3)串口通讯方式可调(9位还是11位); (4)校验方式可选(奇校验偶校验);(5)设计界面要标准 B.前面板上要设置必要的控件对象以设置相应参数。 C.设计界面要美观,程序可读性好。 三、设计进度安排 设计时间总计2周 课程设计任务及要求讲解(0.5天) 设计任务分析及查找资料(1.5天) 程序编制及调试(5.5天) 设计说明书撰写(2天) 答辩(0.5天) 四、设计任务书应包括的主要内容 目录设计题目任务分析实现过程程序前面板及流程图

MFC串口通信编程详解解析

MFC串口通信编程介绍 主要介绍了用CreateFile(函数和WriteFile(函数读写串口的实例,以及设置串口属性的实例. 在工业控制中,工控机(一般都基于Windows平台经常需要与智能仪表通过串口 进行通信.串口通信方便易行,应用广泛. 一般情况下,工控机和各智能仪表通过RS485总线进行通信.RS485的通信方式是半双工的,只能由作为主节点的工控PC机依次轮询网络上的各智能控制单元子节点.每次通信都是由PC机通过串口向智能控制单元发布命令,智能控制单元在接收到正确的命令后作出应答. 在Win32下,可以使用两种编程方式实现串口通信,其一是使用ActiveX控件,这种方法程序简单,但欠灵活.其二是调用Windows的API函数,这种方法可以清楚地掌握串口通信的机制,并且自由灵活.下面只介绍API串口通信部分. 串口的操作可以有两种操作方式:同步操作方式和重叠操作方式(又称为异步操作方式.同步操作时,API函数会阻塞直到操作完成以后才能返回(在多线程方式中, 虽然不会阻塞主线程,但是仍然会阻塞监听线程;而重叠操作方式,API函数会立即返回,操作在后台进行,避免线程的阻塞. 无论哪种操作方式,一般都通过四个步骤来完成: (1打开串口 (2配置串口 (3读写串口 (4关闭串口

一打开串口 Win32系统把文件的概念进行了扩展.无论是文件、通信设备、命名管道、邮件槽、磁盘、还是控制台,都是用API函数CreateFile来打开或创建的.该函数的原型为: HANDLE CreateFile( LPCTSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDistribution, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile; ?lpFileName:将要打开的串口逻辑名,如“COM1”; ?dwDesiredAccess:指定串口访问的类型,可以是读取、写入或二者并列; ?dwShareMode:指定共享属性,由于串口不能共享,该参数必须置为0; ?lpSecurityAttributes:引用安全性属性结构,缺省值为NULL; ?dwCreationDistribution:创建标志,对串口操作该参数必须置为 OPEN_EXISTING; ?dwFlagsAndAttributes:属性描述,用于指定该串口是否进行异步操作,该值为FILE_FLAG_OVERLAPPED,表示使用异步的I/O;该值为0,表示同步I/O操 作;

基于51单片机串行通信的无线发射极和接收机设计

1 概述 1.1 课题的目的、背景和意义 最近几年来,由于无线接入技术需求日益增大,以及数据交换业务(如因特网、电子邮件、数据文件传输等)不断增加,无线通信和无线网络均呈现出指数增加的趋势。有力的推动力无线通信向高速通信方向发展。然而,工业、农业、车载电子系统、家用网络、医疗传感器和伺服执行机构等无线通信还未涉足或者刚刚涉足的领域,这些领域对数据吞吐量的要求很低,功率消耗也比现有标准提供的功率消耗低。此外,为了促使简单方便的,可以随意使用的无线装置大量涌现,需要在未来个人活动空间内布置大量的无线接入点,因而低廉的价格将起到关键作用。为降低元件的价格,以便这些装置批量生产,所以发展了一个关于这种网络的标准方案。Zigbee就是在这一标准下一种新兴的短距离、低功耗、低数据传输的无线网络技术,它是一种介于无线标记技术和蓝牙之间的技术方案。 对于这种短距离、低功耗、低数据传输无线技术,它不仅在工业、农业、军事、环境、医疗等传统领域有着巨大的应用价值,未来应用中还可以涉及人类日常生活和社会生产活动的所有领域。由于各方面的制约,这种技术的大规模商业应用还有待时日,但已经显示出了非凡的应用价值,相信随着相关技术的发展和推进,一定会得到更广泛应用。 1.2国内外无线技术相关现状及Zigbee现状 无线通信从固定方式发展为移动方式,移动通信发展至今大约经历了五个阶段:第一阶段为20年代初至50年代初,主要用于舰船及军有,采用短波频及电子管技术,至该阶段末期出现才出现150MHVHF单工汽车公用移动电话系统MTS。 第二阶段为50年代到60年代,此时频段扩展至UHF450MHZ器件技术已向半导体过渡,大多为移动环境的专用系统,并解决了移动电话与公用电话的接续问题。 第三阶段为70年代初至80年代初频段扩展至800MHZ,美国Bell研究所提出蜂窝系统概念并于70年代末进行了AMPS试验。

相关主题
文本预览
相关文档 最新文档