串口通信:端口打开的异常信号捕捉

shanhe972005 2006-11-06 11:46:26
在MFC中使用控件进行串口编程,程序如下:

m_Serial.SetCommPort(3); //指定串口号
if(!m_Serial.GetPortOpen())
m_Serial.SetPortOpen(TRUE); //打开串口

如果串口3不存在,打开操作会产生异常,这个异常怎么捕捉到,作进一步处理呢?

谢谢关注。
...全文
132 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
theoway_zw 2006-11-06
  • 打赏
  • 举报
回复
MARK
shanhe972005 2006-11-06
  • 打赏
  • 举报
回复
顶起来
PIC单片机实用教程-提高篇 作者:李学海 编著 出版社:北京航天航空大学出版社 出版时间: 2002-09 pic单片机实用教程(提高篇)以介绍PIC16F87X型号单片机为主,并适当兼顾PIC全系列,共分9章,内容包括:存储器;I/O端口的复位功能;定时器/计数器TMR1;定时器TMR2;输入捕捉/输出比较/脉宽调制CCP;模/数转换器ADC;通用同步/异步收发器USART;主控同步串行端口MSSP:SPI模式和I2C模式。突出特点:通俗易懂、可读性强、系统全面、学练结合、学用并重、实例丰富、习题齐全。<br>本书作为Microchip公司大学计划选择用书,可广泛适用于初步具备电子技术基础和计算机知识基础的学生、教师、单片机爱好者、电子制作爱好者、电器维修人员、电子产品开发设计者、工程技术人员阅读。本教程全书共分2篇,即基础篇和提高篇,分2册出版,以适应不同课时和不同专业的需要,也为教师和读者增加了一种可选方案。 第1章 EEPROM数据存储器和FIASH程序存储器 1.1 背景知识 1.1.1 通用型半导体存储器的种类和特点 1.1.2 PIC单片机内部的程序存储器 1.1.3 PIC单片机内部的EEPROM数据存储器 1.1.4 PIC16F87X内部EEPROM和FIASH操作方法 1.2 与EEPROM相关的寄存器 1.3 片内EEPROM数据存储器结构和操作原理 1.3.1 从EEPROM中读取数据 1.3.2 向EEPROM中烧写数据 1.4 与FLASH相关的寄存器 1.5 片内FLASH程序存储器结构和操作原理 1.5.1 读取FLASH程序存储器 1.5.2 烧写FLASH程序存储器 1.6 写操作的安全保障措施 1.6.1 写入校验方法 1.6.2 预防意外写操作的保障措施 1.7 EEPROM和FLASH应用举例 1.7.1 EEPROM的应用 1.7.2 FIASH的应用 思考题与练习题 第2章 输入/输出端口的复合功能 2.1 RA端口 2.1.1 与RA端口相关的寄存器 2.1.2 电路结构和工作原理 2.1.3 编程方法 2.2 RB端口 2.2.1 与RB端口相关的寄存器 2.2.2 电路结构和工作原理 2.2.3 编程方法 2.3 RC端口 2.3.1 与RC端口相关的寄存器 2.3.2 电路结构和工作原理 2.3.3 编程方法 2.4 RD端口 2.4.1 与RD端口相关的寄存器 2.4.2 电路结构和工作原理 2.4.3 编程方法 2.5 RE端口 2.5.1 与RE端口相关的寄存器 2.5.2 电路结构和工作原理 2.5.3 编程方法 2.6 PSP并行从动端口 2.6.1 与PSP端口相关的寄存器 2.6.2 电路结构和工作原理 2.7 应用举例 思考题与练习题 第3章 定时器/计数器TMR1 3.1 定时器/计数器TMR1模块的特性 3.2 定时器/计数器TMR1模块相关的寄存器 3.3 定时器/计数器TMR1模块的电路结构 3.4 定时器/计数器TMR1模块的工作原理 3.4.1 禁止TMR1工作 3.4.2 定时器工作方式 3.4.3 计数器工作方式 3.4.4 TMR1寄存器的赋值与复位 3.5 定时器/计数器TMR1模块的应用举例 思考题与练习题 第4章 定时器TMR2 4.1 定时器TMR2模块的特性 4.2 定时器TMR2模块相关的寄存器 4.3 定时器TMR2模块的电路结构 4.4 定时器TMR2模块的工作原理 4.4.1 禁止TMR2工作 4.4.2 定时器工作方式 4.4.3 寄存器TMR2和PR2以及分频器的复位 4.4.4 TMR2模块的初始化编程 4.5 定时器TMR2模块的应用举例 思考题与练习题 第5章 输入捕捉/输出比较/脉宽调制CCP 5.1 输入捕捉工作模式 5.1.1 输入捕捉摸式相关的寄存器 5.1.2 输入捕捉模式的电路结构 5.1.3 输入捕捉摸式的工作原理 5.1.4 输入捕捉摸式的应用举例 5.2 输出比较工作模式 5.2.1 输出比较模式相关的寄存器 5.2.2 输出比较模式的电路结构 5.2.3 输出比较模式的工作原理 5.2.4 输出比较模式的应用举例 5.3 脉宽调制输出工作模式 5.3.1 脉宽调制模式相关的寄存器 5.3.2 脉宽调制模式的电路结构 5.3.3 脉宽调制模式的工作原理 5.3.4 脉定调制模式的应用举例 5.4 两个CCP模块之间相互关系 思考题与练习题 第6章 模/数转换器ADC 6.1 背景知识 6.1.1 ADC种类与特点 6.1.2 ADC器件的工作原理 6.2 PIC16F87X片内ADC模块 6.2.1 ADC模块相关的寄存器 6.2.2 ADC模块结构和操作原理 6.2.3 ADC模块操作时间要求 6.2.4 特殊情况下的A/D转换 6.2.5 ADC模块的转换精度和分辨率 6.2.6 ADC模块的内部动作流程和传递函数 6.2.7 ADC模块的操作编程 6.3 PIC16F87X片内ADC模块的应用举例 思考题与练习题 第7章 通用同步/异步收发器USART 7.1 串行通信的基本概念 7.1.1 串行通信的两种基本方式 7.1.2 串行通信中数据传送方向 7.1.3 串行通信中的控制方式 7.1.4 串行通信中的码型、编码方式和帧结构 7.1.5 串行通信中的检错和纠错方式 7.1.6 串行通信组网方式 7.1.7 串行通信接口电路和参数 7.1.8 串行通信的传输速率 7.2 PIC16F87X片内通用同步/异步收发器USART模块 7.2.1 与USART模块相关的寄存器 7.2.2 USART波特率发生器BRG 7.2.3 USART模块的异步工作方式 7.2.4 USART模块的同步主控工作方式 7.2.5 USART模块的同步从动工作方式 7.3 通用同步/异步收发器USART的应用举例 思考题与练习题 第8章 主控同步串行端口MSSP——SPI模式 8.1 SPI接口的背景知识 8.1.1 SPI接口信号描述 8.1.2 基于SPI的系统构成方式 8.1.3 SPI接口工作原理 8.1.4 兼容的MicroWire接口 8.2 PIC16F87X的SPI接口 8.2.1 SPI接口相关的寄存器 8.2.2 SPI接口的结构和操作原理 8.2.3 SPI接口的主控方式 8.2.4 SPI接口的从动方式 8.3 SPI接口的应用举例 思考题与练习题 第9章 主控同步串行端口MSSP——I(平方)C模式 9.1 I(平方)C总线的背景知识 9.1.1 名词术语 9.1.2 I(平方)C总线的技术特点 9.1.3 I(平方)C总线的基本工作原理 9.1.4 I(平方)C总线信号时序分析 9.1.5 信号传送格式 9.1.6 寻址约定 9.1.7 技术参数 9.1.8 I(平方)C器件与I(平方)C总线的接线方式 9.1.9 相兼容的SMBus总线 9.2 与I(平方)C总线相关的寄存器 9.3 典型信号时序的产生方法 9.3.1 波特率发生器 9.3.2 启动信号 9.3.3 重启动信号 9.3.4 应答信号 9.3.5 停止信号 9.4 被控器通信方式 9.4.1 硬件结构 9.4.2 被主控器寻址 9.4.3 被控器接收——被控接收器 9.4.4 被控器发送——被控发送器 9.4.5 广播式寻址 9.5 主控器通信方式 9.5.1 硬件结构 9.5.2 主控器发送——主控发送器 9.5.3 主控器接收——主控接收器 9.6 多主通信方式下的总线冲突和总线仲裁 9.6.1 发送和应答过程中的总线冲突 9.6.2 启动过程中的总线冲突 9.6.3 重启动过程中的总线冲突 9.6.4 停止过程中的总线冲突 9.7 I(平方)C总线的应用举例 思考题与练习题 附录A 包含文件P16F877.INC 附录B 新版宏汇编器MPASM伪指令总表 参考文献
书 名:零点起步——PIC单片机常用模块与典型实例 丛书名:零点起步系列丛书 闫广明 张波 孙小君 等编著 机械工业出版社 责任编辑 郝建伟 李宁 书 号 见本光盘盘面 对应盘号 见本光盘盘面 一、运行环境 1.MPLAB IDE可以运行在Windows 2000或Windows XP系统下。本书以MPLAB IDE V8.0为介绍对象。 2.Proteus可以运行在Windows 2000或Windows XP系统下。本书以Proteus V7.12为介绍对象。 3.本书中所有例子均运行在Windows XP系统下,屏幕分辨率设置为1024*768。 二、光盘内容介绍 1.随书所赠光盘中包括本书的配套软件、项目源代码和多媒体课件。 2.书中每个例子的所有源文件都保存在相应章节的文件夹下,每个文件夹分别命名为“SMN”的形式,其中“M”代表章号,“N”代表例子序号,例如“S041”表示这是第4章“例4-1”的项目文件夹。 3.习题答案源代码在相应章节文件夹下的answer文件夹下,例如“习题4-1”的答案在“chapter4\answer\E041”文件夹。 4.读者可以通过邮件gdz_zero@126.com联系我们,我们会耐心解答您的问题。 三、开发软件介绍 1.MPLAB_v8.zip是MPLABIDE V8.0的安装压缩包,请解压到硬盘后运行“Install_MPLAB_V8.exe”来安装,选用默认配置选项即可。 2.prodemo74cn.exe 是Proteus V7.4的中文演示版安装包,直接运行即可安装。需要注意的是此版本无法模拟第三方例子文件,若要模拟本书中的例子,请使用正版软件。 四、PPT文件清单 文件夹按每章序号排列,内容如下。 01单片机概述.ppt 02C语言项目建立过程.avi 02ICD2安装过程.avi 02MPLAB安装过程.avi 02单片机开发流程.ppt 03PIC单片机系统结构.ppt 04单片机C语言.ppt 05输入输出端口.ppt 06中断系统.ppt 07定时计数器.ppt 08AD转换器.ppt 09USART模块.ppt 10SPI模块.ppt 11I2C模块.ppt 12CCP模块.ppt 13综合实例.ppt 五、例子、习题文件清单 文件夹按每章序号排列,内容如下。 chapter4:第4章 单片机C语言 S041: 最简单的C程序例子 S042: 移位运算符效果例子 S043: 初级的数码管动态显示例子 S044: 多文件项目管理例子 S045: 一位计数器例子 answer: 习题编程题答案 E041:编程题1答案 E042:编程题2答案 E043:编程题3答案 E044:编程题4答案 E045:编程题5答案 chapter5:第5章 输入输出端口的用法 S051: 跑马灯程序 S052: 四位数码管动态扫描程序,主频为4MHz S053: 四位数码管动态扫描主程序,采用模块化编程 S054: 记录按钮按下次数并显示在四位数码管上 S055: 三按键读取程序,控制四位数码管内容变化 S056: 4*4键盘扫描例子 S057: 简单的加法计算器例程 answer: 习题编程题答案 E051:编程题1答案 E052:编程题2答案 E053:编程题3答案 E054:编程题4答案 chapter6:第6章 中断系统 S061: INT 中断例子 S062: B口高四位中断例子 answer: 习题编程题答案 E061:编程题1答案 chapter7:第7章 定时计数器 S071: TMR0定时中断例程 S072: WDT例程 S073: 习题编程题电路图 answer: 习题编程题答案 E071:编程题1答案 chapter8:第8章 AD转换器 S081: 采用查询方式把模拟通道AN0的10位A/D转换结果送D口,C口显示 S082: 采用中断方式把模拟通道AN0的10位A/D转换结果送D口,C口显示 S083: 测量电位器RV2对地阻值并显示在四位数码管上 answer: 习题编程题答案 E081:编程题1答案 E082:编程题2答案 chapter9:第9章 USART串行通信 S091: 模拟的单片机与真实PC通信,通过SerialNull虚拟串口实现 S092: 通过USART发送字母例子 S093: MCU双机通信(基于自定通信协议) answer: 习题编程题答案 E091:编程题1答案 E092:编程题2答案 chapter10:第10章 SPI接口 S101: SPI 串行输出控制74HC595例子,主机发数据 S102: SPI双击通信例子,主机收数据,从机发数据 S103: 25C080读写例程 answer: 习题编程题答案 E101:编程题1答案 E102:编程题2答案 chapter11:第11章 I2C总线 S111: I2C 主机发送模式例子 S112: I2C 主机接收模式例子 S113: 24C02C EEPROM 读写例子 answer: 习题编程题答案 E111:编程题1答案 chapter12:第12章 输入捕捉输出比较脉宽调制 S121: 捕捉例程:频率计设计 S121: 比较例程:方波发生器 S123: PWM例程 answer: 习题编程题答案 E121:编程题1答案 E122:编程题2答案 chapter13:第13章 综合实例 S131:字符液晶驱动例程 S132:8*8点阵显示例程 S133:16*16点阵显示例程 S134: 密码锁控制器项目源代码 answer: 习题编程题答案 E131:编程题1答案 E132:编程题2答案 E133:编程题3答案

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧