当前位置:首页 >> 信息与通信 >>

NetBox网络模块用户手册 v22


Emtronix

NetBox 网络模块用户手册

NetBox 嵌入式网络模块用户手册

前言
感谢你购买并使用英创信息技术有限公司的产品 嵌入式网络模块 NetBox 它是一款以 Intel 的高性能 32-bit

嵌入式网络模块 NetBox 是英创公司的主流产品之一


嵌入式微处理器 386EX 为核心的 CPU 板级模块 模块自带插针 可方便地插在你的应用电 路板上 构成完整的系统 硬件方面 NetBox 配备了完整的网络通讯接口 键盘显示接口 包括 TCP/IP 协议

以及扩展总线

软件方面我们提供了与 NetBox 配套的丰富的支持软件

库 串口驱动 汉字显示 看门狗及低层配置程序等等 本手册将详细介绍 NetBox 的软硬 件的使用方法以及相关的技术指标 以帮助用户快速掌握 NetBox 的应用

本手册共分为三个部分 第一部分为快速入门 第二部分详细介绍 NetBox 的硬件配置 及相关的技术指标 第三部分为应用程序开发提供了循序渐进的指南 本手册还包括若干附 录 用户可访问英创公司网站或直接与英创公司联系 英创信息技术有限公司 高朋大道 5 号博士创业园 四川省 成都市 610041 电话 028-85140028 028-85137442 028-85136173 以获得 NetBox 的其他相关资料

传真 028-85141028 WEB EMAIL 相关参考资料 1 2 3 4 5 6 7 英创嵌入式网络模块 TCP/IP 运行库参考手册 英创嵌入式网络模块 Web 服务器使用参考手册 英创嵌入式网络模块 PPP TCP 运行库参考手册 点阵 LCD 模块的中西文显示 实时多任务应用方案用户手册 运用 NetBox 快速构造基本测控环境 用 DMA 方式实现高速异步串口通信 http://www.emtronixinc.com emtronix@mail.sc.cninfo.net

英创信息技术有限公司

2

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册


第一部分 快速入门
搭建开发环境 NetBox 的基本运行 编写第一个应用程序


5
5 6 7

第二部分 系统硬件及接口说明
系统简介 硬件配置
I/O 资源配置 中断资源配置 标准输入输出 异步串口 以太网接口 电子硬盘 运行模式的设置 看门狗电路

9
9 11
11 12 12 13 13 13 14 14

硬件接口定义
以太网接口 异步串口接口 电源输入插座 扩展总线 LCD 显示接口 矩阵键盘接口

14
15 15 16 16 18 20

第三部分 应用程序开发指南
C 语言入门
第一个应用程序 如何建立工程文件 文件读写

24
24
24 25 25

英创信息技术有限公司

3

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

硬件设置及中断程序的编写
硬件设置程序 Watchdog 的使用演示程序 外部中断的演示程序 内部定时器中断演示程序

26
27 29 29 30

TCP/IP 协议库应用程序
TCP 服务器演示程序 TCP 客户端演示程序 UDP 服务器演示程序 UDP 客户端演示程序 FTP 服务器演示程序 基于 PPP 拨号网络的应用

31
31 31 32 32 32 33

串口驱动程序
RS232 收发演示程序 RS485 收发演示程序

33
33 35

LCD 汉字显示程序

37

主要技术指标
附录 1 NetBox 机械外形尺寸示意图 附录 2 NetBox 扩展串口调试带线说明 附录 3 NetBox 支持的 LCD 模块及其它的显示接口方案 附录 4 BC31 集成开发环境的基本配置 附录 5 基于 NetBox 的系统软件开发流程 附录 6 TDRF 及 TD 调试工具使用说明

38
39 40 41 42 43 45

英创信息技术有限公司

4

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

第一部分 快速入门
搭建开发环境
客户开发 NetBox 嵌入式网络模块 需要一台 IBMPC 兼容的个人计算机 以下简称 PC PC 应有一个可使用的 RS232 串行通讯接口以及用于应用程序开发的编译 连接 调试软件 在 PC 上有大量的廉价优秀的应用开发软件 厂商推荐的开发软件为 Borland 公司的 BC31 软件包 BC31 是运行于 PC/DOS 环境下的优秀软件 器 X86 汇编 其中包括集成环境 IDE C/C++编译

联接器以及功能强大的调试器 Turbo Debugger 等

NetBox 为单电源供电

需直流 5V 5% 工作电流大约 330-450mA 可接受普通直流稳压电源或开关直流电源模块 供电 若用户把 COM1 口作为调试口 可采用标准的 RS232 串口带线 若选用 COM2 作为 调试端口 则需使用由我们提供的带电平转换的 RS232 串口带线

一个完整的开发环境含有如下一些必要的部件
? ? ? ? ?

英创嵌入式网络模块 NetBox 评估套件中的开发底板或用户开发的应用目标板 一台安装了 BC3.1 开发工具并能正常运行的 PC 主机 一台能给英创嵌入式网络模块提供 5V 直流供电的电源 将开发 PC 主机和嵌入式网络模块连接起来的串口调试带线

把这些必要的部件连接起来的方法请见下图

图1 在许多应用中 相结合

NetBox 开发环境示意图

需要 LCD 显示和若干功能键 NetBox 将这些需求与 PC 的标准输入输出 加快开发进度

使用户在程序开发过程中能充分利用其显示输出和键盘输入功能
5

英创信息技术有限公司

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

本页已使用福昕阅读器进行编辑。 福昕软件(C)2005-2007,版权所有, 仅供试用。

NetBox 支持大多数流行的 LCD 模块 用户可根据需要选择一款 们仍然建议用户选择一款 LCD 如 4X20 字符 LCD LCD 程序可照常运行 英创公司考虑到用户在开发上的方便

对不需要显示的应用



以方便程序调试 调试完成后 可取掉

为 NetBox 的评估套件 用户第一次购买

配备

了开发底板 底板上包括了标准的 RJ45 插座 RS232 插座等连接器件 这个底板不仅可以 方便开发者的线缆连接 还可以为开发者进行外围电路设计时提供一定的参考

用户只需花几分钟就可学会使用 TDRF 工具程序来操作 NetBox 的文件系统 附录 6 包 含 TDRF 对 NetBox 的基本操作介绍 本手册以下部分认为用户已掌握了 TDRF 的使用 当 NetBox 加电后 板上的红色发光二极管 D1 将亮 表示系统进入正常工作状态 如果用户在 显示端口接有相应的 LCD 模块 还可看到若干启动过程信息 这时用户可使用 TDRF 的 DIR 命令来显示 NetBox 的文件信息 若 TDRF 不能正常显示文件信息 可按 Ctrl Break 键强

制退出 TDRF 并检查 PC 与 NetBox 之间的串口连线的正确性

NetBox 的基本运行
NetBox 嵌入式网络模块内部由两个 磁盘驱动器 A 和 B 组成 驱动器 A 包含系 统 BIOS 操作系统以及 NetBox 必需的工具程序 驱动器 A 是一个只读盘 驱动器 B 则 是一个可读可写盘 用于保存用户程序文件和用户数据文件 驱动器 A 和驱动器 B 均由 高性能的 Flash 存储器构成 支持掉电保护 数据存取可靠 NetBox 中的

NetBox 有两种工作模式 运行模式和调试模式 当加电或复位 NetBox 板后 的上电初始化测试程序将被执行 AUTOEXEC.BAT 首先被执行 将调用驱动器 B 模式 之后即启动 DOS 与 PC 类似 驱动器 A

若 NetBox 置于运行模式 AUTOEXEC.BAT 批处理过程中 从而最终引导进入客户应用程序 若 NetBox 置于调试

中的 USER.BAT

则 NetBox 将进入调试监控状态 等待接受来自于 COM1 或 COM2 的操作指令 在 NetBox 的调试接口 COM1 或 COM2 通常是与一台 PC 的串口相连 这台

调试模式中

PC 则是系统程序开发环节中的主机 在 NetBox 的缺省配置中 386EX 的两个异步串口 COM1 和 COM2 均设为 115k 波特率 8bit 数据 1 个停止位 无奇偶校验通讯模式 客户可通过板上 JP2 跳线器的设置来选择 COM1 或 COM2 作为应用程序下载调试端口 NetBox 的出厂缺省配置为系统处于调试状态 COM1 作为调试端口 在 NetBox 中 BIOS 和操作系统把矩阵键盘输入接口和 LCD 显示接口作为 系统的标准逻辑输入输出设备 STDIN 和 STDOUT
英创信息技术有限公司 6 emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

本页已使用福昕阅读器进行编辑。 福昕软件(C)2005-2007,版权所有, 仅供试用。

尽管用户可采用各种不同的开发软件开发应用程序

但我们仍然建议用户采用 Borland

公司的 BC31 软件包来开发应用程序 这不仅仅是因为 BC31 是 DOS 上最优秀的 C/C++开 发工具且极易获得 TD 还由于可充分利用 BC 所提供的强大的源级调试工具 TurboDebugger

定能大大加快产品的开发进度 为此进行必要的调整是完全值得的 若用户是采用 当程序编译成 EXE 或 COM 文件后 可用 TDRF 工具软件把应用 并按正常工作模式再次启动 NetBox 即可运行用户应用程

其它软件进行程序开发

程序下载到 NetBox 的 B 盘中

序 若用户是采用 BC 进行程序开发 当程序编译成 EXE 或 COM 文件后 则可先用 TD 直 接下载并进行源级调试 程序调试完成后 再把 NetBox 置成正常工作模式全速运行 注意 驱动器 A 是写保护的 不允许把用户应用程序装载至 A 盘 在 NetBox 中 是通过调用

USER.BAT 批处理命令文件来间接调用用户执行程序的 这是因为用户执行程序可能会有 不同文件名 USER.BAT 内容很简单 盘外 只需有一行 即用户可执行文件名 注意用户除把可

执行文件下载到 B

还需把相应的 USER.BAT 下载到 B 盘

编写第一个应用程序
以下我们认为客户的开发用主机上已正确安装了 BC31 并指明了 BC 运行程序路径 作 为应用程序的第一步 我们将使用 BC31 集成开发环境 编写一个名为"HELLO.CPP"的源程 序并把它编译连接成可执行文件 HELLO.EXE

将你的开发调试主机系统置于 DOS 提示符并进入你的工作目录下 键入命令: BC 使系统进入 BC 集成开发环境, 按 F3 打开一个名为 HELLO.CPP 的文 件 这时, 系统进入 BC 编辑环境 无论用户使用 BC 的 C++特性 我们都建议用 户的文件名都以 CPP 作为扩展名 这有利于编译器对程序检查 避免不必要的 bug 加快调试进程 通过键盘输入程序如下 #include #include #include #include <stdio.h> <conio.h> <time.h> <dos.h>

int main( ) { struct time t; clrscr( );
英创信息技术有限公司

//清屏
7 emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

本页已使用福昕阅读器进行编辑。 福昕软件(C)2005-2007,版权所有, 仅供试用。

printf( "Hello!\n" ); for( ; ; ) { gettime(&t); printf(" %2d:%02d:%02d\r", t.ti_hour, t.ti_min, t.ti_sec); if( kbhit() ) { getch( ); break; } } return 0; } 按 F2 键将程序存盘 再按 F9 对程序进行编译连接 生成 EXE 可执行文件

按 ALT+X 退出 BC 集成开发环境 在 DOS 提示符下 键入 td –rp hello 程序将被自动下载至 Netbox 并弹出源码调 试窗口 按 F9 键 程序将运行 如果接有 LCD 屏 可在 LCD 屏上看到 Hello 刷新的当前时间串 如在 NetBox 上接有键盘 按任意键程序将退出 在任意时候 可在 PC 上按 及动态

CTRL+BREAK 强制中断程序运行 至此

按 ALT+X 将退出 TD 调试状态

你的第一个嵌入式程序已在 NetBox 上成功运行

英创信息技术有限公司

8

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

第二部分 系统硬件及接口说明

系统简介
嵌入式网络模块 NetBox 是基于 Intel 的高性能 32-bit 嵌入式微处理器 386EX 的单板 计算机 386EX 作为 Intel80X86 系列的一员 软件与其他 X86 微处理器保持完全一致 NetBox 通过与 PC/DOS 兼容性的实现 为应用软件的运行提供了与 PC 完全兼容的环境 同时也为 各种应用软件开发工具的使用提供了完善的目标环境 为适应现代应用的网络化需求

NetBox 板上设置了多种通讯接口 包括直接可连接的以太网 10BASE-T 接口 标准的 RS232C 接口 可扩展的 RS422/RS485 接口等等 NetBox 设有高性能的 Flash 文件系统用于存贮应 用程序及数据 应用程序访问 NetBox 的 Flash 存贮器象访问普通磁盘文件系统一样方便快 捷 客户在任何一台 PC 上开发的应用程序也可方便的载入 NetBox 的 Flash 存贮器 针对一 般智能化设备的需求 NetBox 提供对各种矩阵面板键盘 小型 LCD 字符 点阵型 显示

支 持 TCP/IP 等 互 联网通讯协议

以太网接口 10Base-T

RS232C (9 线)

系统存储器 2M-8M 系 统 总 线

嵌入式 CPU 386EX

实时时钟 CMOS RTC

扩展串口 RS232/485 等 BIOS 及操作 系统 文件系统 NetBox FFS

通用显示接口 LCD/LED

矩阵键盘

逻辑控制单元

模块扩展总线 MXI

NetBox 功能框图 器或 LED 数码显示器的直接连接支持 在软件上把它们分别作为系统的标准输入输出资源 并与 PC 上的键盘和显示器相对应 这样为客户设备的开发在硬件 软件方面都提供了有效
英创信息技术有限公司 9 emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

的帮助

另外 NetBox 还有完善灵活的精简总线接口

可与大多数的接口控制芯片

AD

DIO 双口 RAM 等器件直接相连

而不需要任何接口逻辑电路

基于 NetBox 的应用软件开发的简单性和快速性是 NetBox 的另一大特点 与大多数嵌 入式系统不同的是 NetBox 并不需要客户购买昂贵的开发调试系统 而是充分利用现有 PC 上大量的廉价优秀的软件作为开发工具 如 Borland C/C++ Turbo C/C++ 这样大大降低

了客户快速应用高性能 32 位处理器的门槛 在网络开发应用方面 与 NetBox 配套的 TCP/IP 协议栈软件包可帮助客户设备快速 上网 轻松实现系统单元互联 对复杂应用需求 我

们还为客户准备了基于实时多任务操作系统 RTOS 的应用方案

在 RTOS 环境下 NetBox 同

样可保证客户应用开发的简单性和快速性 作为与 PC 兼容的嵌入式系统 NetBox 可完全支 持当前市场上的绝大多数针对 x86 的软件开发工具 NetBox 是 目 前 国 内 设 计 最 为 紧 凑 的 单 板 计 算 机 模 块 之 一 108mmX81mm 4.25”X3.2” 其外形尺寸仅为

可方便地嵌入设备之中作为系统的内核模块 工业自动化 嵌入式 Web 串行协议转换 智能仪

NetBox 的以上特点为在数据通讯 器仪表等众多行业的客户提供了快速

极高性能价格比的设备解决方案

英创信息技术有限公司

10

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

本页已使用福昕阅读器进行编辑。 福昕软件(C)2005-2007,版权所有, 仅供试用。

硬件配置
NetBox 的硬件配置是建立在 PC 兼容的基础之上的 有关 PC 方面的资源配置 本节只 作简要描述 有关针对嵌入式应用的特殊功能本节将给出详细的使用说明

存贮器配置
NetBox 启动后 386EX 处于实模式状态 存贮器采用动态存贮器 DRAM 为支持

DOS 以及保护模式的程序应用 DRAM 的分配为 持常规的 DOS 程序应用 2

1 0x00000 0x9FFFF 640KB 用于支

0x100000 0x1FFFFF 1MB 和 0x2A0000 0x2FFFFF 384KB 系统 BIOS 和驱动器 A 包含在一片

共二段高端存贮器用于支持保护模式的应用程序 Flash 存贮器中 共 256KB 序和数据

映射区域为 0xC0000 0xFFFFF 仅占用 8KB 存贮器地址

NetBox 为存放用户应用程 映射区域为 0xA0000 B

开辟了专门的存贮器窗口

0xA1FFF 相应的物理位置为 32-pin 的 DIP 插座

系统缺省配置为 512KB 驱动器

用户也可选用标准的 DOC2000 系列电子硬盘直接替代 DIP32 插座上的 Flash 芯片以实现大 容量数据存储 NetBox 还为用户应用保留了外扩的存贮器地址空间 可使用的映射区域为 0xA8000 0xAFFFF 用户可编程定义具体的操作空间

I/O 资源配置
NetBox 中的 386EX 被置为 DOS 兼容模式 在这一模式下应用程序可按 PC 机传统 I/O 定时器 82C54 DMA 等 中

地址访问系统的基本外设资源 如异步通讯接口 UARTs or COMs 断控制器 ICU 等等 而对其它的外设资源的访问 如 Watchdog

则需要操作

386EX 的扩展 I/O 空间

NetBox 所提供的 C 语言低层驱动函数包括了对 386EX 的扩展 I/O

空间的 IO 进行操作 为用户程序方便地使用板上的资源提供了有效的工具 以下是 NetBox 包括 386EX 占用的常用基本 I/O 端口 地址 0x000…0x3FF 一览表

I/O 端口 0x20 0x21 0x40 0x43 0x60 0x64 0x70 0x71 0xA0 0xA1 0x2A0 0x2BF 0x2F8 0x2FF 0x360 0x367
英创信息技术有限公司

绑定外设 中断控制器主片 系统定时器 键盘接口 CMOS 实时时钟 中断控制器从片 以太网络控制器 COM2 LCD 显示接口
11

功能及应用描述 标准 PC 定义 标准 PC 定义 标准 PC 定义 标准 PC 定义 标准 PC 定义 NetBox 扩展定义 标准 PC 定义 NetBox 扩展定义
emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

本页已使用福昕阅读器进行编辑。 福昕软件(C)2005-2007,版权所有, 仅供试用。
标准 PC 定义 标准 PC 定义

0x378 0x37B 0x3F8 0x3FF

打印接口 COM1

中断资源配置
386EX 微处理器提供了与 PC 兼容的中断体系结构 NetBox 则完全遵循这一结构 针 对嵌入式应用的一般需求 ICU 芯片 PC 中断名称 对中断配置如下表所示 NetBox 中断资源配置表 中断号 绑定外设 功能及应用描述 0x08 TMR0 系统时钟 约每秒中断 18.2 次 0x09 键盘 矩阵面板键 按键产生中断 0x0a 级连从片 8259A 中断控制器输入 0x0b COM2 异步串口 8250A 的中断相连 0x0c COM1 异步串口 8250A 的中断相连 0x0d 网络 以太网络控制器 RTL8019AS 0x0e MXI 用户扩展硬件用中断 0x0f 0x70 0x71 0x72 0x73 0x74 0x75 0x76 0x77 MXI RTC MXI TMR1 TMR2 DMA 用户扩展硬件用中断 CMOS 实时时钟 RTC 用户扩展硬件用中断 接 TMR1 输出 可用于中断定时 接 TMR2 输出 可用于中断定时 用于 386EX 的 DMA 结束中断 系统保留 未用 看门狗定时器中断

主片 8259A

IRQ2 IRQ3 IRQ4 IRQ5 IRQ6 IRQ7 IRQ9 IRQ10 IRQ11 IRQ12 IRQ14

从片 8259A

WDT

标准输入输出

stdin 和 stdout
与之相对应地 NetBox

众所周知 PC 的标准输入输出逻辑设备是它的键盘和显示器

把矩阵面板键输入和字符或点阵 LCD 分别作为它的标准输入输出逻辑设备

所谓标准输入

输出逻辑设备是指在系统软件环境中 缺省的数据输入输出源 使用标准逻辑设备是为了便 于在高级语言中对它们进行操作 如 C 语言中的 getch 即键盘输入的键码 数据 而函数 printf … 将读取标准输入逻辑设备的数据 即显示器显示

则把数据输出到标准输出逻辑设备 最大可支持 6X8 个面板键

NetBox 的矩阵面板键接口为 CON7

另加一个复位键

NetBox 的 LCD 显示接口为 CON6 可直接连接大部分的字符或点阵 LCD 模块 对点阵 LCD 还提供汉字显示支持 用程序的开发 我们可为用户编写各种专用的 LCD 模块的驱动程序 使用户专注应 NetBox 是根

在后续章节提供 CON7 矩阵面板键接口所对应的矩阵键码表 INT 0x16 的

据此表构造 PC 兼容的键盘输入软件接口

另外还可利用 CON6 实现对数码 LED 显示的支持

当然需要设计相应的软件和硬件

英创信息技术有限公司

12

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

对一些特殊应用

用户可把 CON6 作为输入输出的接口进行开发

异步串行口

COM
COM1 和 COM2 都来自于 386EX 内部 它们与 PC

NetBox 所包括的 2 个异步串口 上的异步串口完全兼容 构 9 线制 另一方面 0x3F8

最高传输波特率为 115.2kbps COM1 被配置成完全的 RS232C 结

除了一般的串口功能外 还可直接与 Modem 相连 支持设备的拨号上网功能 COM1 也可作为 NetBox 的调试端口 方便地与主机相连 COM1 的基地址为

可使用 IRQ4 中断资源 输入输出电平为 CMOS/TTL 用户可

COM2 作为 NetBox 扩展串口 EXSIO 的一部分 根据具体需求

方便地扩展为完全 RS232 3 线制 RS232 RS422 RS485 等接口形式 另

外用户还可把 COM2 作为调试端口使用 只是需使用我们提供的带电平转换的 RS232 带线 或自行制作相应的调试用 RS232 带线 调试用 RS232 带线制作方法参见附录二的有关说明 COM2 的基地址为 0x2F8 可使用 IRQ3 中断资源 通过软件配置 NetBox 的扩展串口 EXSIO 可转变成 DMA 请求应答接口 关于 386EX 的 DMA 在高速数据收发方面的应用 请参见有 关的 NetBox 应用案例说明

以太网

Ethernet

接口
T 以太网络连接 以

NetBox 中包含一个 10Mbps 的以太网控制器 可直接与 10BASE 太网控制器采用无跳线配置 16bit 数据总线结构

软件层与 NE2000 以太网控制器兼容 板上 CON1 旁边的 LED 用于显示

网络控制器的基地址为 0x2A0 网络联接状态

使用 IRQ5 为中断请求

当该 LED 闪烁时表示 NetBox 与网络已有效连接 若 LED 不亮 则表示与

以太网连接有问题

电子硬盘
M-System 公司的 DiskOnChip 2000 是新一代的高性能 Flash 固化盘系列芯片 事实上

DiskOnChip MD2000 已成为嵌入式单板计算机领域的标准固化盘模块 它采用标准的 32pin 双列直插封装形式 核心的 TrueFFS 技术保证了芯片与 PC 硬盘在扇区和文件级上的兼容

芯片容量从 2Mbyte 至 288Mbyte 可选 NetBox 全面支持 DiskOnChip 2000 Flash 电子硬盘 方法是用 DOC2000 芯片直接替代在 U6 插座上的 Flash 芯片 注意芯片管脚 1 的位置 时 NetBox 则包括驱动器 A
英创信息技术有限公司



和驱动器 C
13

而不是缺省的驱动器 A

和驱动器 B

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

本页已使用福昕阅读器进行编辑。 福昕软件(C)2005-2007,版权所有, 仅供试用。

当系统引导后 NetBox 中时

DOC2000 芯片将使用约 30K 字节的系统内存空间 对驱动器 C 的操作与对驱动器 B

当用户程序运行于在

的操作是一样的

运行模式的设置
NetBox 带有二个跳线器 JP1 和 JP2 工作模式 分别定义如下 跳线位置 1 2 短接 2 3 短接 1 2 断开 1 2 短接 3 4 断开 3 4 短接 5 6 断开 5 6 短接 功能描述 IRQ1 作为矩阵键盘的中断请求 出厂缺省配置 IRQ1 作为 CON6 扩展接口的中断请求 调试工作模式 出厂缺省配置 正常工作模式 当 1 2 断开时 COM2 作为调试端口 当 1 2 断开时 COM1 作为调试端口 出厂缺省配置 未定义 未定义 JP1 配置 IRQ1 中断资源 JP2 则用于定义系统的

跳线器 JP1

JP2

注意 1 由于在绝大多数应用场合 IRQ1 均配置为矩阵键盘的中断请求 因此在 2003 年下

半年发货的 NetBox 板上已把 JP1 的 1 2 JP2 的 1 3 脚实际都是接地的

2 直接短接 而没有焊装 JP1 跳线器 为了便于客

而 2 4 脚是带有上拉电阻的输入脚

户在整机装好后的测试 JP2 的 2 4 脚 分别记为 JP2.2 和 JP2.4 被引至 CON1 的 8 7 脚 JP2.2 还被引至 CON2 的 10 脚 当用户需要使用 CON1 上的信号来决定系 统的运行模式时 需把 JP2 均断开

看门狗

Watchdog

电路

NetBox 采用 Watchdog 的目的是防止系统死锁 直接应用了 386EX 处理器提供的功能 Watchdog 被启动后 Watchdog 计数器将按处理器时钟作减计数 当计数值达到 0 时 386EX 将产生一个 16 个处理器时钟周期的脉冲 这一脉冲将使系统复位 处理器时钟周期为 NetBox 板上晶振时钟 注意 Watchdog 一旦被打开 运行软件需周期性的装载 Watchdog 的计数器

以表明程序运行正常

当系统上电时 Watchdog 是被禁止的 用户应用程序可调用 NetBox 和装载 Reload

的驱动程序中的相关接口函数来方便的操作 Watchdog 的打开 Enable

若处理器时钟为 24MHz Watchdog 允许设定的最大时间间隔约为 6 分钟 若处理器时钟为 48MHz 一次 则 Watchdog 允许设定的最大时间间隔约为 3 分钟 且不能修改
14

Watchdog 的时间间隔只能设定

英创信息技术有限公司

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

硬件接口定义
NetBox 共有 7 个接插头 CON1 至 CON7 可与外部系统相连 各插座管脚的编号总是从 1 号开始 识别 1 号管脚的方法是 1 号管脚采用正方形焊盘 而其它管脚均采用圆形焊盘 用户可从 NetBox 的元件面或焊接面看到这一特点 NetBox 接口的编号顺序有两种排列 一 种是通常的奇数行偶数行交错排列 如 CON5 应的排列 CON6 CON7 另一种是与 DB9 编号相对

主要针对异步串口 CON2 和 CON3 NetBox 的硬件接口的具体物理位置可参见

附录 1 的 NetBox 机械外形尺寸示意图

以太网接口
CON1 为以太网 10BASE T 接口 用户可直接让 CON1 与其它系统单元相连 连接方

法可参见下表 在 NetBox 评估套件中的底板的 RJ45 与 NetBox 的连接是按照直接连接的方 法设置的 CON1 1 2 3 4 5 6 7 8 直接连接 至集线器 HUB RJ45 插头管脚 Pin # 1 2 3 6 CON1 信号名称 TPTX+ TPTXTPRX+ TPRXLNK LED+ LNK LEDJP2.4 JP2.2 交错连接 至 PC RJ45 插头管脚 Pin # 3 6 1 2

RJ45 插头管脚编号示意图如下

CON1 中的 1—6 脚是与 10M 以太网接口相关的信号管脚 其中 TPTX+和 TPTX-是经隔离 的串行差分输出 TPRX+和 TPRX-则为串行差分输入 LNK LED+和 LNK LED-可直接连接 至发光二极管的正负极 在正常通电工作状态下 所接的发光二极管亮表明以太网的连线是 正确的

CON1 的 7

8 脚为决定系统运行模式的输入脚 具体配置如下
15 emtronix@mail.sc.cninfo.net

英创信息技术有限公司

NetBox 嵌入式网络模块用户手册

信号名称 CON1 的 8 脚 JP2.2 CON1 的 8 脚 JP2.2 CON1 的 7 脚 JP2.4 CON1 的 7 脚 JP2.4 注意

输入状态 接地 悬空 接地 悬空

运行模式 正常运行模式 调试运行模式 JP2.2=1 JP2.2=1 COM1 作为调试端口 COM2 作为调试端口

在使用 CON1 的相关管脚设置系统运行模式时 NetBox 板上的 JP2 跳线器应断开

异步串口接口
CON2 为 COM1 接口 与大多数 RS232 接口一样 采用双排 10 芯插座 下表定义了

CON2 的管脚序号及相应的信号名称 注意 CON2 管脚序号的排列不是通常的交叉排列的 表中表述的顺序就是实际的物理排列顺序 信号名称 方向 PIN 1 2 3 4 5 其中 PIN1-PIN5 靠板子的外侧 CON2 PIN 6 7 8 9 10 9V 信号名称 方向

DCD 输入 RXD 输入 TXD 输出 DTR 输出 GND

DSR 输入 RTS 输出 CTS 输入 RI 输入 JP2.2

CON2 中的信号电平均符合标准 RS232C 的规范 CON2 的 10 脚为决定系统运行模式的输入脚 信号名称 CON2 的 10 脚 CON2 的 10 脚 注意 JP2.2 JP2.2 输入状态 接地 悬空

具体配置如下 运行模式 正常运行模式 调试运行模式 NetBox 板上 JP2 对应的跳线器应断开

在使用 CON2 的 10 脚设置系统运行模式时

CON3 是 NetBox 的扩展串行接口 EXSIO 工作电平 CMOS/TTL 芯插座 注意 CON3 管脚序号的排列不是通常的交叉排列的 其中 PIN1-PIN5 靠板子的外侧

CON3 采用双排 10

表中表述的顺序就是实际的

物理排列顺序

RS232 信号名称 / DMA 名称 DCD1# RXD #/ DRQ1 TXD #/ DACK1# DTR1# GND

PIN 1 2 3 4 5

CON3 PIN 6 7 8 9 10
16

RS232 信号名称 / DMA 名称 DSR1# RTS1# CTS1# / EOP# RI1# +5V 电源输出
emtronix@mail.sc.cninfo.net

英创信息技术有限公司

NetBox 嵌入式网络模块用户手册

本页已使用福昕阅读器进行编辑。 福昕软件(C)2005-2007,版权所有, 仅供试用。

当 CON3 作为串口 COM2 时 所有的信号均为低电平有效

通常在信号名称后带



表示低电平有效的信号 通过软件编程设置 EXSIO 可作为 RS232 COM2 或 DMA 控制 接口 CON3 的出厂缺省配置为 COM2 关于 386EX 的 DMA 在高速数据收发方面的应用

请参见有关的 NetBox 应用案例说明

电源输入插座
CON4 为 NetBox 的电源输入插座 在实际应用中 CON5 常常被视为一体 CON4 与 NetBox 的扩展总线接口

CON4 PIN 1 2 3

信号名称 5V 复位输入 RESET GND

RESET#为外部对 NetBox 的复位输入 低电平有效 注意不能把 RESET#与 NetBox 在 其它接口中的复位输出连接到一起 将造成系统不能启动

扩展总线 MXI
CON5 为 NetBox 的外部模块扩展接口 MXI CMOS/TTL 电平 用户通常可使用该接口 来扩展各种与应用相关的接口电路 典型的扩展包括串口控制芯片 16C55x CAN 总线控制 芯片 SJA1000 并行 IO 控制芯片 8255 双口 RAM 各种 AD 等等 带 号的信号表

示低电平有效 CON5 的管脚序号按常规的奇偶交叉排列 表中表述的顺序就是实际的物理 排列顺序 其中奇数排靠板子的外侧 在最初的设计中 CON5 只有 26 条信号线 之后为

了加强 NetBox 的扩展能力 在 CON5 的左边增加了 2 条中断输入 P1 P2 和 2 条地址线 P3 P4 CON5 PIN PIN P3 P1 1 3 5
17

信号名称

简要描述

信号名称 简要描述 XA11 地址线输出* XIRQ9 中断请求输入* XCS1 可编程片选线输出 XD6 双向数据线 XD4 双向数据线
emtronix@mail.sc.cninfo.net

XA10 地址线输出* XIRQ6 中断请求输入* 复位输出 RSTDRV XD7 双向数据线 XD5 双向数据线
英创信息技术有限公司

P4 P2 2 4 6

NetBox 嵌入式网络模块用户手册

本页已使用福昕阅读器进行编辑。 福昕软件(C)2005-2007,版权所有, 仅供试用。

XD3 双向数据线 XD1 双向数据线 数据读控制信号输出 XRD XA0 地址线输出 XA2 地址线输出 XA4 地址线输出 XA6 地址线输出 XA8 地址线输出 可编程片选线输出 XCS0 XCLK 可编程时钟信号输出 *

7 9 11 13 15 17 19 21 23 25

8 10 12 14 16 18 20 22 24 26

XD2 双向数据线 XD0 双向数据线 XWE 数据写控制信号输出 XA1 地址线输出 XA3 地址线输出 XA5 地址线输出 XA7 地址线输出 XA9 地址线输出 XIRQ7 中断请求输入 GND 公共地

P1-P4 是在 2001 年 12 月后加入的扩展信号线

事实上

由于 NetBox 的扩展总线出自 Intel386EX 因此它的时序关系与 PC 上的 ISA

总线保持了高度的一致 完全可以把 NetBox 的扩展总线看成是 ISA 总线的子集 用户可通 过类比的方式来迅速掌握 NetBox 扩展总线的使用方法 NetBox 的 8 位双向数据总线 XD[0..7] 和 12 位地址总线 XA[0..11]分别与 ISA 总线中的数据总线和地址总线相对应 NetBox 的读 写控制信号 XRD#和 XWE# 在 IO 读写时对应 ISA 总线中的 IOR#和 IOW# 在存储器读写 时对应 MEMR#和 MEMW# NetBox 扩展总线的中断输入信号共三条 XIRQ6 XIRQ7 和 中断软件的 是

XIRQ9 分别与 ISA 总线中同名中断输入信号相对应 且均为上升沿产生中断 编程方法也是一样的

NetBox 扩展总线中最有特色的控制信号 也是 ISA 总线没有的

它的可编程片选控制信号 XCS0#和 XCS1# 用户可利用所提供的 NetBox 低层驱动程序 见 本手册的第三部分 把 XCS0#和 XCS1#设定为 IO 访问或存储器访问 同时可选定译码区域 及访问周期长度 对每条片选控制信号 能访问的最大 IO 空间为 64 个 8 位端口 访问的最 大存储器空间为 4K 字节 通常用户使用的 IO 空间在 0x200—0x3ff 用户使用的存储器空 XCLK 为可编程时钟输出 实际为内部 82C54 的 TMR1 输

间则应在 0xA8000—0xAFFFF 出 效

最高输出频率为 4MHz RSTDRV 为 NetBox 对扩展接口电路的复位输出 低电平有 当外部对 NetBox 复位或 Watchdog 有效时 RSTDRV 变为有效

LCD 显示接口
CON6 为 NetBox 的显示接口 通常用于字符 LCD 模块或点阵 LCD 模块 CON6 实质 上是一个双向数据接口 所以它还可以与象 Intel8279 这样的键盘显示接口芯片直接相连 用于支持数字 LED 显示以及各种键盘输入 CON6 还可简单的扩展成 PC 兼容的并行打印接 口 我们可提供若干相关技术设计文档供用户参考 带 号的信号表示低电平有效

英创信息技术有限公司

18

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

CON6 的管脚序号按常规的奇偶交叉排列 表中表述的顺序就是实际的物理排列顺序 其中 奇数排靠板子的外侧

信号名称

简要描述

CON6 PIN PIN 1 3 5 7 9 11 13 15 17 19 2 4 6 8 10 12 14 16 18 20

信号名称 简要描述 5V 电源 XA0 地址线输出 XRD 数据读控制信号输出 XD1 双向数据线 XD3 双向数据线 XD5 双向数据线 XD7 双向数据线 可编程控制线 RSVD XA1 地址线输出 IRQ 中断请求线输入 上升沿

GND 公共地 Vadj LCD 对比度调节 数据写控制信号输出 XWE XD0 双向数据线 XD2 双向数据线 XD4 双向数据线 XD6 双向数据线 可编程控制线 XA1# 片选控制信号输出 XCE 复位线输出 RSTDRV

以下以表格形式给出三种典型的 LCD 模块与 NetBox 的连接方法 表1 NetBox LCD 接口 CON6# 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 XD7 信号名称 GND 地 VCC +5V 4X20 字符 LCD 模块 输入管脚# 1 2 3 4 5 6 7 8 9 10 11 12 13 14 信号名称 GND Vcc Vo RS R/W E DB0 DB1 DB2 DB3 DB4 DB5 DB6 DB7 未用 未用 未用
19 emtronix@mail.sc.cninfo.net

备注

型号 时序

清华蓬远 20464 Motorola 模式

Vadj LCD_A0 LCD_WE# LCD_RD# XD0 LSB

XD1 XD2 XD3 XD4 XD5 XD6 MSB

XA1# RSVD XCE#

英创信息技术有限公司

NetBox 嵌入式网络模块用户手册

18 19 20

XA1 RESET# IRQ

未用 未用 未用

表2 NetBox LCD 接口 CON6# 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 XD7 信号名称 GND 地 VCC +5V 128X64 点阵 LCD 模块 输入管脚# 3 4 信号名称 GND Vcc 型号 时序 清华蓬远 QH2001 Motorola 模式 备注

Vadj LCD_A0 LCD_WE# LCD_RD# XD0 LSB 6 7 8 9 10 11 12 13 14 15 16 2 D/I R/W E DB0 DB1 DB2 DB3 DB4 DB5 DB6 DB7 CSB#

控制器 HD61202

XD1 XD2 XD3 XD4 XD5 XD6 MSB

XA1# RSVD XCE# XA1 RESET# IRQ

未用 未用 1 CSA# 未用 未用

表3 NetBox LCD 接口 CON6# 1 2 3 信号名称 GND 地 VCC +5V 320X240 字符点阵 LCD 模块 输入管脚# 1 3 2 信号名称 GND Vcc 型号 清华蓬远 MGLS320240 时序 Intel 模式 备注

Vadj
20

英创信息技术有限公司

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

LCD_A0 LCD_WE# LCD_RD# XD0 LSB

9 6 7 12 13 14 15 16 17 18 19 4 5 8

A0 WR# RD# DB0 DB1 DB2 DB3 DB4 DB5 DB6 DB7 ADJ CTRL CE#

控制器

SED1335 C

控制接口板类型 可软件调节亮度

XD1 XD2 XD3 XD4 XD5 XD6 XD7 MSB

XA1# RSVD XCE# XA1 RESET# IRQ

调节输出 控制输出

0x362.D1 0x362.D0

* *

可用作外部亮度调节的接口译码 11 RST#

*注意 不是每一种 320X240 的 LCD 屏都支持亮度软件调节 有关 NetBox 对亮度软件调节 的支持细节 请向英创公司技术支持部门咨询

矩阵键盘接口
CON7 用于直接连接无源的矩阵面板键 用户可根据情况选择 6X8 4X5 或 3X3 的矩阵 键盘 CON7 为双列 16 针奇偶交叉排列 表中表述的顺序就是实际的物理排列顺序 其中

奇数排靠板子的外侧 除非用户指定 CON7 的出厂缺省配置为 6X8 键盘 其插座管脚定义 如下 信号名称 XK7 XK6 XK5 XK4 XK3 XK2 XK1 XK0 简要描述 CON7 PIN PIN 1 3 5 7 9 11 13 15 2 4 6 8 10 12 14 16 信号名称 简要描述 XS5 键盘扫描输出 XS4 键盘扫描输出 XS3 键盘扫描输出 XS2 键盘扫描输出 XS1 键盘扫描输出 XS0 键盘扫描输出 RESET 复位输入 GND

键码信号输入 键码信号输入 键码信号输入 键码信号输入 键码信号输入 键码信号输入 键码信号输入 键码信号输入

英创信息技术有限公司

21

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

本页已使用福昕阅读器进行编辑。 福昕软件(C)2005-2007,版权所有, 仅供试用。

注意 由于 NetBox 的键盘控制单元采用低功耗 CPLD 芯片 ispM4A5-128 来实现 对输入信 号的上拉较弱 当接长线类型的负载时容易产生反射干扰 因此在具体应用转接板上 应对 输入信号 XK[0..7] 加 5.1K 的上拉电阻 以保证按键的可靠性

6X8 矩阵键盘中有 8 条键码输入线 6 条键码扫描线 CON7 的另外二条线是复位线 平 时开路 短路时复位有效 NetBox 键码表中各键的名称与 PC 键盘中大部分键相对应 其功 能也是一致的

XK0 XS0 XS1 XS2 XS3 XS4 XS5 Caps Lock Tab I N S X

XK1 A E J O T Y

XK2 B F K P U Z

XK3 C G L Q V Spacebar

XK4 D H M R W :/;

XK5 _/1 4 7 0 “/’

XK6 +/= 2 5 8 </, //?

XK7 Back Space 3 6 9 >/. Enter

客户在具体应用中可为各使用键定义各种名称

但在程序中读到的键码则保持不变

在 CON7 接口中

除了复位输入和公共地外

其它的 14 条信号线均来自 NetBox 板上 对 CPLD 的

的可编程门阵列 CPLD 原则上讲

NetBox 支持把这些信号线用作其他目的

修改一般是面向 OEM 的批量应用 通过充分利用 CON7 上的信号线 实现各种专用应用功 能 达到降低整机成本的目的 种典型应用扩展 一种典型应用配置为 在 CON7 中选用 3X3 的键盘 7 为数据输出 XDO[0..6]以及一位数 据输入 其插座管脚定义如下 目前 除了标准的 6X8 矩阵键盘配置外 NetBox 还提供两

信号名称

简要描述

XK7 键码信号输入 XK6 键码信号输入 XK5 键码信号输入 XDO0 LED 控制输出 XDO1 LED 控制输出 XDO2 LED 控制输出 XDO3 LED 控制输出
英创信息技术有限公司

CON7 PIN PIN 1 2 3 4 5 6 7 8 9 10 11 12 13 14
22

信号名称 简要描述 XDO5 XDO6 XS3 XS2 XS1 XDI LED 控制输出 LED 控制输出 键盘扫描输出 键盘扫描输出 键盘扫描输出 开关控制输入 VCC
emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

本页已使用福昕阅读器进行编辑。 福昕软件(C)2005-2007,版权所有, 仅供试用。
GND

XDO4

LED 控制输出

15

16

CON7 支持 3X3 共 9 个键时

对应 PC 键码 1 XK4

9 XK5 2 5 8

如下表所示 XK7 3 6 9

XS1 XS2 XS3

1 4 7

对 IO 位的操作是通过对 IO 口 0x6C 的读写来实现的 其中数据输入 XDI 对应 0x6C 口读操 作的数据 D0 位 数据输出 XDO[0..6]对应 0x6C 口写操作的数据 D[0..6]位 上电时 XDO[0..6] 全为 L XDI 端内部加有弱上拉电阻 若未接输入信号 缺省值为 H 客户应对键盘

输入 XK[5..7]及 XDI 加 5.1K 的上拉电阻 另一种典型应用配置为 和 XCS1#进行细分译码 准打印口及二个异步串口 在 CON7 中选用 4X5 的键盘 其他的 5 条信号线则对 XCS0# 本应用中是扩展一个标

以达到直接与多个扩展外设相连的目的 其插座管脚定义如下

信号名称

简要描述

CON7 PIN PIN 1 3 5 7 9 11 13 15 2 4 6 8 10 12 14 16

信号名称 简要描述 XS5 键盘扫描输出 XS4 键盘扫描输出 XS3 键盘扫描输出 XS2 键盘扫描输出 CSA# 扩展串口 3 片选 CSB# 扩展串口 4 片选 复位输入 RESET GND

XK7 键码信号输入 XK6 键码信号输入 XK5 键码信号输入 XK4 键码信号输入 XK3 键码信号输入 DATA# 打印口数据片选 CTRL# 打印口控制片选 STAT# 打印口状态片选

支持的 4X5 键码为 XK3 XS2 XS3 XS4 XS5 L Q V Spacebar XK4 M R W :/; XK5 4 7 0 “/’ XK6 5 8 </, //? XK7 6 9 >/. Enter 状态口

在这一应用案例中 打印口的基地址设为 0x378 其中数据口为 0x378 只写

英创信息技术有限公司

23

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

本页已使用福昕阅读器进行编辑。 福昕软件(C)2005-2007,版权所有, 仅供试用。

为 0x379 只读

控制口为 0x37A 只写

扩展串口 3 的片选基地址为 0x3e8 扩展串口 4

的片选基地址为 0x2e8

用户可考虑用 XIRQ6 和 XIRQ7 来处理扩展串口的中断

事实上 利用 NetBox 的 CPLD 还可方便地实现更为复杂的扩展接口 如多串口的扩展 等等 有关的技术细节用户可向英创公司的技术支持部门咨询

英创信息技术有限公司

24

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

第三部分 应用程序开发指南

C 语言入门
本节主要是为那些初次接触 C 语言或对 BC 开发环境不太熟悉的用户提供的 如果你对 此已有一定的了解 可跳过本节

第一个应用程序
作为应用程序的第一步 我们将使用 BC31 集成开发环境 编写一个名为"HELLO.CPP" 的源程序并把它编译连接成可执行文件 HELLO.EXE

将你的开发调试主机系统置于 DOS 提示符并进入你的工作目录下 键入命令 BC 文件 使系统进入 BC 集成开发环境, 按 F3 打开一个名为 HELLO.CPP 的

这时, 系统进入 BC 编辑环境 无论用户是否使用 BC 的 C++特性 我们建 这有利于程序的调试

议用户的文件名都以 CPP 作为扩展名 通过键盘输入程序如下 #include #include #include #include <stdio.h> <conio.h> <time.h> <dos.h>

int main( ) { struct time t; clrscr( ); //清屏 printf( "Hello!\n" ); for( ; ; ) { gettime(&t); printf(" %2d:%02d:%02d\r", t.ti_hour, t.ti_min, t.ti_sec); if( kbhit() ) break; } return 0; } 按 F2 键将程序存盘 再按 F9 对程序进行编译连接 生成 EXE 可执行文件

按 ALT+X 退出 BC 集成开发环境
英创信息技术有限公司 25 emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

在 DOS 提示符下 键入 td –rp hello 程序将被自动下载至 Netbox 下 并弹出源码 调试窗口 按 F9 键 程序将运行 如果接有 LCD 屏 可在 LCD 屏上看到 Hello 刷新的当前时间串 如在 NetBox 上接有键盘 按任意键程序将退出 在任意时候 可在 PC 上按 及动态

CTRL+BREAK 强制中断程序运行

按 ALT+X 将退出 TD 调试状态

建立工程文件
建立工程文件可把多个程序模块方便地组合在一起进行编译连接 是设计专业程序的基 本手段 这主要是因为通过建立工程文件可合理安排程序结构 快速调试程序错误 所以我 们建议用户采用工程文件这一工具来设计自己的应用程序 下面我们将建立一个工程文件 MYPRJ.PRJ 具有.PRJ 的扩展名

将你的开发调试主机系统置于 DOS 提示符下 键入命令 BC 使系统进入 BC 集成开发环境, 按 ALT+P 打开一个名为 MYPRJ.PRJ 的工程文件 这时按 Insert 键 向工程文件中添加 TIMESTR.CPP 及 HELO.CPP

模块 TIMESTR.CPP 定义了一个获取时间串的函数 模块 HELO.CPP 包含了主函数 main( ) 通过#include “timestr.h” 可以调用

TIMESTR.CPP 模块中提供的获取时间串的函数 按 F2 键将程序存盘 再按 F9 对程序进行编译 自动对工程文件中两个源文件分 别进行编译 利用 TD 然后连接 生成 MYPRJ.EXE 可执行文件

可以将 MYPRJ.EXE 下载到 NetBox 下进行调试运行

文件读写
利用操作系统提供的文件系统设计应用程序是嵌入式系统有别于一般单片机系统的一 个显著特点 任何一个文件在使用之前和使用之后 必须要进行打开和关闭 这是因为操作 系统对于同时打开的文件数目是有限制的 因此在使用文件前应打开文件 才可对其中的信 息进行存取 用完之后需要关闭, 否则将会出现一些意想不到的错误 BC 提供了打开和关 fopen()函数和 fclose()函数 在文件打开后 可根据需要调用相应的文件读

闭文件的函数 写函数

我们提供的文件操作的例子程序

FILEIO.PRJ 包含了 TIMESTR.CPP 和 FILEIO.CPP

英创信息技术有限公司

26

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

本页已使用福昕阅读器进行编辑。 福昕软件(C)2005-2007,版权所有, 仅供试用。

模块 TIMESTR.CPP 定义了一个获取时间串的函数 模块 FILEIO.CPP 包含了主函数 main( ) 实现了显示当前时间 并将当前时间转换成文本格式存盘 在 FILEIO.CPP 定义了一个存盘 函数 代码主体如下 int SaveFile( char* FileName, char *str ) { FILE *fp; fp = fopen(FileName, "wt" ); if( fp==NULL ) { printf( "Cannot Open this File!\n" ); return -1; } fprintf( fp,"%s", str ); fclose( fp ); return 0; } // 打开文件 格式为可写文本文件

// 向文件中写入串 // 关闭文件

硬件设置及中断程序的编写
NetBox 中的 386EX 被设置为 DOS 兼容模式 在这一模式下 用户应用程序可按 PC 机 传统 I/O 地址访问系统的基本外设资源 如定时器 82C54 中断控制器 ICU 等等 对

标准的 PC 硬件资源的访问 可采用直接调用 bios 中断的方法 可调用的 bios 中断如下表所 示 中断服务程序 INT 0x08 INT 0x09 INT 0x10 INT 0x11 INT 0x12 INT 0x13 INT 0x14 INT 0x15 INT 0x16 INT 0x17 INT 0x19 INT 0x1C INT 0x1A INT 0x70 中断服务功能简述 系统定时器 键盘扫描码输入 显示 I/O 操作 获取系统设备配置信息 获取系统存贮器配置信息 磁盘 I/O 操作 异步串口 I/O 操作 NetBox 其它资源操作 键盘 I/O 操作 打印 I/O 操作 磁盘自举程序 定时器报时 日时钟及实时时钟管理 实时时钟 硬件中断 硬件中断 软中断 软中断 软中断 软中断 软中断 软中断 软中断 软中断 DOS 引导 软中断 软中断 硬件中断 应用 用户程序不能调用 用户程序不能调用 用户程序可调用 用户程序可调用 用户程序可调用 用户程序可调用 用户程序可调用 用户程序可调用 用户程序可调用 用户程序可调用 用户程序不能调用 用户程序可调用 用户程序可调用 用户程序不能调用

而对其它的外设资源访问 需要操作 386EX 的扩展 I/O 空间 由 NetBox 的低层驱动程

英创信息技术有限公司

27

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

本页已使用福昕阅读器进行编辑。 福昕软件(C)2005-2007,版权所有, 仅供试用。

序完成 用户只需调用相应的接口函数即可 针对 NetBox 硬件资源的调用 我们提供了四 个例子程序供用户参考

硬件设置程序
该程序的主要功能是演示如何调用 NetBox 提供的低层接口函数 定义为 HSETUP.PRJ

HSETUP.PRJ 包含了两个代码模块 NETBOX.CPP 以及 HSETUP.CPP NETBOX.CPP 是对 NetBox 提 供的低层操作 C/C++接口函数的实现 HSETUP.CPP 是对这些函数功能的测试

NetBox 提供的低层操作接口函数被定义在 NETBOX.H 中 各个函数的定义如下 1 int SetXCLK( unsigned Mode, unsigned Divider ) 该函数的主要功能是设置 386EX 内部 82C54 定时器 1 的输出 输入参数 Mode=0 方波输出 Mode=1 分频值 脉冲输出

Divider=2~65535 NetBox 的输入时钟为 8MHz

例如设置输出 100KHz 方波 SetXCLK(0,80);

2

int SetCSAsMem(unsigned CSIndex, void far* StartAddress, unsigned BufferSize, unsigned WaitStates ); 该函数的功能为设置 CS0#或 CS1#为存储器片选线 输入参数 CSIndex=0 选择 CS#0 CSIndex=1 选择 CS#1

StartAddress = 0xA800:0 - 0xA800:0x7FFF BufferSize = 2, 4 K 字节(1K=1024 字节) WaitStates = 0 - 31. 设置插入的总线节拍 用户通过此参数的调整 使 NetBox

的扩展总线时序与外部设备的读写速度相匹配 对 24MHz 的系统时钟 一个总线节 拍为 83ns 48MHz 系统时钟 总线节拍则为 42ns 每个总线访问过程包括 2 个固

定总线节拍和若干插入总线节拍组成 举例 设置 CS0#为访问 4KB 双口 RAM 的片选 加入 2 个总线节拍 双口 RAM 基地址=0xa800:0

总的访问时间为 4 个总线节拍

SetCSAsMem( 0, (void far*)(0xa8000000l), 4, 2 );

3

int SetCSAsIO( unsigned CSIndex, unsigned BasePort, unsigned IOSize, unsigned WaitStates );

英创信息技术有限公司

28

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

本页已使用福昕阅读器进行编辑。 福昕软件(C)2005-2007,版权所有, 仅供试用。

函数功能描述 输入参数

设置 CS0#或 CS1#为 IO 器件片选线

CSIndex = 0: 选择 CS0# BasePort = 0x200-0x3FF 缺省设置

= 1: 选择 CS1# 不能选择 NetBox 已使用的端口 CS1#: 0x3e8 - 0x3ef

CS0#: 0x2e0 - 0x2ef

IOSize = 2, 4, 8, 16, 32, 64 字节 WaitStates = 0 - 31. 定义同 2

举例 设置 CS0#为访问 16C554 的片选 基地址=0x200, 16C554 占用 32 个 IO 地址 加入 4 个等待周期 形成 6 个总线节拍的 IO 访问周期

SetCSAsIO( 0, 0x200, 32, 4 );

4

int EnableWDT( float seconds ); 函数功能描述 输入参数 举例 使能 watchdog 并设置定时间隔 单位为秒

seconds = watchdog 的定时时间间隔 设置定时间隔为 分钟

使能 watchdog

EnableWDT( 60 ); 注意 一旦 watchdog 使能 就不能再关闭 定时间隔也不能修改

5

int ReloadWDT(); 函数功能描述 注意 重载 watchdog

最好在程序的主流程中重载 watchdog

6

unsigned long GetWDT(); 函数功能描述 返回 watchdog 定时器当前值 当计数值等于 时

注意 watchdog 定时器是一个处理器时钟驱动的减计数器 watchdog 将重启动系统

HSETUP.CPP 为硬件设置的演示程序 包含了主函数 main( ) 提供了 NetBox 低层操作的 C/C++ 接口函数的调用方法 首先调用了 SetXCLK( 0, 8 )将输出频率为 1MHz 的方波信号 该函数执行后
英创信息技术有限公司 29

可用示

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

本页已使用福昕阅读器进行编辑。 福昕软件(C)2005-2007,版权所有, 仅供试用。

波器接在 MXI CON5 的 25 脚

监测波形状态

然后调用 SetCSAsMem( 1, (void far*)BufferAddr, 4, 2 ) 设置 CS1#为访问 4KB 双口 RAM 的片选 双口 RAM 基地址=0xa800:0 加入 2 个总线节拍

最后调用 SetCSAsIO(0, 0x310, 8, 4)设置 CS0#为访问 16C550 的片选 基地址=0x310, 16C550 占用 8 个 IO 地址 加入 4 个时钟节拍 形成 6 个总线节拍的 IO 访问周期

Watchdog 的使用演示程序
用于测试 WatchDog 函数 WDT.PRJ 由 NETBOX.CPP 和 WDT.CPP 构成 NETBOX.CPP 提供低层操作的 C/C++接口函数 WDT.CPP 包含了主函数 main 函数启动 WatchDog watchdog 设置的时间间隔为 2 秒 先调用 EnableWDT( 2.0 )

在循环中不断调用 ReloadWDT( )重载 系统将被重新启动

如果将循环中的延时时间 delay( time )超过 2 秒

外部中断的演示程序
在实际应用中 一般使用硬件中断的方法是编写中断服务程序 在程序初始化中安装中 断程序 在程序退出时卸载中断程序 中断服务程序一般通过存储器变量与上层应用程序交 换数据 ISRDEMO.PRJ 工程文件由 ISR.CPP 和 ISRDEMO.CPP 构成 其中模块 ISR.CPP 提供了中断 函数的编写方法 NetBox 共有 5 个硬件中断供用户使用 时器中断 定义如下 其中三个外部中断 两个内部定

中断名称 IRQ6 IRQ7 IRQ9 IRQ10 IRQ11

中断号 0x0E 0x0F 0x71 0x72 0x73

备注 扩展总线外部中断 扩展总线外部中断 扩展总线外部中断 NetBox 内部中断 NetBox 内部中断

各个中断对应的中断服务程序定义为 void interrupt IRQ6_ISR(__CPPARGS); void interrupt IRQ7_ISR(__CPPARGS); void interrupt IRQ9_ISR(__CPPARGS);

英创信息技术有限公司

30

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

本页已使用福昕阅读器进行编辑。 福昕软件(C)2005-2007,版权所有, 仅供试用。

void interrupt IRQ10_ISR(__CPPARGS); void interrupt IRQ11_ISR(__CPPARGS);

int InstallISR( int intno); 该函数的功能是置中断 输入参数为中断号

int UninstallISR( int intno ); 该函数的功能是恢复中断

我们提供的例子中的中断服务程序作计数操作 每中断一次 计数值自动加 1 用户在 实际的运用中 可根据需要修改中断服务程序

ISRDEMO.CPP 包含了主函数 main( ) 主要完成对外部中断 IRQ6 IRQ7 IRQ9 服务程序 的测试 为了让外部中断服务程序工作 需要提供中断信号对其进行触发 在 ISRDEMO.CPP 中通过设置 386EX 内部 82C54 定时器 1 调用 SetXCLK 0 64000 函数输出一个周期为 8ms 的方波信号 并把该信号接到 IRQ6 IRQ7 IRQ9 中断对应的引脚 实现对中断的触发 在

执行完 int InstallISR( int intno)后 行一次

每隔 8ms 即中断一次 相应的中断服务程序将执

即对应的计数值自动加 1 通过把 XCLK 接到不同的中断输入上 运行相同的程序

用户可观察到不同中断服务程序工作的结果

内部定时器中断演示程序
TMRDEMO.PRJ 工 程 文件 由 NETBOX.CPP NETBOX.CPP 定义了低层的接口函数 ISR.CPP 及 TMRDEMO.CPP 构 成 其中各个函数的定 不同的 先

ISR.CPP 提供了中断服务程序

义见上 TMRDEMO.CPP 包含了主函数 main( ) 与上面的例子 ISRDEMO 很类似 是 IRQ10 和 IRQ11 为内部中断 其时钟输出已接到了相应的中断输入

不需要外接线

调用 SetXCLK 0 64000 函数输出一个周期为 8ms 的方波信号 此为 Timer1 的输出 接 着直接写时钟控制器 I/O 口 使得 Timer2 的输出是一个周期为 50ms 的方波信号 IRQ11 接的芯片内部 Timer2 输出 在 TMRDEMO

IRQ10 接的芯片内部 Timer1 输出

中 Timer1 产生周期为 8ms 的方波输出 Timer2 产生周期为 50ms 的方波输出 因此所显示 的结果 IRQ10 计数值和 IRQ11 计数值是不同的

英创信息技术有限公司

31

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

TCP/IP 协议库应用程序
NetBox TCP/IP 通讯软件是一组可在 NetBox 环境中调用的软件运行函数 通过在 NetBox 以太网接口实现基于 TCP/IP 或 UDP/IP 协议的通讯功能 其中各个运行函数的定义参见我们 提供 NetBox TCP 运行库参考手册 针对 TCP/IP 协议的应用 我们提供了五个测试程序

测试的方法是将我们提供的测试程序下载到 NetBox 运行 而另一端在 PC 机上运行我们提供 的基于 WinSocket 的 VC 源码及相应的 Windows 运行程序 用户不仅可利用此程序对 NetBox 的网络功能进行测试 还可在此基础上进行修改 以构成自己的上位机程序

TCP 服务器演示程序
这是 TCP/IP Ethernet Server 的例子 建立一个基于 TCP 的服务 倒序后又发送出去 TCPSVR.PRJ 工程文件由 TCPSVR.CPP 及 ETR_TCP.LIB 构成 数 main( ) 在 TCPSVR.CPP 中包含主函 其中的参数 IP 将接收到的数据串

首先调用 InitEthernet( char* IPStr )初始化以太网参数 如果没有带参数

地址可以通过命令行参数的形式输入 ( 接

则 采 用 缺 省 的 IP 地 址 * )连

192.168.201.22 )进行初始化,接着打开一个端口号为 1001 的无阻塞的 TCP( 等待连接建立后 实现数据接收显示并将接收数据倒序后再向外发送的功能

有关 TCP/IP 通讯接口函数的详细使用方法请参见相关技术资料 在另一端 PC 机上运行我们提供的 NetBoxTest 程序 NetBoxTest 作为客户端测试程序

TCP 客户端演示程序
这是 TCP/IP Ethernet Client 的例子 TCP 连接建立后 按一次键发送一次数据 在 TCPCLNT.CPP 中包含

TCPCLNT.PRJ 工程文件由 TCPCLNT.CPP 及 ETR_TCP.LIB 构成 主函数 main( )

首先调用 InitEthernet( char* IPStr )初始化以太网参数 其中的参数 如果没有带参数 则采用缺省的 IP 地址

IP 地址可以通过命令行参数的形式输入 (

192.168.201.22 )进行初始化,接着打开一个 TCP 的连接 需带有目的 IP 地址的连接 如果没有带有参数 则采用缺省值

目的 IP 地址可以通过命令行参数的第二项输入 192.168.201.3

命令行参数输入的方法如 TCPCLNT 192.168.201.26 192.168.201.16

命令行参数的第一项为本地 IP 地址 第二项为目的 IP 地址 打开一个连到对方 IP 端口 号为 1001 的无阻塞 TCP 连接 等待连接建立后 按一次键就可发送一次数据

在另一端 PC 机上运行我们提供的 NetBoxTest 程序 NetBoxTest 作为服务器测试程序
英创信息技术有限公司 32 emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

UDP 服务器演示程序
提供的是一个含组播的 UDP Server 服务器例子 接收数据并显示 UDPSVR.PRJ 工程文件由 UDPSVR.CPP 及 ETR_TCP.LIB 构成 数 main( ) 在 UDPSVR.CPP 中包含主函 其中的参数 IP

首先调用 InitEthernet( char* IPStr )初始化以太网参数 如果没有带参数 TCP

地址可以通过命令行参数的形式输入 ( 192.168.201.22

则 采 用 缺 省 的 IP 地 址 接 着 调 用 我们定义为 可

) 进 行 初 始 化 , 与

不 同 的 是

JoinMulticastGroup( MCTESTIP ) 加入组播

带的参数为组播 IP 地址

224.1.2.3 ,接着打开一个端口号为 6800 的阻塞模式的 UDP 连接 实现数据接收显示功能 并把接收到的串倒序后又发送出去 加入组播后

连接打开建立后

服务器既可接收发往本地 IP 的报文 也可接收发往组播地址的报文

另一端在 PC 机上运行 UDPTest 测试程序

UDP 客户端演示程序
提供的是一个含组播的 UDP Client 客户端例子 主动发送数据 UDPCLNT.PRJ 工程文件由 UDPCLNT.CPP 及 ETR_TCP.LIB 构成 主函数 main( ) 在 UDPCLNT.CPP 中包含

首先调用 InitEthernet( char* IPStr )初始化以太网参数 其中的参数 如果没有带参数 TCP 则采用缺省的 IP 地址 接 着 调 用 我们定义为 连

IP 地址可以通过命令行参数的形式输入 ( 192.168.201.22

) 进 行 初 始 化 , 与

不 同 的 是

JoinMulticastGroup( MCTESTIP ) 加入组播 224.1.2.3 ,接着打开一个端口号为 接打开建立后 可实现数据发送功能

带的参数为组播 IP 地址

MCTESTPORT -- 4000 的阻塞模式的 UDP 连接

另一端在 PC 机上运行 MultiCastChat 测试程序

FTP 服务器演示程序
提供的是 FTP 服务器程序 PC 机上运行 cuteFTP FTP 连接建立后 可以下载或上传文 件进行测试 FTPSVR.PRJ 工程文件由 FTPSVR.CPP 和 ETR_TCP.LIB 构成 在 FTPSVR.CPP 中包含主函 数 main( ) 首先调用 InitEthernet( char* IPStr )初始化以太网参数 如果没有带参数 其中的参数 IP

地址可以通过命令行参数的形式输入 ( 192.168.201.22 )进行初始化

则 采 用 缺 省 的 IP 地 址

接着进入主循环

调用 FTP 服务器运行程序 int

FTP_server( NULL ) FTP 的实现是以非阻塞方式和阻塞方式相结合为特征的 当未与客户

英创信息技术有限公司

33

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

端建立连接时 处于非阻塞方式 函数可返回 当与客户端建立连接后 FTP 服务器转入阻 塞模式 任务是 这时需等待 FTP 退出后 函数才会退出 函数 FTP_server( NULL )输入参数在单 选择 NULL 返回值为 0 等待 FTP 连接打开 =1 等待 FTP 连接建立 guest 密码= 888 =2 一次

FTP 连接完成 可再次调用该函数

Ftp_Server 的用户名=

基于 PPP 拨号网络的应用
NetBox 不仅提供了基于以太网的 TCP/IP 的通讯协议库 还提供了基于 PPP 拨号上网的 TCP/IP 的通讯协议库 其使用方法和基于以太网的很类似 这里就不在赘述 其详细的使

用方法请参见相关的技术资料

串口驱动程序
NetBox 嵌入式串行通讯程序能实现 RS232/RS485 串行通讯数据的收发 我们提供了两 个测试程序 测试的方法是将测试程序下载到 NetBox 运行 而另一端在 PC 机上运行 windows 提供的超级终端程序

RS232 收发演示程序
232DEMO.PRJ 工程文件由 232DEMO.CPP 及 RS232.CPP 构成 函数 main( ) 首先从外界输入端口号 接着初始化串口 在 232DEMO.CPP 中包含主 实现数据接收显示及将

开中断

接收数据向外发送的功能 程序中 端口号通过命令行参数的形式输入 如 232DEMO COM2 如果是在调试状态下运行 串口及中断服务功能 int 为 td –rp 232DEMO COM2 在 RS232.CPP 中文件实现了初始化

主要的功能函数如下

InitUART( int PortNum, int BaudIdx ); 初始化串口

功能描述 输入参数

PortNum: 0 1

串行端口号设置,可选值如下表: COM1 COM2 端口地址为 0x3F8 端口地址为 0x2F8

BaudIdx: 2 57.6 kbps

通讯波特率设置

用户可根据需要进行配置

本演示程序中采用值为

现将常用可选值列于下表 供用户参考
34 emtronix@mail.sc.cninfo.net

英创信息技术有限公司

NetBox 嵌入式网络模块用户手册

本页已使用福昕阅读器进行编辑。 福昕软件(C)2005-2007,版权所有, 仅供试用。

1 2 3 6 12 24 48

115.2 kbps 57.6 kbps 38.4 kbps 19.2 kbps 9600 kbps 4800 kbps 2400 kbps



本初始化函数中对数据通讯格式的设置为

8 bit,1 stop,no Parity

用户可根据

自己的需要在程序中进行设置

int

InstallISR( int PortNum ) 置中断

功能描述 输入参数

PortNum: 返回参数

串行端口号设置,定义同 InitUART

0----安装中断成功 -1----安装中断失败

int UninstallISR( int PortNum ) 功能描述 输入参数 PortNum : 串行端口号设置 定义同 InitUART 恢复中断

返回参数 0----恢复中断成功 -1----恢复中断失败

int PutOutputData( char abyte ) 功能描述 输入参数 abyte 待发送数据字节
35

将待发送数据置入输出数据缓冲区中

英创信息技术有限公司

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

本页已使用福昕阅读器进行编辑。 福昕软件(C)2005-2007,版权所有, 仅供试用。

返回参数

0----输出数据缓冲区未满 -1----输出数据缓冲区已满

写数成功 写数失败

void StartSend() 功能描述 输入参数 返回参数 启动中断,开始数据发送过程 无 无

int GetInputData() 功能描述 输入参数 返回参数 从接收数据缓冲区中取出数据 无 返回接收数据缓冲区中所取整数 返回-1 接收数据缓冲区为空

由 232DEMO.prj 编译连接生成的 232DEMO.exe 作为服务器端 它首先响应客户端的接收 请求 将客户端发送的数据在显示屏上显示出来 客户端执行 windows 提供的超级终端程序 同时又将接收到的数据发送到客户端

RS485 收发演示程序
485DEMO.PRJ 工程文件由 485DEMO.CPP 及 RS485.CPP 构成 函数 main( ) 首先从外界输入端口号 接着初始化串口 在 485DEMO.CPP 中包含主 实现数据接收显示及将

开中断

接收数据向外发送的功能 程序中 端口号通过命令行参数的形式输入 如 485DEMO COM2 如果是在调试状态下运行 串口及中断服务功能 int 为 td –rp 485DEMO COM2 在 RS485.CPP 中文件实现了初始化

主要的功能函数如下

InitUART( int PortNum, int BaudIdx ); 初始化串口

功能描述 输入参数

PortNum: 0 1

串行端口号设置,可选值如下表: COM1 COM2 端口地址为 0x3F8 端口地址为 0x2F8

BaudIdx:

通讯波特率设置

用户可根据需要进行配置

本演示程序中采用值为

英创信息技术有限公司

36

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

本页已使用福昕阅读器进行编辑。 福昕软件(C)2005-2007,版权所有, 仅供试用。

2

57.6 kbps

现将常用可选值列于下表 供用户参考

1 2 3 6 12 24 48

115.2 kbps 57.6 kbps 38.4 kbps 19.2 kbps 9600 kbps 4800 kbps 2400 kbps



本初始化函数中对数据通讯格式的设置为

8 bit,1 stop,no Parity

用户可根据

自己的需要在程序中进行设置

int

InstallISR( int PortNum ) 置中断

功能描述 输入参数

PortNum: 返回参数

串行端口号设置,定义同 InitUART

0----安装中断成功 -1----安装中断失败

int UninstallISR( int PortNum ) 功能描述 输入参数 PortNum : 串行端口号设置 定义同 InitUART 恢复中断

返回参数 0----恢复中断成功 -1----恢复中断失败

int PutOutputData( char abyte ) 功能描述 输入参数
37

将待发送数据置入输出数据缓冲区中

英创信息技术有限公司

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

本页已使用福昕阅读器进行编辑。 福昕软件(C)2005-2007,版权所有, 仅供试用。

abyte 返回参数

待发送数据字节 写数成功 写数失败

0----输出数据缓冲区未满 -1----输出数据缓冲区已满

void StartSend() 功能描述 输入参数 返回参数 启动中断,开始数据发送过程 无 无

int GetInputData() 功能描述 输入参数 返回参数 从接收数据缓冲区中取出数据 无 返回接收数据缓冲区中所取整数 返回-1 取数失败

由 485DEMO.prj 编译连接生成的 485DEMO.exe 作为服务器端 它首先响应客户端的接收 请求 将客户端发送的数据在显示屏上显示出来 同时又将接收到的数据发送到客户端

客户端执行 windows 提供的超级终端程序

LCD 汉字显示程序
在 NetBox 支持的 LCD 显示模块中 大多数模块都是点阵型的 为此 NetBox 提供了一套 通用的汉字显示接口函数 这些函数均采用源代码方式 用户可在此基础上 针对各自的应 用需求进行必要的修改 LCD 模块的中西文显示 有关 LCD 汉字驱动程序的详细定义及用法请参见技术资料 点阵

英创信息技术有限公司

38

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

NetBox 嵌入式网络模块主要技术指标
24/48MHz Intel386EX 高性能 32 位微处理器 2M 字节系统 RAM 包括支持 DOS 的 640KB 基本存储器及相应的高端存储器

512K 字节 Flash 存储器 带磁盘文件驱动软件接口 10BASE-T 以太网控制接口 NE2000 兼容 一个标准 RS232C 串口 9 线 一个可扩展串口 RS232/RS485/RS422

字符或点阵 LCD 接口 也可支持数字 LED 接口 扩展总线接口可与大多数外设接口控制器件直接相连 PC 兼容的 CMOS 掉电保护实时时钟 可直接支持 M-System 公司的 DiskOnChip 2000 系列芯片 PC 兼容 BIOS 及 PC/DOS 兼容的程序运行环境 BC3.1 开发环境 Turbo Debugger 源码调试 与 NetBox 配套的完整 TCP/IP 协议库 支持基于 RTOS 的应用方案 提供 Web Server 等网络应用方案 供电电压 掌式尺寸 5V 5% 工作电流 330-450mA 提供安装孔 5 95 与系统连接方式灵活多样

108mmX81mm 重约 80 克 至 65

工作温度 -10

工作湿度

NetBox 嵌入式网络模块示意图
英创信息技术有限公司 39 emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

附录 1 NetBox 机械外形尺寸示意图

标注尺寸单位

英寸(inch) [ 1 英寸 = 25.4mm ]

NetBox 板元件面器件分布示意图

英创信息技术有限公司

40

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

附录 2 NetBox 扩展串口调试带线说明
在英创信息技术有限公司的嵌入式网络模块产品 NetBox 中的串口 2 以下简称 COM2 的输入输出电平均为 TTL/CMOS 以方便客户将其扩展为所需的 RS232 或 RS485 或 RS422 另一方面 在许多应用场合 需要把 COM2 作为调试口使用 但由于 COM2 是 TTL/COMS 电平 不能与主机串口直接相连 为此英创公司专门配备了一条带电平转换功能的专用窗口 线 具体实现电路如下图所示

串口电平转换原理图

图中的电平转换芯片 MAX202E 安装在带线的 DB9 插头里 NB104 相应插头 CON3 提供 1. 在使用扩展串口调试线时

5V 电源由 NetBox 或

应注意以下事项 1 脚为方焊盘 其他为圆焊盘 1 脚上

注意 NetBox 或 NB104 COM2 插头管脚的方向 带线的 1 脚为红线 应保证带线的 1

脚插在 COM2 插头的

2. 3.

拔插调试带线时

一定要关闭电源

以免造成对 MAX202E 的损坏 4 脚置成断

当使用 COM2 作为调试串口时 开模式

应把 NetBox 板上的跳线器 JP2 的 3

用户也可参考本附录自行制作带电平转换的串口调试带线

英创信息技术有限公司

41

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

附录 3 NetBox 支持的 LCD 模块及其它的显示接口方案
NetBox 可支持大多数带接口的 LCD 模块 字符型 LCD 型号 MDLS20464 MDLS20468 MDLS20265 规格 4 4 2 20 20 20 备注 应用说明 包括字符型和点阵型

点阵型 LCD 型号 DMF50081 Truly TR803 QH2001#1-01 MGLS12864T MSP-G240128DYSY SED1520 Truly M19264 TM12864ABC LMB16032 规格 320 320 128 128 240 122 192 128 160 240 240 64 64 128 32 64 64 32 控制器型号 SED1335 控制器 SED1335 控制器 HD61202 控制器 T6963C 控制器 T6963C 控制器 SED1520 控制器 HD61202 控制器 HD61202 控制器 直接带汉字字库 备注 清华晶电蓬远 信利 清华晶电蓬远 清华晶电蓬远 信利 清华晶电蓬远 信利 天马 浪潮-瀚海

NetBox 的 CON6 显示接口还可与象 Intel8279

等可编程芯片直接相连 实现特殊的显

示界面 欢迎客户向我们提供需要使用的显示模块的相关参数 我们可为客户设计与 PC 兼 容的显示驱动程序

英创信息技术有限公司

42

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

本页已使用福昕阅读器进行编辑。 福昕软件(C)2005-2007,版权所有, 仅供试用。

附录 4 BC31 集成开发环境的基本配置
为了编写正确的应用程序代码 需对 BC 集成开发环境的相关参数做出相应的设置 本 附录将对与应用程序开发相关的主要配置参数与以说明 简介 中的相关章节 具体的设置方法请参见 BC 使用

1

编译路径的设置 建议在 AUTOEXEC.BAT 中把 任意工作目录中启动 BC 把 BC 软件所在目录设入 BC 集成开发环境的目录选项中 如 BC 安装在 C:\BC 则 Include 目录应设为 C:\BC\INCLUDE 而 Library 目录应设为 C:\BC\LIB BC\BIN 加入系统的路径列表中 这样用户可在

2

编译模式的设置 由于我们的 TCP/IP 库采用的是 Large 模式 因此用户在包含 TCP/IP 库的工程文件 中 需要将编译模式设置为 Large 模式 还需要将编译模式设置为 Huge 模式

如果用户采用了我们提供的 RTOS 库文件

3

代码生成选项设置 代码生成选项中有 3 项内容用户需仔细确认设置 它们是 浮点设置 由于 386EX 不带协处理器 指令设置 调试设置 应设置为 80386 因此该项应设置为仿真 Emulation

以充分发挥 386EX 的效率 这样可在 TD 中进行源码调试

建议用户设置带调试信息的编译

4

运行库的设置 由于 NetBox 已不支持通常的 VGA 显示 所以无须连接图形库 Graphics library 标准的 Run-time 库应设置为静态 Static 注意其他库的选项都应设置为无 None

英创信息技术有限公司

43

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

附录 5 基于 NetBox 的系统软件开发流程
如下图所示 NetBox 的软件开发可完全在 PC 上按以下步骤进行 启动 BC 集成环境 (IDE)

建立或修改工程文件 UserApp.prj

编辑应用程序模块 C/C++ 汇编

C/C++运行库

编译 汇编 连接 各程序模块

TCP/IP 通讯库

RTOS 系统调用 未通过 是否通过

通过 下载调试 td -rp UserApp NetBox 硬件系统

未通过 调试通过否

通过 软件开发 完成

第 1 步 在 PC 环境下启动 BC/C++或 TC/C++的集成开发环境 IDE C:\Myapp>BC 第 2 步 建立工程 Project 文件 程文件



在 Prj 工程文件中主要是定义系统的各软件模块

Prj 工

可根据设计需求随时进行修改
44 emtronix@mail.sc.cninfo.net

英创信息技术有限公司

NetBox 嵌入式网络模块用户手册

第 3 步 编写各软件模块 即常规的程序设计

在 BC 的集成环境下 用户即可采用 C/C++

这样的高级语言设计程序 也可用 x86 的汇编来设计关键模块 如硬件驱动程序 中断服务 程序等 第 4 步 对编写好的程序进行编译 Compiler 汇编 Assembler 连接 Linker 若程序

有错 集成环境将提示错误信息 用户可根据错误信息返回第 2 步进行修改 直至生成可执 行文件 如 userapp.exe 典型命令如下

第 5 步 运行调试程序 对第 4 步生成的用户应用程序进行调试 C:\Myapp>td –rp userapp TD 具有自动下载应用程序至目标系统的功能 基本界面如下

TD 是一个功能强大的源级程序调试工具

若调试发现错误

可方便退出调试

返回第 2 步进行修改

直至整个程序完整调试 即可

第 6 步 调试完成即意味着程序开发的结束 用户可把 NetBox 设置成直接运行模式 让系统独立运行

英创信息技术有限公司

45

emtronix@mail.sc.cninfo.net

NetBox 嵌入式网络模块用户手册

本页已使用福昕阅读器进行编辑。 福昕软件(C)2005-2007,版权所有, 仅供试用。

附录 6 TDRF 及 TD 调试工具使用说明
TDRF 是一个简易的基于 RS232 的远程文件访问工具软件 TDRF [选项] 命令 [参数] 其中的选项有 rp<#> rs<#> 缺省选项为 设置 HOST 的调试串行端口号 rp1=COM1 rp2=COM2 基本使用方法如下

设置串行波特率 rs1=9600bps rs2=19kbps rs3=38kbps rs4=115kbps rp1 rs4 即 COM1 115k 波特率

命令 为类似 DOS 命令的英文单词或单个缩写字母 与 DOS 命令类似 跟在 dir copy del copyfrom 命令后的参数可采用 命令 Copy Copyfrom Del Erase Dir Ren Md Rd Cd 缩写 T F E D R M K C * 表示任意文件名或扩展名 TDRF 的主要命令有 描述 拷贝 HOST 文件至 NetBox 拷贝 NetBox 中的文件至 HOST 删除 NetBox B 盘或 C 盘中的文件 显示 NetBox 中的文件目录 重命名 NetBox 中的文件 在 NetBox 中建立新目录 删除 NetBox B 盘或 C 盘中已存在的目录 改变 NetBox 的当前目录

参数数目 1或2 1或2 1 0或1 2 1 1 0或1

TD 即 Turbo Debugger 是一个功能强大的源程序调试工具 在基于 NetBox 的应用开发 中 可采用 TD 作为基本的交叉调试工具 具体方法为 把 NetBox 的 RS232 调试端口与用于 软件开发的 PC 的一个 RS232 端口 COM1 或 COM2 相连 一般在编写应用程序的当前目录启 动 TD 如 C:\MyApp>TD 其中-rp#用于指定 PC 的调试端口 运行 TD 时 用户编写的应用程序 然后应用程序自动启动 模块的源代码 –rp# Userapp -rp2=COM2

-rp1=COM1

也可简写成-rp

如 Userapp.exe 将首先被下载至 NetBox 的当前目录 相应的用户 PC 的屏幕上会显示应用程序的 main 这时就可进行各种程序调试了

进入调试状态

如附录 5 中的图所示

英创信息技术有限公司

46

emtronix@mail.sc.cninfo.net


相关文章:
netbox
yangdali1108贡献于2010-12-22 0.0分 (0人评价)暂无用户评价 我要评价 ...NetBox使用asp详解 7页 5财富值 NetBox网络模块用户手册 v... 46页 免费 netbox...
更多相关标签:
sap qm模块用户手册 | 4g模块用户手册 | 1734通讯模块用户手册 | sap财务模块操作手册 | cp343 1模块手册 | fx3u扩展模块选型手册 | python os模块手册 | em277模块使用手册 |