网站地图
范文同学网


自动化 模具 机械 电子 通信 动画 英语范文 工程管理 金融范文 旅游管理 工业工程 生物工程 给排水范文 西门子PLC 历史学 三菱PLC
单片机 财务 会计 法律 行政 物理 物流范文 电子商务 制药工程 包装工程 土木工程 材料科学 汉语言范文 欧姆龙PLC 电压表 松下PLC
计算机 化工 数电 工商 食品 德语 国贸范文 人力资源 教育管理 交通工程 市场营销 印刷工程 机电一体化 数控范文 变电站 文化产业

  • 网站首页|
  • 文档范文|
  • 人工降重|
  • 职称文章发表|
  • 合作期刊|
  • 范文下载|
  • 计算机范文|
  • 外文翻译|
  • 免费范文|
  • 原创范文|
  • 开题报告

联系方式

当前位置:范文同学网 -> 免费范文 -> 电气工程 -> 嵌入式系统在多点温度控制中的应用(十七)
自动化文档范文| 电子机电范文| 测控技术范文| 通信专业范文| 电气工程范文| 通信工程范文| 电子信息工程范文| 免费自动化范文| 免费电子范文| 免费电气范文| 通信范文
·电气自动化原创文章范文 ·学前教育专业原创文章范文 ·国际经济贸易原创文章范文 ·药学专业原创文章范文 ·英语专业原创文章范文 ·公共事业管理原创文章范文
·金融专业原创文章范文 ·广播电视编导原创文章范文 ·电子商务专业原创文章范文 ·法律专业原创文章范文 ·工商管理原创文章范文 ·汉语言文学原创文章范文
·人力资源管理原创文章范文 ·摄影专业原创文章范文 ·心理学专业原创文章范文 ·教育管理原创文章范文 ·市场营销原创文章范文 ·计算机专业原创文章范文
·物流管理专业原创文章范文 ·小学教育专业原创文章范文 ·行政管理专业原创文章范文 ·土木工程管理原创文章范文 ·财务会计专业原创文章范文 ·信息管理信息系统原创范文
·新闻学专业原创文章范文 ·眼视光技术原创文章范文 ·播音与主持原创文章范文 ·广告学专业原创文章范文 ·表演专业原创文章范文 ·动画专业原创文章范文
·视觉传达设计原创文章范文 ·数控技术专业原创文章范文 ·录音艺术原创文章范文 ·光机电应用技术原创范文 ·机电一体化原创文章范文 ·印刷技术专业原创文章范文
·动漫设计与制作原创范文 ·软件技术专业原创文章范文 ·书法学专业原创文章范文 ·应用电子技术原创文章范文 ·电子信息工程技术原创范文 ·机械专业原创文章范文
·酒店管理专业原创文章范文 ·旅游管理专业原创文章范文 ·文化产业管理专业原创范文 ·体育教育专业原创文章范文 ·通信工程专业原创文章范文 ·护理专业原创文章范文

本专业推荐:带PLC源程序的文档设计范文     原创文档范文点击进入 → 电气工程自动化单片机原创文档范文

嵌入式系统在多点温度控制中的应用(十七)

本文ID:LW6104 ¥
放到不同的处理器上运行,这样可以使处理器的任务平衡,也提高系统的运行效率。 5.1 PC机侧串行通信程序的设计   使用MFC开发是较普遍的VC++编程方法。在VC++6.0下,MFC应用程序的线程由CWinThread对象表示。VC++把线程分为两种:用户界面线程和工作者线程。用户界面线程能够提供界面和用户交互,通常用于处理用户输入..
放到不同的处理器上运行,这样可以使处理器的任务平衡,也提高系统的运行效率。
5.1 PC机侧串行通信程序的设计
  使用MFC开发是较普遍的VC++编程方法。在VC++6.0下,MFC应用程序的线程由CWinThread对象表示。VC++把线程分为两种:用户界面线程和工作者线程。用户界面线程能够提供界面和用户交互,通常用于处理用户输入并响应各种事件和消息;而工作者线程主要用来处理程序的后台任务,程序一般不需要直接创建CWinThread对象,通过调用AfxBeginThread()函数就会自动创建一个CWinThread对象,从而开始一个进程。创建上述的两种线程都利用这个函数。  线程的终止取决于下列事件之一:线程函数返回;线程调用ExitThread()退出;异常情况下用线程的句柄调用TerminateThread()退出;线程所属的进程被终止。
5.1.1程序设计的关键技术
 多线程编程在串口通信中的应用中要考虑的问题:
 1).串口通信对线程同步的要求
 因为同一进程的所有线程共享进程的虚拟地址空间,而在Windows 9X/NT/2000系统下线程是汇编级中断,所以有可能多个线程同时访问同一个对象。这些对象可能是全局变量,MFC的对象,MFC的API等。
 串口通信中,对于每个串口对象,只有一个缓冲区,发送和接收都要用到,必须建立起同步机制,使得在一个时候只能进行一种操作,否则通信就会出错。进行串口通信处理的不同线程之间需要协调运行。如果一个线程必须等待另一个线程结束才能运行,则应该挂起该线程以减少对CPU资源的占用,通过另一进程完成后发出的信号(线程间通信)来激活。
 串口通信的几个特点决定了必须采用措施来同步线程的执行。为此,VC++提供了同步对象来协调多线程的并行,常用的有以下几种:
 CSemaphore:信号灯对象,允许一定数目的线程访问某个共享资源,常用来控制访问共享资源的线程数量。
 Cmutex:互斥量对象,一个时刻至多只允许一个线程访问某资源,未被占用时处于有信号状态,可以实现对共享资源的互斥访问。
 CEvent:事件对象,用于使一个线程通知其他线程某一事件的发生,所以也可以用来封锁对某一资源的访问,直到线程释放资源使其成为有信号状态。适用于某一线程等待某事件发生才能执行的场合。
 CCriticalSection:临界区对象,将一段代码置入临界区,只允许最多一个线程进入执行这段代码。一个临界区仅在创建它的进程中有效。    2).等待函数:
 Win32 API提供了能使线程阻塞其自身执行的等待函数,等待其监视的对象产生一定的信号才停止阻塞,继续线程的执行。其意义是通过暂时挂起线程减少对CPU资源的占用。在某些大型监控系统中,串口通信只是其中事务处理的一部分,所以必须考虑程序执行效率问题,当串口初始化完毕后,就使其处于等待通信事件的状态,减少消耗的CPU时间,提高程序运行效率。
 常用的等待函数是WaitForSingleObject()和WaitForMultipleObjects(),前者可监测单个同步对象,后者可同时监测多个同步对象。
 3).串口通信的重叠I/O方式:
 对于串口作为文件设备处理,用CreateFile( )打开串口,获得一个串口句柄。打开后SetCommState ( )进行端口配置,包括缓冲区设置,超时设置和数据格式等。成功后就可以调用函数ReadFile( )和WriteFile( )进行数据的读写,用WaitCommEvent( )监视通信事件。CloseHandle( )用于关闭串口。
 在ReadFile( )和WriteFile( )读写串口时,可以采取同步执行方式,也可以采取重叠I/O(异步)方式。同步执行时,函数直到执行完毕才返回,因而同步执行的其他线程会被阻塞,效率下降;而在重叠方式下,调用的读写函数会立即返回,I/O操作在后台进行,这样线程就可以处理其他事务。线程可以在同一串口句柄上实现读写操作,实现"重叠"。
 使用重叠I/O方式时,线程要创建OVERLAPPED结构供读写函数使用,该结构最重要的成员是hEvent事件句柄。它将作为线程的同步对象使用,读写函数完成时hEvent处于有信号状态,表示可进行读写操作;读写函数未完成时,hEvent被置为无信号。
5.1.2 通信协议的制定
 5.1.2.1 通信协议概述
 在本系统的设计中,PC机是主控者,可以发控制命令或者读取相关信息,在第四章中设计的嵌入式系统只是被动接收者,在以后的叙述中称其为下位机。这样通信协议较双方互为主控者时简单。
 本通信协议的设计思想是基于帧格式传输,由一系列的ASCII码组成。PC机通过RS232串口发送命令信号、应答信号时,是一帧一帧发送的。具体如下:
 1). 在PC机读数据时,遵循“读命令—等数据—报告”,即PC下达一命令,等待接收数据,根据所接收信息向应用程序报告此命令的执行情况。
 2). 在PC机写数据时,遵循“写命令--等回应--报告”,即PC下达一写命令,此时所要写的数据信息含于此命令中,等待发来的已正确接收的回应信号并向应用程序报告。此命令执行完毕。
 3). 如果在转输过程中,双方任何一方所接收任何一帧信号出现错误时,均会向对方发送重发此帧信号的请求,如果连续三次转输失败则退出通信,并向应用程序报告。
 5.2.1.2 信号帧的分类及格式
 1). 读命令帧(20H)
帧头 地址 子地址 命令类型 数据类型 数据 校验和 帧尾 

 说明:
 帧头:STX (02H),Start of text , 长度为1字节。
 地址:地址号0-95 (20H – 7FH),用于区别不同的器件地址。其中95(7FH)用于全局地址,当此项为95时,此命令发给所有设备。长度为1字节。
 子地址:当用于特别作用时,此项设置范围为:1-7 (21H-27H)。正常情况下为0(20H)。长度为1字节。
 命令类型:写命令,代码为20H。长度为1字节。
 数据类型:不同的数据项,代表着不同的功能。长度为4 字节。
 数据:数据信息。长度为4字节。
 校验和:计算方法是从地址开始到校验和之前的所有字节之和取反再加1,然后取其结果的低字节。发送时转换为ASCII码格式发送。长度为2字节。
 帧尾:ETX(03H)。End of text。长度为1字节。
 2). 写命令帧 (50H)
帧头 地址 子地址 命令类型 数据类型 数据 校验和 帧尾 
 各项分析同上。
 3). 数据帧(对读命令的响应)
帧头&n

首页 上一页 14 15 16 17 18 19 20 下一页 尾页 17/20/20

嵌入式系统在多点温度控制中的应用(十七)相关范文
上一篇:免费基于单片机控制的电子密码锁 下一篇:汽包水位控制方案的比较分析
点击查看关于 嵌入式 系统 温度控制 应用 的相关范文题目 【返回顶部】
精彩推荐
电气工程自动化原创范文  电子商务原创文章范文
人力资源专业原创文章范文 土木工程原创文章范文
工商管理专业原创范文    药学专业原创范文
汉语言文学专业原创范文  会计专业原创文章范文
计算机技术原创文章范文  金融学原创文章范文
法学专业原创文章范文   市场营销专业原创范文
信息管理专业原创文章范文 学前教育专业原创范文
公共事业管理专业原创范文 英语专业原创范文
教育管理专业原创范文   行政管理专业原创范文
热门范文

关于我们 | 联系方式 | 范文说明 | 网站地图 | 免费获取 | 钻石会员 | 硕士文章范文


范文同学网提供文档范文,原创文章范文,网站永久域名www.lunwentongxue.com ,lunwentongxue-范文同学网拼音首字母组合

本站部分文章来自网友投稿上传,如发现侵犯了您的版权,请联系指出,本站及时确认并删除  E-mail: 17304545@qq.com

Copyright@ 2009-2024 范文同学网 版权所有