14

2.4.2 CAN总线接口电路 16

2.4.3 CAN总线接口编程技术 16

2.5 USB模块 16

2.5.1 USB 2.0协议基础 17

2.5.2 USB接口电路 19

2.5.3 USB接口编程技术 20

2.6 本章小结 20

3 开发环境及调试工具 21

3.1 Keil μVision4 21

3.2 调试工具 26

3.2.1 串口调试助手 26

3.2.2 cantest软件 26

3.2.3 USB上位机程序 27

3.3 本章小结 28

4 软件实现 29

4.1 UART接收与回传的实现 29

4.2 CAN总线与UART数据转换的实现 29

4.2.1 需求分析 30

4.2.2 系统流程图 30

4.2.3 CAN数据帧的封装和解封策略 31

4.2.4 UART驱动程序设计 31

4.2.5 运行结果 31

4.3 USB与UART数据转换的实现 36

4.3.1 需求分析 36

4.3.2 系统流程图 36

4.3.3 USB设备开发 37

4.3.4 运行结果 38

4.4 USB与CAN总线数据转换的实现 39

4.4.1 需求分析 39

4.4.2 系统流程图 40

4.4.3 软件设计 40

4.4.4 运行结果 40

4.5 本章小结 44

结  论 45

致  谢 47

1  绪论

1.1 问题的提出

目前市面上的CAN-USB转换器体积庞大、价格昂贵且不提供原理图,因此设计一个微型、成本低廉的CAN总线与USB数据转换系统尤为必要,特别适用于学术研究。除了为了达到体积小、价格低廉的目的外,CAN-USB转换器主要是为了方便调试CAN。CAN适配器在传统接口上的连接十分繁琐和复杂,不利于其应用扩展[1]。而USB的即插即用特点正好克服了这一局限,可以通过USB在PC端使用上位机程序对CAN进行调试。从工业应用上来看,USB通信距离短,通常不超过几十米,而距离传输远的CAN总线技术正好也提供了便利。总之,CAN-USB转换器扩大了CAN总线或USB的应用范围。

1.2 背景及意义

ARM是Advance RISC Machine的缩写,现已是一类低功耗处理器的通称。ARM产品一般具有以下特点:

体积小、功耗低、成本低和性能高;

支持Thump(16位)/ARM(32位)双指令集,与8位/16位器件相容得较好;

大量使用暂存器,指令执行速度更快;

资料操作大多在暂存器中完成;

上一篇:Viterbi基于统计语言模型和维特比算法的中文切词技术
下一篇:DTW算法音乐检索系统设计与实现

Android手机考勤平台的设计与实现

Python+mysql宠物领养平台的设计与实现

ASP.NET飞翔租贷汽车公司信...

国产加密算法的研究与实现

jsp值得买导购网站的设计与实现

jsp+mysql网上化肥店系统的设计与开发

局域网管理系统的设计与实现

浅论职工思想政治工作茬...

上海居民的社会参与研究

酵母菌发酵生产天然香料...

基于Joomla平台的计算机学院网站设计与开发

提高教育质量,构建大學生...

STC89C52单片机NRF24L01的无线病房呼叫系统设计

压疮高危人群的标准化中...

浅谈高校行政管理人员的...

AES算法GPU协处理下分组加...

从政策角度谈黑龙江對俄...