您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > 基于STM32的CAN总线的数据采集卡设计
学号:0121311371307能力拓展训练题目基于STM32的CAN总线数据采集卡设计学院自动化学院专业自动化专业班级自动化1305班姓名司文雷指导教师罗璠2016年8月27日任务书1、要求设计如下功能的数据采集卡:(1)采用STM32对8路0~5V模拟信号进行采集,采样频率为100Hz。(2)采集的数据要求通过CAN总线发送出去。(3)数据采集卡的CAN总线标识符可用拨码开关指定。2、要求选择合适的STM32微控制器,具备对CAN总线的支持,并选择合适的CAN接口电路芯片;3、要求完成采集卡的硬件电路设计,包括原理图设计、PCB布线设计;4、要求完成STM32程序设计,并进行仿真;5、提交设计报告。11STM32简介....................................................................................................................................31.1STM32F105VCT6的参数.................................................................错误!未定义书签。1.2内部资源..............................................................................................................................41.3Cortex-M3内核简介...........................................................................................................52CAN概述........................................................................................................................................62.1CAN简介..................................................................................................................................62.2工作原理................................................................................................................................72.3CAN的高层协议......................................................................................................................72.4CAN波特率计算....................................................................................................................82.4.1波特率.............................................................................................................................82.4.2CAN波特率的计算.........................................................................................................83硬件电路设计..............................................................................................................................134软件实现......................................................................................................................................144.1STM32电压数据采集的软件实现.......................................................................................144.1.1AD-DA模块的编写.....................................................................................................144.2CAN总线节点的软件设计.................................................................................................24结论............................................................................................................................................33参考文献.........................................................................................................................................34附录1.............................................................................................................................................35附录2..........................................................................................................................................362摘要摘要:CAN(ControllerAreaNetwork,控制器局域网)是一种有效支持实时控制的串行数据通信网络。自上世纪80年代诞生以来,CAN总线以其可靠性好、实时性高及组网简便灵活等优势而受到人们的青睐,并在众多行业领域内得到了广泛的应用。随着工业技术的不断进步,控制过程的自动化与网络化是必然的发展趋势,同时数据的传输量越来越大,对数据传输的实时性要求也更加苛刻。笔者采用内置CAN控制器的高性能微处理器STM32F105vct6作为节点的微处理器,使用带隔离的高速集成CTM1050T作为CAN收发器,数据输入输出通道采用光电耦合器进行隔离,设计了CAN总线系统的数据采集节点。本设计节点具有体积小、功耗低、抗干扰能力强、实时性高及数据处理能力强等优势。实现,它主要实现现场节点的监控及数据的显示、分析和存储。数据转换器采用RS-232转CAN,它主要实现串口协议与CAN协议之间的桥接,并将接收的数据进行转发。各节点与工业现场的仪器仪表相连接,不分主次地挂接在CAN总线上,它主要实现数据的采集与处理,并接收来自CAN总线上的数据或将数据发送到CAN总线上。关键词:STM32;CAN总线;数据采集31STM32简介STM32F105xx增强型系列使用高性能的ARM/Cortex-M3/32位的RISC内核,工作频率为72MHz,内置高速存储器(高达128K字节的闪存和20K字节的SRAM),丰富的增强I/O端口和联接到两条APB总线的外设。所有型号的器件都包含2个12位的ADC、3个通用16位定时器和一个PWM定时器,还包含标准和先进的通信接口:多达2个I2C和SPI、3个USART、一个USB和一个CAN。STM32F105xx增强型系列工作于-40℃至+105℃的温度范围,供电电压2.0V至3.6V,一系列的省电模式保证低功耗应用的要求。这些丰富的外设配置,使得STM32F105xx增强型微控制器适合于多种应用场合:电机驱动和应用控制;·医疗和手持设备;·PC外设和GPS平台;·工业应用:可编程控制器、变频器、打印机和扫描仪;STM32开发板核心芯片的参数如表1-1表1-1器件功能和配置(STM32F105xx增强型)4芯片引脚图如图1-2:图1-2STM32F105xx增强型LQPFP48管脚图1.2内部资源STM32有丰富的内部资源,如下所示:·RealViewMDK(MiertocontrollerDevelopmentKit)基于ARM微控制器的专业嵌入式开发工具;·内置闪存存储器;·内置SRAM;·嵌套的向量式中断控制器(NVIC);·外部中断/事件控制器(EXTI);·时钟和启动;·自举模式;·DMA;·RTC(实时时钟)和后备寄存器;·窗口看门狗;·I2C总线;·通用同步/异步接受发送器(USART);·串行外设接口(SPI);·控制器区域网络(CAN);·通用串行总线(USB);5·通用输入输出接口(GPIO);·ADC(模拟/数字转换器);·温度传感器;·串行线JTAG调试口(SWJ-DP)。1.3Cortex-M3内核简介Cortex-M3内核包含一个适用于传统Thumb和新型Thumb-2指令的译码器、一个支持硬件乘法和硬件除法的先进ALU、控制逻辑和用于连接处理器其他部件的接口。Cortex-M3处理器是首款基于ARMv7-M架构的ARM处理器。中央Cortex-M3内核使用3级流水线哈佛架构,运用分支预测、单周期乘法和硬件除法功能实现了出色的效率(1.25DMIPS/MHz)。Cortex-M3处理器是一个32位处理器,带有32位宽的数据路径、寄存器库和基于传统ARM7处理器的系统只支持访问对齐的数据,沿着对齐的字边界即可对数据进行访问和存储。Cortex-M3处理器采用非对齐数据访问方式,使非对齐数据可以在单核访问中进行传输。Cortex-M3处理器是专为那些对成本和功耗非常敏感但同时对性能要求又相当高的应用而设计的。凭借缩小的内核尺寸和出色的中断延迟性能、集成的系统部件、灵活的配置、简单的高级编程和强大的软件系统,Cortex-M3处理器将成为从复杂的芯片系统到低端微控制器等各种系统的理想解决方案。表2-3为Cortex-M3处理器与ARM7作比较。6表2-3Cortex-M3与ARM7相比较2CAN概述2.1CAN简介CAN,全称为“ControllerAreaNetwork”,即控制器局域网,是国际上应用最广泛的现场总线之一。最初,CAN被设计作为汽车环境中的微控制器通讯,在车载各电子控制装置ECU之间交换信息,形成汽车电子控制网络。比如:发动机管理系统、变速箱控制器、仪表装备、电子主干系统中,均嵌入CAN控制装置。一个由CAN总线构成的单一网络中,理论上可以挂接无数个节点。实际应用中,节点数目受网络硬件的电气特性所限制。例如,当使用PhilipsP82C2507作为CAN收发器时,同一网络中允许挂接110个节点。CAN可提供高达1Mbit/
本文标题:基于STM32的CAN总线的数据采集卡设计
链接地址:https://www.777doc.com/doc-2535114 .html