当前位置:首页 > 工业技术
串行通信C程序员指南  第2版
串行通信C程序员指南  第2版

串行通信C程序员指南 第2版PDF电子书下载

工业技术

  • 电子书积分:20 积分如何计算积分?
  • 作 者:(美)Joe Campbell著;徐国定等译
  • 出 版 社:北京:清华大学出版社
  • 出版年份:1995
  • ISBN:7302019002
  • 页数:709 页
图书介绍:
《串行通信C程序员指南 第2版》目录

前言页 1

序言 1

1.1 上下文意义 3

第1章 ASCII字符集 3

第一部分 串行通信基础 3

1.2 ASCII字符集的位 4

1.1.2 人类上下文意义:字符集 4

1.1.1 机器的上下文意义:指令集 4

1.2.2 ASCII码表 5

1.2.1 “ASCII”的歧义性 5

1.3 图形字符 7

1.3.1 数字字符 8

1.3.2 拉丁字母表 9

1.3.3 特殊字符 10

1.4 控制字符 13

1.3.4 ASCII码排序序列 13

1.4.1 物理设备控制字符 15

1.4.2 逻辑通信控制字符 17

1.4.3 物理通信控制字符 18

1.4.4 信息分隔符 19

1.4.5 用于代码扩展的控制字符 20

1.4.6 控制字符的繁难 21

1.4.8 ANSI X3.64:控制代码扩展 22

1.4.7 控制字符的图案表示 22

1.5 控制序列前导符 26

1.4.9 ANSI X3.64 控制代码格式 26

1.5.1 用ANSI X3.64编程 27

1.6 换行 28

1.7.1 与行结束相关的词汇表 29

1.7 一个合理的建议 29

2.1.1 早期的并行系统 30

2.1 电子通信的历史 30

第2章 异步通信技术基础 30

2.1.2 串行二进制系统 31

2.1.3 早期的打印电报 32

2.1.4 五位代码 33

2.1.5 机器自动编码和解码 34

2.1.6 同步化 36

2.1.7 为什么要用五位代码? 40

2.1.9 串行术语 41

2.1.8 ASCII码的传送 41

2.2.1 同步与异步串行通信的比较 43

2.2 通信线路的用法 43

2.3 小结 44

3.2 错误检测 45

3.1 错误起源 45

第3章 错误及错误检测 45

3.2.1 冗余位 46

3.2.2 块冗余:奇介校验 47

3.3.1 模-2算术运算 49

3.3 循环冗余校验(CRC) 49

3.3.2 普通写法的模-2除法 50

3.3.3 模-2除法与硬件 51

3.3.4 清除余数寄存器 54

3.3.6 CRC和多项式 55

3.3.5 典型的CRC电路 55

3.3.7 选择生成器多项式(除数) 56

3.3.9 对累加器清零的另一种考虑 57

3.3.8 获得零余数 57

3.4 CRC的各种变形 59

3.4.3 一字节数据的CRC 60

3.4.2 前导零 60

3.4.1 典型CRC 60

3.5 小结 62

4.2 软件流控制过程 63

4.1 流控制 63

第4章 信息传输 63

4.2.1 逐个字符的流控制过程 64

4.2.2 行流控制 66

4.3.2 字符协议 67

4.3.1 用于硬件设备的流控制协议 67

4.3 流控制协议 67

4.3.4 文件传送协议 69

4.3.3 整行协议 69

4.4.1 发送并等待ARQ 70

4.4 自动重复请求(ARQ)协议 70

4.5.1 分隔信息包的控制字符 71

4.5 信息包 71

4.4.2 连续ARQ 71

4.5.3 数据区段固定长度的信息包 72

4.5.2 限定信息包的区段长度 72

4.6.2 XMODEM发送 73

4.6.1 XMODEM的技术说明 73

4.6 XMODEM协议 73

4.6.3 XMODEM接收 75

4.6.4 XMODEM-CRC 77

4.6.5 超时处理 78

4.6.6 XMODEM的有关问题 79

4.6.7 多文件XMODEM 80

4.7 Kermit简介 81

4.7.1 Kermit协议 83

4.7.2 在Kermit信息包内控制字符的编码 85

4.7.4 在Kermit DATA区段中重复计算的编码 87

4.7.3 在Kermit DATA区段中数据字节高阶位的编码 87

4.7.5 Kermit信息包中的区段 88

4.7.6 Kermit信息包的类型 89

4.7.8 终止一个传送过程 91

4.7.7 一个Kermit通信会话范例 91

4.7.9 Kermit的扩充 93

4.7.11 加长信息包 94

4.7.10 ARQ 94

4.8 局部链路协议 96

4.7.12 如何选择 96

4.9 小结 97

5.1.1 调制解调器基础 99

5.1 调制解调器 99

第5章 调制解调器及其控制 99

5.1.2 调制 100

5.1.3 通信方式或带宽用法 102

5.1.4 频率调制 104

5.1.5 带宽限制 106

5.1.6 相位调制 107

5.1.7 微分相移键控 109

5.1.9 握手:建立数据链路 110

5.1.8 正交调幅 110

5.1.11 ECM:回波抵消系统 114

5.1.10 带宽增加 114

5.1.13 V.32 115

5.1.12 网格编码 115

5.2 调制解调器控制 117

5.1.15 V.FAAT 117

5.1.14 V.32bis 117

5.3 RS-232标准 118

5.3.1 交换电路的法定功能说明 120

5.3.2 电信号特征 122

5.3.3 接口电路的机械描述 123

5.4 实际的RS-232 124

5.4.1 调制解调器和RS-232接口 125

5.4.2 微机接口 129

5.5 灵巧型调制解调器 130

5.5.1 调制解调器和流控制 131

5.6.1 空(Null)调制解调器 134

5.6 RS-232的非标准用法 134

5.6.2 连接非调制解调器设备 135

5.7 小结 136

6.1.1 软件异步输出 138

6.1 软件异步I/O 138

第6章 UART:一个概念上的模型 138

6.1.2 软件异步输入 139

6.2.1 串行数据时钟 142

6.2 UART的介绍 142

6.2.2 UART发送器 143

6.2.4 错误检测 145

6.2.3 UART接收器 145

6.2.5 接收器同步 147

6.3.1 奇偶校验 150

6.3 数据格式 150

6.3.2 数据位个数 151

6.4 RS-232接口 152

6.3.4 “送BREAK”位 152

6.3.3 停止位个数 152

6.4.2 RS-232输入 153

6.4.1 RS-232输出寄存器 153

6.4.5 RS-232输出控制寄存器 154

6.4.4 RS-232状态寄存器 154

6.4.3 握手信号 154

6.5 UART中断 155

6.4.6 RS-232反相逻辑 155

6.5.2 中断向量的确定 156

6.5.1 生成中断 156

6.6.1 过速/欠载 157

6.6 FIFO式UART 157

6.7.1 中断饱和 158

6.7 中断等待 158

6.10 小结 159

6.9 一个理想FIFO的UART 159

6.8 块结束问题 159

7.1 National 8250/16450 160

第7章 实际的UART 160

7.2 8250硬件基础 161

7.3.1 8250内部寄存器寻址 162

7.3 8250内部结构 162

7.2.1 8250时钟和同步 162

7.3.2 8250寄存器用法概要 164

7.3.3 8250上的中断 169

7.3.4 中断服务例行程序 170

7.4 National 16550 UART 171

7.4.1 16550中断标识寄存器 172

7.4.4 FIFO中断模式操作 173

7.4.3 FIFO控制寄存器 173

7.4.2 线路状态寄存器 173

7.5 Zilog Z80SIO串行输入/输出控制器 174

7.4.7 查询操作中16550的使用 174

7.4.5 接收FIFO 174

7.4.6 发送中断操作 174

7.6.2 FIFO 175

7.6.1 寄存器寻址 175

7.6 Z80SIO与8250比较 175

7.7 Z80SIO硬件基础 176

7.6.5 XZ80SIO附加特征 176

7.6.3 DELTA状态位锁存 176

7.6.4 向量中断 176

7.7.2 控制/状态口寻址 178

7.7.1 数据寄存器 178

7.7.3 Z80SIO中断 180

7.7.4 其余寄存器概述 184

7.8 小结 186

第8章 baseline灵巧型调制解调器 187

8.1 灵巧型调制解调器的灵巧之处何在? 188

8.3.1 命令状态 189

8.3 调制解调器状态 189

8.2 Hayes Smart调制解调器的简史 189

8.4.1 命令语法 190

8.4 命令语法和调制解调器响应 190

8.3.2 拨号状态 190

8.3.3 握手状态 190

8.3.4 在线状态 190

8.3.5 在线命令状态 190

8.3.6 哑终端方式 190

8.4.2 命令执行时间 191

8.5 软挂起:在线命令状态 192

8.4.3 按键退出 192

8.6 对命令的响应 193

8.5.1 在线转义的危险 193

8.7.1 自动波特率调整 194

8.7 硬件问题 194

8.7.3 非易失性存储器 195

8.7.2 速率和数据格式 195

8.7.4 调制解调器的RS-232接口 196

8.7.7 配置开关 197

8.7.6 后面板 197

8.7.5 前面板 197

9.2 调制解调器命令 200

9.1 存根命令 200

第9章 ??调制解调器命令 200

9.3.1 用户接口命令组 201

9.3 方式命令 201

9.3.2 基本拨号和应答命令组 204

9.3.3 拨号修改标志组 205

9.3.4 拨号变量命令组 208

9.3.5 其他命令组 210

9.3.7 电话硬件控制命令组 213

9.3.6 Profile管理命令组 213

9.3.8 RS-232命令组 215

9.3.9 连接性选择命令组 216

9.4 数字变量命令 217

9.4.1 S寄存器字符变量 218

9.4.2 计数/定时用S寄存器变量 219

10.1.2 背景 226

10.1.1 调制解调器协议 226

第10章 协议调制解调器 226

10.1 调制解调器协议和协议调制解调器 226

10.1.3 调制解调器协议的简短回顾 227

10.1.5 OSI七层网络模型 228

10.1.4 网络模型 228

10.2.2 体系结构 230

10.2.1 同步还是异步? 230

10.2 究竟什么是一个链路协议? 230

10.2.4 数据等待时间 231

10.2.3 数据透明性 231

10.2.6 BREAK处理 233

10.2.5 协议效率 233

10.3.2 信息 234

10.3.1 标题 234

10.3 MNP协议 234

10.4.6 协议效率 235

10.4.5 帧校验序列 235

10.3.3 帧校验序列 235

10.3.4 BREAK处理 235

10.4 MNP异步协议:1类和2类MNP 235

10.4.1 信息包引导符 235

10.4.2 标题字段 235

10.4.3 信息字段 235

10.4.4 信息包终结符序列 235

10.5.1 信息包引导符/终结符序列 236

10.5 MNP同步协议:3类和4类MNP 236

10.6 LAPM(V.42) 237

10.5.4 协议效率 237

10.5.2 标题字段 237

10.5.3 帧校验序列 237

10.6.5 BREAK处理 238

10.6.4 信息字段 238

10.6.1 信息包引导符/终结符序列 238

10.6.2 地址字段 238

10.6.3 控制字段 238

10.7 压缩理论 239

10.7.1 重复 240

10.7.2 统计重复:哈夫曼编码 241

10.7.3 历史重复:Lempel-Ziv 242

10.8 流控制 247

10.7.6 V.42bis和5类MNP之间的比较 247

10.8.1 流控制与数据压缩 248

10.10 Q协议启动 250

10.9 协议调制解调及其命令 250

10.12 S48:特性协商 251

10.11 S46:协议及压缩规程选择 251

10.14 K:流控制 252

10.13 S36:协商退却(Fallback) 252

10.16 Wn和S95:扩展响应 253

10.15 线路速度控制 253

第11章 传真机 256

11.1 T:30:传真通信协议 258

11.2 HDLC信息包 259

11.3 传真字段 261

11.5.1 轮询 262

11.5 同步线路控制 262

11.4 成串信息包 262

11.6.1 阶段A:呼叫建立 263

11.6 传真的五个阶段 263

11.5.2 X位(X-Bit) 263

11.6.2 阶段B:识别和协商 264

11.6.4 阶段D:页后过程 265

11.6.3 阶段C:数据(“报文”)传输 265

11.7.1 实例描述一:单页传真 266

11.7 传真过程的实例描述 266

11.6.5 阶段E:呼叫释放 266

11.7.3 实例描述三:不同规格的多页传真 268

11.7.2 实例描述二:规格相同的多页传真 268

11.7.4 实例描述四:轮询方式单页传真 271

11.7.5 实例描述五:在G3训练期间降低速度 273

11.7.6 实例描述六:在G3训练期间提高速度 274

11.8.2 新的FCF 275

11.8.1 向后兼容性和可扩展性 275

11.8 DIS/DCS位映象 275

11.8.3 最小性能集合 276

11.8.4 DIS/DCS信息包的逐位解释 279

11.9 T.4.:传真图像协议 282

11.10 分辨率 283

11.10.1 1992年的T.4建议 284

11.11.1 页面尺寸 285

11.11 文件尺寸 285

11.12.1 一维编码(改进型哈夫曼编码) 289

11.12 传真编码 289

11.12.2 二维编码(READ编码) 294

11.12.3 线终码 297

11.12.3 编码方式综述 297

11.12.4 页编码 299

11.13 差错 300

11.13.1 纠错 301

11.14 EIA传真调制解调器 302

11.15 EIA 578(Class1) 304

11.15.1 Clas-1服务 305

11.15.2 命令综述 306

11.16 会话实例 309

12.1.1 SIOLOCAL.H文件 314

12.1 Microsoft C编译器 314

第二部分 用C语言编写异步通信程序 314

第12章 设计一个基本的串行I/O库 314

12.2 串行I/P库 317

12.2.1 函数库的层次结构--分级 319

12.2.2 用于屏蔽状态寄存器的常量 321

12.2.3 U16x.LIB 322

12.2.4 2级库:BUOS.LIB 325

12.2.5 3级库:SIO.LIB 326

12.3 终端模拟程序的第一个版本TERM0 327

12.3.1 控制台I/O 328

12.4 TERM0 329

12.5.1 0级模块:IBMPC.C. 331

12.5 连接TERM0 331

12.6 小结 332

13.1 1级函数 333

第13章 程序的可移植性 333

13.1.1 结构中的函数指针 334

13.1.2 含有指向UART读/写函数的指针的结构sio 335

13.1.3 修改后的RART.LIB函数 336

13.2 SIO数据类型 337

13.1.4 内存映象系统各的指针 337

13.2.1 管理多个SIO 338

13.3 修改1级函数 339

13.4.1 进一步讨论函数指针 341

13.4 修改2级函数 341

13.3.1 寄存器存储类型register 341

13.4.2 BUOS.LIB中修改后的2级函数 342

13.4.3 声明和初始化SIO 343

13.6.1 延时 346

13.6 定时函数的类型 346

13.5 为内存映象UART提供的SIO结构 346

13.5.1 定时函数 346

13.7.1 系统节拍器 347

13.7 系统定时器和时间保持器 347

13.6.2 超时功能 347

13.8 设计一个虚拟的定时系统 348

13.7.2 系统节拍器的软件接口 348

13.8.1 IBM PC机的定时程序 349

13.8.2 0级定时函数delay 350

13.8.3 “等待字符”函数 351

13.9 为定时参数定义常量 352

13.10 UART清除器 353

13.10.1 测试定时函数的程序 354

13.11 小结 355

14.1 设计目标 356

第14章 波特率和数据格式函数 356

14.1.2 一般假设 357

14.1.1 用户准则 357

14.1.3 虚拟寄存器 358

14.2 IBM PC机的数据格式 361

14.2.1 16X50的虚拟寄存器数组 362

14.2.2 位操作的通用结构(vergbits_) 363

14.2.3 IBM PC机上的数据格式 364

14.2.4 通过SIO指针访问虚拟寄存器 365

14.2.5 为停止位和数据长度声明的结构 366

14.2.6 多寄存器操作 367

14.2.7 最终版的vsetbits函数 369

14.2.9 3级数据络式函数 371

14.2.8 16X50的1级函数(_vestbits) 371

14.3 波特率函数 373

14.2.10 结构定义的位置 373

14.3.1 vbaud_数据结构 374

14.3.2 IBM PC的波特率数据结构 375

14.3.3 设置波特率的2级函数 376

14.3.4 用于16X50的1级波特率函数(_vsetbr) 377

14.3.5 设置波特率的3级函数 378

14.4.1 用于16X50的设置和恢复函数:s_config和s_restore 379

14.4 配置和恢复 379

14.4.2 用于数据格式、波特率和检错的字符串数组 381

14.5 TERM2 382

14.6 小结 387

15.1.1 RS-232 UART输出 388

15.1 RS-232输出控制 388

第15章 RS-232输入控制 388

15.1.2 TERM3 397

15.2.1 VIN232_结构 400

15.2 RS-232输入控制 400

15.2.3 VIN232_结构的说明 401

15.2.2 RS-232输入常量 401

15.2.4 第2级RS-232输入函数(VSTAT232) 402

15.2.5 新的SIO结构成员 403

15.2.6 RS-232输入状态的第1级函数 404

15.2.7 第3级RS-232输入函数 405

15.2.8 SIO说明和初始化 406

15.2.9 TERM的若干改动 407

15.3 小结 408

16.1.1 虚拟流控制 409

16.1 流控制 409

第16章 流控制和SIO管理 409

16.2 商品管理 413

16.2.1 打开串行I/O设备 415

16.2.2 第3级open函数 418

16.2.3 第3级关闭函数 420

16.3 发送器和接收器函数 421

16.3.1 第3级中的其他函数 423

16.4 TERM的修订版 424

16.5 小结 425

第17章 格式输出 426

17.1 格式输出 427

17.1.1 soctl_结构的说明和初始化 429

17.2 输出控制函数 430

17.1.2 SIO结构的新结构成员 430

17.2.1 速度考虑 433

17.2.3 “原始”模式 435

17.2.2 s_fputc概述 435

17.2.4 字节的转换和删除 436

17.2.6 行结束转换 437

17.2.5 控制字符删除 437

17.2.7 被发送字节的处理 438

17.3.1 逐个字符的字符串输出 440

17.3 格式I/0的第3级函数 440

17.3.2 操作soctl_结构成员的函数 441

17.3.3 输出控制结构的临时存储 444

17.4 TERM4 446

17.4.2 改进建议 449

17.4.1 传送文件的其他设计方法 449

17.5 小结 450

18.1.1 sictl_结构 451

18.1 格式输入函数 451

第18章 格式输入 451

18.1.3 SIO结构的新结构成员 453

18.1.2 sictl_结构的说明和初始化 453

18.2 s_fgetc概述 454

18.2.1 原始处理 457

18.2.5 “回读”机制 458

18.2.4 行结束符的转换 458

18.2.2 控制逻辑 458

18.2.3 超时操作 458

18.2.6 有关速度的进一步讨论 459

18.3 格式输入的第3级函数 460

18.2.7 回送 460

18.3.1 输入控制结构的临时存储 461

18.4.1 s_fgets函数 462

18.4 带来方便的第3级输入函数 462

18.5 TERM5 463

18.5.1 数据转储函数dnload的设计 465

18.5.3 读取函数1:cbuff 468

18.5.2 数据获取函数的设计 468

18.5.4 读取函数2:locbuff 472

18.6 小结 474

19.2 中断 475

19.1 中断的基础概念 475

第19章 中断I/O导论 475

19.3 IBM PC机的中断结构 476

19.2.1 中断和异步I/O 476

19.3.1 8259外围中断控制器(PIC) 477

19.4.1 SIO的新结构成员和常量 478

19.4 系统中断函数 478

19.4.2 主中断处理程序 480

19.4.3 整体系统结构 482

19.4.4 __sys_introff函数 485

19.5.1 URAT中断管理程序 486

19.5 UART中断函数 486

19.5.2 SIO中断管理程序s_iadmin 487

19.5.3 UART中断的再向量化 488

19.5.4 摘要 489

19.6.1 对s_spen的改动 490

19.6 对第3级函数的改动 490

19.6.2 对s_close的改动 492

19.7 小结 493

第20章 中断子处理程序 494

20.1.2 串行化出错子处理程序 497

20.1.1 SIO中的串行化出错 497

20.1 串行化出错中断 497

20.1.3 串行化出错的高层接口 498

20.1.4 串行化出错的中断控制 499

20.2 RS-232状态中断 500

20.2.1 RS-232中断子处理程序 501

20.2.2 RS-232中断控制 502

20.3 检测I6550 503

20.3.1 s_config函数的修改 504

20.4.1 接收器中断缓冲区的设计 505

20.4 接收器中断 505

20.4.2 接收器中断子处理程序 506

20.4.3 接收器中断到SIO的接口 508

20.4.4 接收器中断控制 509

20.5.1 发送器中断缓冲区的设计 511

20.5 发送器中断 511

20.5.2 发送器中断子处理程序 512

20.5.3 发送器中断控制 515

20.6 发送器中断到SIO的接口 518

20.6.1 成块写接口 518

20.7 TERM6 522

第21章 灵巧型调制解调器程序设计 524

21.1 基本设计标准 524

21.1.1 用户接口 524

21.1.2 RS-232控制 525

21.1.3 兼容性 525

21.1.4 通用性 525

21.2 调制解调器的结构和常量 525

21.3 调制解调器命令 528

21.3.1 命令和响应的结构成员 528

21.3.2 发送调制解调器命令:m_cmd 529

21.4 获取调制解调器的应答 530

21.4.1 取应答函数:s_fgetln 530

21.4.2 取应答函数:m_getstr 532

21.5 对调制解调器函数 533

21.5.1 验证应答函数:m_ismessage 534

21.6 高层调制解调器函数 536

21.6.1 发送命令,读取应答的函数:m_cmd_str 536

21.6.2 发送命令,验证其有效性:m_cmd_OK 537

21.6.3 强制调制解调器转入命令状态:m_gocmd 538

21.7.1 重置函数所需的调制解调器结构成员 539

21.7.2 重置调制解调器的函数:m_reset 539

21.7 重置函数 539

21.7.3 识别调制解调器:m_whoru 543

21.7.4 用于识别所需的结构成员 543

21.8 对基线调制解调器进行配置 545

21.8.1 配置:m_config和m_unconfig 546

21.9 协议调制解调器 548

21.9.1 波特率转换 549

21.9.2 回归到无协议情况 549

21.9.3 CONNECT消息 550

21.9.4 配置 550

21.9.5 协议配置的结构成员 551

21.9.6 配置协议调制解调器:m_oarsernsg 552

21.9.7 分析调制解调器应答的函数:m_parsernsg 554

21.9.8 有关m_parsemsg的说明 556

21.10 拨号和回答函数 557

21.10.1 返回呼叫-进行应答:m_wait4dcd 557

21.10.2 自动拨号函数:m_dial 559

21.10.3 重拨上一次的号码:m_redial 561

21.10.4 回答电话:m_answer 561

21.10.5 终止连接的函数:m_hup 562

21.10.6 考察数据载波检测(DCD):m_warndcd 563

21.10.7 调制解调器函数的字符串数组 564

21.11 TERM6 565

21.11.1 TERM6的一个解释 568

21.12 小结 569

第22章 XMODEM文件传送 570

22.1 文件传送的设计考虑 570

22.2 异常处理 571

22.3 XMODEM传送 578

22.4 XMODEM接收 590

22.5 校验和出错检测函数 599

22.6 结论 601

23.1 多项式与CRC函数 603

23.1.1 用硬件和软件实现多项式除数 603

第23章 循环冗余校验CRC计算 603

23.1.2 模拟CRC硬件:crchware 606

23.1.3 用查表法计算CRC 608

23.2 为x_snd和x_rcv提供的CRCbiov 611

23.2.1 发送CRC的函数:x_sndcrc 611

23.2.1 接收CRC:x_reverc 612

23.3 CRC-16的计算 613

23.3.1 CRC函数的CRC测试程序:CRC.C 616

23.4 小结 617

第24章 Group3传真图象的编码和解码 618

24.1 创建一个测试位图 619

24.2 T.4 编码 621

24.2.1 RUN2T4:把行程编码转换为修订的哈夫曼编码 624

24.3 T.4解码 630

24.3.1 T4DECODE:对修订的哈夫曼编码进行解码 631

24.3.2 T4TORUN:修正的哈夫曼行程编码 635

24.3.3 行程编码转换为位图图象 636

1.期刊 641

2.书籍 641

参考书目 641

3.标准及参考文献 643

美国国家标准协会的文件 643

电子/远程通信工程协会的文件 644

CCITT 644

附录A 附带函数 646

BIGBUFF 646

HAKTC 647

PUTBIN 648

RFOPEN 648

STR_ATIO 649

WFOPEN 649

B.1 汇编代码 651

B.1.1 汇编程序体:CPGSC.ASM 651

附录B 汇编程序接口和内存模式 651

B.2 主ISR:COM1ISR.ASM 653

B.3 宏:CQGSC.MAC 655

附录C IBMPC.C 657

C.1 SIO初始化程序:COM1SIO.C 659

附录D 头文件 667

ASCII.H 667

BUOS.H 668

CRC.H 668

IBMPC.H 669

LEVELO.H 670

MISE.H 670

KEY.H 670

MODEM.H 671

SIOCTL.H 673

SIODEF.H 675

SIOLOCAL/H 683

T4.H 683

UART.H 684

U16X50.H 684

TERM.H 684

XMOD.H 687

附录E TERM7 690

附录F 传真编码和解码表 695

附录G 函数索引 706

返回顶部