第一章概述 | 第1-18页 |
1.1.1 项目背景 | 第14页 |
1.1.2 硬件总体方案选择 | 第14-15页 |
1.1.3 软件总体方案选择 | 第15-16页 |
1.1.4 我的工作,他人的帮助和贡献 | 第16-18页 |
第二章 系统需求与设计方案 | 第18-80页 |
2.1 以太网通信板的硬件设计 | 第18-30页 |
2.1.1 单板结构,总体模块划分 | 第18-19页 |
2.1.2 模块详细描述 | 第19-21页 |
2.1.2.1 CPU子系统模块 | 第19-20页 |
2.1.2.2 以太网接口子系统 | 第20-21页 |
2.1.3 软件编程资源 | 第21-26页 |
2.1.3.1 片选信号及地址空间分配 | 第21-22页 |
2.1.3.2 NCEX各段空间访问的实现 | 第22页 |
2.1.3.3 CPU的IO脚用法 | 第22-23页 |
2.1.3.4 中断资源 | 第23-25页 |
2.1.3.5 时钟资源 | 第25页 |
2.1.3.6 定时/计数器资源 | 第25页 |
2.1.3.7 串口资源 | 第25页 |
2.1.3.8 DMA资源 | 第25-26页 |
2.1.3.9 WATHDOG资源 | 第26页 |
2.1.3.10 以太网芯片RTL8019AS编程接口 | 第26页 |
2.1.4 外部硬件接口 | 第26-28页 |
2.1.4.1 板上插针 | 第26-27页 |
2.1.4.2 拨码开关 | 第27页 |
2.1.4.3 指示灯说明 | 第27-28页 |
2.1.5 关键器件 | 第28-30页 |
2.1.5.1 386EX | 第28-29页 |
2.1.5.2 RTS8019AS | 第29-30页 |
2.2 以太网通信板的单板软件设计 | 第30-50页 |
2.2.1 需求分析 | 第30-31页 |
2.2.1.1 功能需求 | 第30-31页 |
2.2.1.2 性能需求 | 第31页 |
2.2.1.3 其它需求 | 第31页 |
2.2.2 系统设计 | 第31-39页 |
2.2.2.1 TCP/IP协议栈总体方案 | 第31-35页 |
2.2.2.2 单板软件总体方案 | 第35-39页 |
2.2.3 具体实现 | 第39-50页 |
2.2.3.1 主程序main() | 第39-40页 |
2.2.3.2 单板初始化Init_System() | 第40页 |
2.2.3.3 接收以太网帧NICReceiveRxFrame() | 第40-43页 |
2.2.3.4 发送以太网帧NICSendTxFrame() | 第43-44页 |
2.2.3.5 以太网协议处理L2_process() | 第44页 |
2.2.3.6 IP层协议处理L3_process() | 第44-45页 |
2.2.3.7 传输层协议处理Udp_process() | 第45-46页 |
2.2.3.8 应用层协议处理App_process() | 第46-48页 |
2.2.3.9 以太网转换到RS232串口的发送程序sio_memprint() | 第48-49页 |
2.2.3.10 RS232串口转换到以太网的接收程序sio_strread() | 第49-50页 |
2.3 以太网通信板的主机软件设计 | 第50-55页 |
2.3.1 需求分析 | 第50页 |
2.3.1.1 功能需求 | 第50页 |
2.3.1.2 性能需求 | 第50页 |
2.3.1.3 其它需求 | 第50页 |
2.3.2 系统设计 | 第50-51页 |
2.3.3 具体实现 | 第51-55页 |
2.4 USB通信板的硬件设计 | 第55-62页 |
2.4.1 单板硬件总体结构 | 第55页 |
2.4.2 USB通信板硬件详细设计 | 第55-57页 |
2.4.3 CY64613的资源 | 第57-59页 |
2.4.3.1 存储器地址空间分配 | 第57页 |
2.4.3.2 CY64613的IO脚用法 | 第57页 |
2.4.3.3 中断资源 | 第57-59页 |
2.4.3.4 定时/计数器资源 | 第59页 |
2.4.3.5 串口资源 | 第59页 |
2.4.3.6 DMA资源 | 第59页 |
2.4.4 外部硬件接口 | 第59页 |
2.4.4.1 板上插针 | 第59页 |
2.4.4.2 按钮开关 | 第59页 |
2.4.4.3 指示灯说明 | 第59页 |
2.4.5 关键器件 | 第59-62页 |
2.4.5.1 Cy64613 | 第59-62页 |
2.5 USB通信板的单板软件设计 | 第62-74页 |
2.5.1 需求分析 | 第62页 |
2.5.1.1 功能需求 | 第62页 |
2.5.1.2 性能需求 | 第62页 |
2.5.1.3 其它需求 | 第62页 |
2.5.2 系统设计 | 第62-67页 |
2.5.2.1 存贮器的分配(8-Kbyte RAM) | 第63-64页 |
2.5.2.2 与外部设备的通信方式 | 第64-65页 |
2.5.2.3 应用层通信协议 | 第65-67页 |
2.5.3 具体实现 | 第67-74页 |
2.5.3.1 工程文件结构 | 第67-68页 |
2.5.3.2 主函数main()工作流程 | 第68-69页 |
2.5.3.3 USB接收数据包处理流程 | 第69-71页 |
2.5.3.4 USB发送数据包处理流程 | 第71-72页 |
2.5.3.5 单板的初始化处理 | 第72-74页 |
2.6 USB通信板的主机软件设计 | 第74-80页 |
2.6.1 需求分析 | 第74页 |
2.6.2 系统设计 | 第74-76页 |
2.6.2.1 人机接口设计 | 第74-75页 |
2.6.2.2 USB通信功能设计 | 第75-76页 |
2.6.2.3 多线程设计 | 第76页 |
2.6.3 具体实现 | 第76-80页 |
2.6.3.1 UstTest工程文件结构 | 第76-78页 |
2.6.3.2 USB接收线程Receive_Thread() | 第78-79页 |
2.6.3.3 USB发送线程Send_Thread() | 第79-80页 |
第三章 调试和测试 | 第80-92页 |
3.1 以太网通信板的调试和测试 | 第80-90页 |
3.1.1 硬件调试报告 | 第80-82页 |
3.1.2 386EX的软件调试方法 | 第82-83页 |
3.1.3 调试程序说明 | 第83-84页 |
3.1.4 调试记录 | 第84-90页 |
3.1.4.1 5.1底层通信调试Ping | 第84页 |
3.1.4.2 5.2重复收包问题 | 第84-85页 |
3.1.4.3 调试UDP通信程序 | 第85页 |
3.1.4.4 调试应用层程序 | 第85-86页 |
3.1.4.5 收发性能测试 | 第86页 |
3.1.4.6 MAC芯片掉死问题 | 第86-89页 |
3.1.4.7 串口通信功能调试 | 第89-90页 |
3.2 USB通信板的调试和测试 | 第90-92页 |
第四章 今后的工作接口 | 第92-96页 |
4.1 工作目的 | 第92页 |
4.2 以太网通信板的程序固化方法 | 第92-93页 |
4.3 以太网通信板的再开发建议 | 第93-94页 |
4.4 USB通信板的程序固化方法 | 第94页 |
4.5 USB通信板的再开发建议 | 第94-96页 |
第五章 结束语 | 第96-97页 |
5.1 收获 | 第96页 |
5.2 感谢 | 第96-97页 |
参考文献 | 第97页 |