当前位置:文档之家› 基于stm32的can总线实验

基于stm32的can总线实验

基于stm32的can总线实验
基于stm32的can总线实验

现场总线实验报告

现场总线 实验报告 专业班级:测控1202 姓名:李聪 学号:12054224

一、实验目的: 1、熟悉现场总线控制系统的组成 2、了解常用的现场总线控制软件 3、熟悉STEP7、SIMATIC组态软件的使用 4、了解PROFIBUS-DP总线接口卡CP5611的工作原理 二、实验设备: 1、PROFIBUS-DP现场总线控制系统 2、万用表 3、4-20MA温度变送器 三、实验内容: 现场总线是一种串行的数字数据通讯链路,它沟通了生产过程领域的基本控制设备之间以及更高层次自动控制领域的自动化控制设备之间的联系。 Profibus是世界上最快的总线,世界范围的标准。主要应用于工业控制的各个领域。PROFIBUS提供了3种数据传输类型:用于DP和FMS的RS-485传输、用于PA的IEC1158-2传输、用光纤传输。 分为工厂级,车间级还有现场级。 实验室的Profibus总线系统

实验室通过电脑显示4-20 ma常规信号 三、实验步骤: 1.打开station cobfiguration editor。设置OPC server和CP5611 2.打开STMATIC Manager,通过insert>station>simatic pc station插入一个pc站,站名要更 改为configuration editor中所命名的。 3.选择address为1,并新建subnet

4.在Set pc interface中选择pc internal(local) 5.双击cobfiguration,打开硬件组态窗口,组态与所安装的simatic net软件版本 相一致的硬件,插槽机构与在cobfiguration editor的pc站一致 6.设置address为4 7.设置数据类型为w

STM32的can总线实验心得要点

STM32的can总线实验心得 (一) 工业现场总线 CAN 的基本介绍以及 STM32 的 CAN 模块简介 首先通读手册中关于CAN的文档,必须精读。 STM32F10xxx 参考手册Rev7V3.pdf https://www.doczj.com/doc/ae17715363.html,/bbs/redirect.php?tid=255&goto=lastpost#lastpos t 需要精读的部分为 RCC 和 CAN 两个章节。 为什么需要精读 RCC 呢?因为我们将学习 CAN 的波特率的设置,将要使用到RCC 部分的设置,因此推荐大家先复习下这部分中的几个时钟。 关于 STM32 的 can 总线简单介绍 bxCAN 是基本扩展 CAN (Basic Extended CAN) 的缩写,它支持 CAN 协议 2.0A 和 2.0B 。它的设计目标是,以最小的 CPU 负荷来高效处理大量收到的报文。它也支持报文发送的优先级要求(优先级特性可软件配置)。 对于安全紧要的应用,bxCAN 提供所有支持时间触发通信模式所需的硬件功能。 主要特点 · 支持 CAN 协议 2.0A 和 2.0B 主动模式 · 波特率最高可达 1 兆位 / 秒 · 支持时间触发通信功能 发送 · 3 个发送邮箱 · 发送报文的优先级特性可软件配置 · 记录发送 SOF 时刻的时间戳 接收 · 3 级深度的2个接收 FIFO · 14 个位宽可变的过滤器组-由整个 CAN 共享 · 标识符列表 · FIFO 溢出处理方式可配置 · 记录接收 SOF 时刻的时间戳 可支持时间触发通信模式 · 禁止自动重传模式 · 16 位自由运行定时器 · 定时器分辨率可配置 · 可在最后 2 个数据字节发送时间戳 管理 · 中断可屏蔽

CAN总线通讯实验

CAN总线通讯实验 一、实验目的 1.掌握UP-NetARM2410经典版上的CAN总线通讯原理。 2.学习编程实现MCP2510的CAN总线通讯。 3.掌握查询模式的CAN总线通讯程序的设计方法。 二、实验内容 学习CAN总线通讯原理,了解CAN总线的结构,阅读CAN控制器MCP2510的芯片文档,掌握MCP2510的相关寄存器的功能和使用方法。编程实现UP-NetARM2410-CL之间的CAN总线通讯: 两个UP-NetARM2410-CL通过CAN总线相连接。ARM监视串行口,将接收到的字符发送给另一个开发板并通过串口显示(计算机与开发板是通过超级终端通讯的)。即按PC 键盘通过超级终端发送数据,开发板将接收到的数据通过CAN总线转发,再另一个PC的超级终端上显示数据。 三、预备知识 1、用EW ARM集成开发环境,编写和调试程序的基本过程。 2、ARM应用程序的框架结构。 3、会使用Source Insight 3 编辑C语言源程序。 4、了解CAN总线。 四、实验设备及工具 硬件:ARM嵌入式开发平台、用于ARM920T的JTAG仿真器、PC机Pentium100以上,CAN通讯电缆。 软件:PC机操作系统Win2000或WinXP、EW ARM集成开发环境、仿真器驱动程序、超级终端通讯程序 五、实验原理及说明 1.CAN总线概述

CAN全称为Controller Area Network,即控制器局域网,是国际上应用最广泛的现场总线之一。最初,CAN总线被设计作为汽车环境中的微控制器通讯,在车载各电子控制装置ECU之间交换信息,形成汽车电子控制网络。比如,发动机管理系统、变速箱控制器、仪表装备、电子主干系统中均嵌入CAN控制装置。 一个由CAN总线构成的单一网络中,理论上可以挂接无数个节点。但是,实际应用中节点数目受网络硬件的电气特性所限制。例如,当使用Philips P82C250 作为CAN 收发器时,同一网络中允许挂接110个节点。 CAN可提供高达1Mbit/s的数据传输速率,这使实时控制变得非常容易。另外,硬件的错误检定特性也增强了CAN的抗电磁干扰能力。 CAN的主要优点包括: ◆低成本 ◆极高的总线利用率 ◆很远的数据传输距离(长达10公里) ◆高速的数据传输速率(高达1Mbit/s) ◆可根据报文的ID决定接收或屏蔽该报文 ◆可靠的错误处理和检错机制 ◆发送的信息遭到破坏后可自动重发 ◆节点在错误严重的情况下具有自动退出总线的功能 ◆报文不包含源地址或目标地址仅用标志符来指示功能信息优先级 2.CAN总线的电气特性 CAN能够使用多种物理介质进行传输,例如:双绞线、光纤等。最常用的就是双绞线。信号使用差分电压传送,两条信号线被称为CAN_H和CAN_L,静态时均是2.5V左右,此时状态表示为逻辑1也可以叫做“隐性”。用CAN_H比CAN_L高表示逻辑0,称为“显性”。此时,通常电压值为CAN_H=3.5V和CAN_L=1.5V。当“显性”位和“隐性”位同时发送的时候,最后总线数值将为“显性”。这种特性,为CAN总线的总裁奠定了基础。 CAN总线的一个位时间可以分成四个部分:同步段,传播段,相位段1和相位段2,每段的时间份额的数目都是可以通过CAN总线控制器(比如MCP2510)编程控制的,而时间份额的大小tq由系统时钟tsys和波特率预分频值BRP决定:tq=BRP/tsys。如下图所示: 图9-1 CAN总线的一个位时间 上述四个部分的设定和CAN总线的同步、仲裁等信息有关,请读者参考CAN总线方面的相关资料。

课程设计实验报告 北邮

课程设计实验报告 -----物联网实验 学院:电子工程学院班级:2011211204 指导老师:赵同刚

一.物联网概念 物联网是新一代信息技术的重要组成部分。物联网的英文名称叫“The Internet of things”。顾名思义,物联网就是“物物相连的互联网”。这有两层意思:第一,物联网的核心和基础仍然是互联网,是在互联网的基础上延伸和扩展的网络;第二,其用户端延伸和扩展到了任何物体与物体之间,进行信息交换和通信。因此,物联网的定义是:通过射频识别(RFID)、红外感应器、全球定位系统、激光扫描器等信息传感设备,按约定的协议,把任何物体与互联网相连接,进行信息交换和通信,以实现对物体的智能化识别、定位、跟踪、监控和管理的一种网络。 二.物联网作用 现有成熟的主要应用包括: —检测、捕捉和识别人脸,感知人的身份; —分析运动目标(人和物)的行为,防范周界入侵; —感知人的流动,用于客流统计和分析、娱乐场所等公共场合逗留人数预警; —感知人或者物的消失、出现,用于财产保全、可疑遗留物识别等; —感知和捕捉运动中的车牌,用于非法占用公交车道的车辆车牌捕捉; —感知人群聚集状态、驾驶疲劳状态、烟雾现象等各类信息。 三.物联网无线传感(ZigBee)感知系统 ZigBee是一种新兴的短距离、低功耗、低数据速率、低成本、低复杂度的无线网络技术。ZigBee在整个协议栈中处于网络层的位置,其下是由IEEE 802.15.4规范实现PHY(物理层)和MAC(媒体访问控制层),对上ZigBee提供了应用层接口。 ZigBee可以组成星形、网状、树形的网络拓扑,可用于无线传感器网络(WSN)的组网以及其他无线应用。ZigBee工作于2.4 GHz的免执照频段,可以容纳高达65 000个节点。这些节点的功耗很低,单靠2节5号电池就可以维持工作6~24个月。除此之外,它还具有很高的可靠性和安全性。这些优点使基于ZigBee的WSN广泛应用于工业控制、消费性电子设备、汽车自动化、家庭和楼宇自动化、医用设备控制等。 ZigBee的基础是IEEE802.15.4,这是IEEE无线个人区域网工作组的一项标准,被称作IEEE802.15.4(ZigBee)技术标准。ZigBee不仅只是802.15.4的名字。IEEE仅处理低级MAC

计算机组成原理存储器读写和总线控制实验实验报告

信息与管理科学学院计算机科学与技术 实验报告 课程名称:计算机组成原理 实验名称:存储器读写和总线控制实验 学号: 姓名: 班级:实验室:组成原理实验室指导教师:日期: 2013-11-22

一、实验目的 1、掌握半导体静态随机存储器RAM的特性和使用方法。 2、掌握地址和数据在计算机总线的传送关系。 3、了解运算器和存储器如何协同工作。 二、实验环境 EL-JY-II型计算机组成原理实验系统一套,排线若干。 三、实验内容 学习静态 RAM的存储方式,往 RAM的任意地址里存放数据,然后读出并检查结果是否正确。 四、实验操作过程 开关控制操作方式实验 注:为了避免总线冲突,首先将控制开关电路的所有开关拨到输出高电平“ 1”状态,所有对应的指示灯亮。 本实验中所有控制开关拨动,相应指示灯亮代表高电平“ 1”,指示灯灭代表低电平“ 0”。连线时应注意:对于横排座,应使排线插头上的箭头面向自己插在横排座上;对于竖排座,应使排线插头上的箭头面向左边插在竖排座上。 1、按图 3-1 接线图接线: MDJ1MDJ2MAJ1 BD15,,BD8BD7,,BD0 主存储器电路 AD7,,AD0 WE 数据总线 CE地址总线 DIJ2DIJ1 WR CE 微控器接口控 控 DIJ-G 制WE WEI 数据输入电路制 总 开 线LAR LARI 关 fin f/8T3 C-G 脉冲源T3 图 3- 1 实验三开关实验接线 2、拨动清零开关CLR,使其指示灯显示状态为亮—灭—亮。 3、往存储器写数据:

以往存储器的( FF)地址单元写入数据“ AABB”为例,操作过程如下: (操作 )(显示 )(操作 ) 1.C –G=1 https://www.doczj.com/doc/ae17715363.html,R=1 2.置数据输入电路绿色数据总线显 D15—D0=示灯显示 2.T3=1 “ 000000001111“ 000000001111(按【单步】)1111”1111” 3.CE=1 4.C-G=0(显示 ) 地址寄存器 电路黄色地 址显示灯显 示 ―11111111 ‖ (操作 ) 1.C-G=1 2.置数据输入电路 D15 —D0= “ 10101010101110 11” https://www.doczj.com/doc/ae17715363.html,R=0 4.C-G=0 (显示 )(操作 ) 1.WE=1 绿色数据总线显 2.CE=0 示灯显示 3.T3=1 “ 1010101010111(按【单步】 ) 011” 4 WE=0 4、按上述步骤按表3- 2 所列地址写入相应的数据 地址(二进制)数据(二进制) 000000000011001100110011 011100010011010000110100 010000100011010100110101 010110100101010101010101 101000110110011001100110 110011111010101110101011 111110000111011101110111 111001101001110110011011 表 3-2 5、从存储器里读数据: 以从存储器的( FF)地址单元读出数据“ AABB”为例,操作过程如下: (操作 )(显示 )(操作 ) 1.C-G=1 https://www.doczj.com/doc/ae17715363.html,R=1 2. 置数据输入电路绿色数据总线显 D15—D0=示灯显示 2.T3=1 "0000000011111111”―0000000011111(按【单步】) 3.CE=1111” 4.C-G=0 (显示 ) MAR电路黄 色地址显示 灯显示 ―11111111 ‖ (操作 )(显示 ) 1.C-G=1 https://www.doczj.com/doc/ae17715363.html,R=0绿色数据总线显 3.WE=0示灯显示 4.CE=0“ 1010101010111 011” 6、按上述步骤读出表3-2 数据,验证其正确性。 五、实验结果及结论 通过按照实验的要求以及具体步骤,对数据进行了严格的检验,结果是正确的,具体数据如图所示:

传媒--数据通路实验报告5

实验四总线及数据通路组成实验 一、实验目的 1、理解总线的概念、作用和特性。 2、掌握用总线控制数据传送的方法。 3、进一步熟悉教学计算机的数据通路。 4、掌握数字逻辑电路中故障的一般规律,以及排除故障的一般原则和方法。 5、锻炼分析问题与解决问题的能力,在出现故障的情况下,独立分析故障现象,并排除故障。 二、实验设备 1、TWL-PCC计算机组成原理教学实验系统一台,排线若干。 2、PC微机一台(选配)。 三、实验原理 总线用来连接计算机中的各个功能部件,是计算机的各部件之间传输信息的公共通路,包括传输数据信息的逻辑电路、管理信息传输协议的逻辑线路和物理连线。分时和共享是总线的两大特征。所谓共享,是指在总线上可以挂接多个部件,它们都可以使用这一信息通路来和其他部件传输信息。所谓分时,是指同一总线在同一时刻,只能有一个部件占领总线发送信息,其他部件的信息不能发送到总线上,逻辑上等同于不存在,只有该部件信息发送完毕释放总线后才能申请使用。但在同一时刻可以有多个部件接收信息。 本实验的数据通路图如图6.1所示。 本实验将输入设备,输出设备,存储器,通用寄存器等单元都挂至总线上,这些设备都需要有三态输出控制,各个部件都有自己的输入输出控制信号,通过对这些信号的有序控制,就可以正确地通过总线把数据传送给不同的部件。各个部件的控制信号都需要是连接到“开关组单元”的各个独立的二进制开关上来手动控制。连接到总线上的地址寄存器只有输入线,其输出直接连接到存储器的地址用于锁存需读写的存储器的地址。 本实验中时序信号用到了T3和T4信号,可将“信号源单元”的时钟输出SY接到“时序发生器单元”的Φ上,将OT3和OT4分别连接到“总线单元”中相应的T3和T4端上,二进制开关拨至“单步”状态,然后每按动一次启动键START,就会顺序产生一个T3、T4时序信号。 根据挂接在总线上的几个部件,现设计一个简单的实验要求:将存储器10H地址存入数据93H,然后将存储器10H地址单元中存储的数据送输出单元显示,同时也存入到R0寄存器中。

计算机组成原理实验三-存储器读写和总线控制实验

《计算机组成原理》 实验报告 实验三存储器读写和总线控制实验

一、实验目的 1、掌握半导体静态随机存储器 RAM 的特性和使用方法。 2、掌握地址和数据在计算机总线的传送关系。 3、了解运算器和存储器如何协同工作。 二、实验环境 EL-JY-II 型计算机组成原理实验系统一套,排线若干。 三、实验内容与实验过程及分析(写出详细的实验步骤,并分析实验结果) 实验步骤: 开关控制操作方式实验 注:为了避免总线冲突,首先将控制开关电路的所有开关拨到输出高电平“1”状态,所有对应的指示灯亮。 本实验中所有控制开关拨动,相应指示灯亮代表高电平“1”,指示灯灭代表低电平“0”。连线时应注意:对于横排座,应使排线插头上的箭头面向自己插在横排座上;对于竖排座,应使排线插头上的箭头面向左边插在竖排座上。 1、按图 3-5 接线图接线: 2、拨动清零开关 CLR,使其指示灯显示状态为亮—灭—亮。 3、往存储器写数据: 以往存储器的(FF)地址单元写入数据“AABB”为例,操作过程如下:

4、按上述步骤按表 3-2 所列地址写入相应的数据 5、从存储器里读数据: 以从存储器的(FF)地址单元读出数据“AABB”为例,操作过程如下: 6、按上述步骤读出表 3-2 数据,验证其正确性。 实验线路图如下所示

四、实验总结(每项不少于20字) 存在问题:由于对操作系统不熟悉和本实验对线路需求大,排线出现错误;读取数据时也出现错误。 解决方法:在实验之前检查线路,发现错误及时纠错;将读取错误的数据进行重新存储,再验证查询。 收获:了解了半导体静态随机存储器RAM的特性和使用方法、地址和数据在计算机总线的传送关系。 五、教师批语

数据通路实验报告

实验3 存储器实验 预习实验报告 疑问: 1、数据通路是干嘛的? 2、数据通路如何实现其功能? 3、实验书上的存储器部分总线开关接在高电平上,是不是错了? 实验报告 一、波形图: 参数设置: Endtime:2.0us Gridsize:100.0ns 信号设置: clk:时钟信号,设置周期为100ns占空比为50%。 bus_sel: sw|r4|r5|alu|pc_bus的组合,分别代表的是总线(sw_bus)开关,将 存储器r4的数据显示到总线上,将存储器r5的数据显示到总线上, 将alu的运算结果显示到总线上,将pc的数据打入AR中二进制 输入,低电平有效。 alu_sel:m|cn|s[3..0]的组合,代表运算器的运算符号选择,二进制输入,高 电平有效。 ld_reg:lddr1|lddr2|ldr4|ldr5|ld_ar的组合,分别表示将总线数据载入寄存器 r1,r2,r4, r5或AR中,二进制输入,高电平有效。 pc_sel: pc_clr|ld|en的组合,分别代表地址计数器PC的清零(pc_clr)、装 载(pc_ld)和计数使能信号(pc_en),二进制输入,低电平有效。we_rd:信号we和rd的组合,分别代表对ram的读(we)与写(rd)的操作, 二进制输入,高电平有效 k:k [7]~ k [0],数据输入端信号,十六进制输入。 d: d[7]~d[0],数据输出中间信号,十六进制双向信号。 d~result: d [7] result ~d[0] result,最终的数据输出信号,十六进制输出。ar: ar[7]~ ar[0],地址寄存器AR的输出结果,十六进制输出。 pc: pc [7]~ pc [0],地址计数器PC的输出结果,十六进制输出。 仿真波形

CAN总线实验报告

CAN总线实验报告 实验一SJA1000初始化 一、实验要求: 正确完成对SJA1000初始化,初始化成功后用LED点亮,表示初始化完成;否则LED 不亮。 二、实验内容: 1.实现SJA1000的初始化设置 2.理解SJA1000的相关寄存器的设置。 三、实验系统硬件设计: 图1是89C51与SJA1000连接图。MCU与SJA1000连接图。 选择适合的电阻和电容。此实验选择了51KR电阻与1UF电容,开机后给电容充电,电容电压由0V升至5V,SJA1000可靠复位。 I/O复位,由单片机某一I/O引脚控制SJA1000复位引脚,使单片机在可靠复位之后完成SJA1000的复位,避免时间偏差。

芯片复位,可以通过外围芯片进行复位。 四、实验系统软件设计 程序开始采用宏定义,初始化开始。设置模式寄存器进入复位模式;然后配置时钟分频寄存器(CDR)选择PeliCAN模式,关闭CLKOUT输出;然后是输出控制寄存器(OCR),再设置位定时(BTR0/BTR1)6MHz晶振,波特率30Kbps;然后配置验收滤波;最后再次设置模式寄存器推出复位状态并且设置单验收滤波,然后判断状态寄存器是否位OXOC以确认初始化是否成功,如果成功则点亮LED,否则重新初始化。 图1系统软件设计框图

程序如下: MODE EQU 0DE00H CMR EQU 0DE01H ;命令寄存器 SR EQU 0DE02H ;状态寄存器 IR EQU 0DE03H ;中断寄存器 IER EQU 0DE04H ;中断使能寄存器 BTR0 EQU 0DE06H ;总线定时寄存器一 BTR1 EQU 0DE07H ;总线定时寄存器二 OCR EQU 0DE08H ;输出控制寄存器 ALC EQU 0DE0BH ;仲裁丢失捕捉寄存器 ECC EQU 0DE0CH ;错误代码捕捉寄存器 TXERR EQU 0DE0FH ;发送错误计数器 ACR0 EQU 0DE10H ;验收代码寄存器0 ACR1 EQU 0DE11H ; 1 ACR2 EQU 0DE12H ; 2 ACR3 EQU 0DE13H ; 3

总线控制实验报告

实验四:总线控制实验报告 一、实验目的: 1.理解总线的概念及其特性; 2.掌握总线传输控制特性; 二、实验设备 TDN-CM+计算机组成原理教学实验系统一台,排线若干。 三、实验内容 1. 总线的基本概念 总线是多个系统内部之间进行数据传输的公共通路,是构成计算机系统的骨架。借助总线连接,计算机在系统各个部件之间实现传送地址、数据和控制信息的操作。因此,所谓总线就是能为多个部件服务的一组公共信息线。 1.实验原理 实验所用总线传输实验框图如图7-1所示,它将几种不同的设备挂至总线上,有存储器、输入设备、输出设备、寄存器。这些设备都需要有三态输出控制,按照传输要求恰当有序的控制它们,就可实现信息传输。 实验要求 根据挂在总线上的几个基本部件,设计一个简单的流程: ⑴输入设备将一个数打入R0寄存器; ⑵输入设备将另一个数打入地址寄存器; ⑶将R0寄存器中的数写入到当前的存储器中; ⑷将当前地址存储器中的数用LED数码管显示。

1.实验步骤 ⑴按照图7-2实验接线图进行接线。 ⑵具体操作步骤如下:

初始状态应设为:关闭所有的三态门(SW-B=1,CE=1,R0-B=1),其他控制信号为:LDAR=0,LDR0=0,W/R(RAM)=1,W/R(LED)=1 第一组数据:(R0)=11H,(AR)=21H LED显示的数据为: 第二组数据:(R0)=A5H,(AR)=22H LED显示的数据为: 第三组数据:(R0)=FCH,(AR)=23H LED显示的数据为: 注意事项: 1、所有导线使用前须测通断; 2、不允许带电接线; 3、“0”——亮“1”——灭; 4、注意连接线的颜色、数据的高低位。 四、实验总结 实验过程出现了很多问题,只有在实验前做好充分准备,才能减少在实验过程中遇到的难题。实验主要是使我们理解总线的概念及其特性,并掌握总线传输控制特性,这对我们深入了解计算机组成原理这门课程更加有利。

STM32的CAN总线中继器设计及应用_潘铜

*基金项目:西安工程大学研究生创新基金资助(chx100813)。 STM32的CAN 总线中继器设计及应用 * 潘铜,叶小荣,张娜,范建峰 (西安工程大学电子信息学院,西安710048) 摘要:CA N 中继器是系统组网的关键,通过中继器可以扩展节点的数量和实现不同波特率之间的通信。本文充分利用ST M 32F105内部集成双bxCAN 控制器的特性,设计出一款基于ST M 32的单芯片CAN 总线中继器,并将其应用到齐玛印花机上。实践证明该方法有效可行,不仅实现了齐玛印花机的改造,还降低了系统设备的成本。关键词:CA N 总线;中继器;ST M 32F105;齐玛印花机中图分类号:T P336 文献标识码:A Design an d Application of CAN Bus Repeater Based on STM32 Pan Tong ,Ye Xiaorong ,Zhang Na ,Fan Jianfeng (Elect ronic Information College ,Xi 'an Polytechnic University ,Xi an 710048,China ) Abstract :CAN repeater is the key to netw orking .The repeater can expand the num ber of nodes and realize communication betw een dif -ferent baud rates .M aking full use of internal integrated dual CAN controllers of S TM 32f105,the paper designs a single -chip CAN bus repeater based on STM32.The repeater can be applied to the Zimmer printing machine .The result proves that the method is effective and feasible ,not only realizing the transformation of Zimmer printing machine but also reducing the cost of system equipment .Key words :CAN bus ;repeater ;STM32F105;Zimmer printing machine 引 言 CAN 总线是一种多主方式的串行通信总线,具有优良的稳定性、实时性、远程通信能力以及超强的硬件CRC 纠错等特性;CAN 总线技术的应用不再仅限于汽车行业,而是扩展到了机械、纺织、控制等行业,并被公认为是最有前途的现场总线之一。然而由于受制于CAN 收发器,CAN 总线通信距离和网络中节点数被分别限制在10km 和110个之内。但是在稍大型的CAN 总线系统中,这往往是不够的,这时就需要用CAN 总线中继器对CAN 总线网络进行扩展。 CAN 中继器是系统组网的关键技术设备之一,使用中继器可以提高网络设计的灵活性,并且通过中继器还可以连接两个不同波特率的CAN 总线网络;在两个网络间进行数据转发,极大地扩展其使用范围。基于此,本文设计出一款基于ST M 32的CA N 总线中继器,并将其应用到齐玛印花机上,完成圆网印花机通信系统的工程改造。 1 系统整体方案及硬件实现 以往的CAN 中继器设计大多采用M CU 加CAN 控制器的双芯片或多芯片解决方案。例如,参考文献[1]使用1片M CU 加2路CAN 控制器的结构实现中继器;参考文献[2]使用双M CU 结构设计CA N 总线中继器;参考文献[3]使用独立双CAN 控制器作为2路CAN 接口的控制器来设计CA N 中继器。上述方案电路复杂,MCU 与CA N 控制器通过外部总线连接,数据吞吐速度慢,整体可靠性也比较差。 意法半导体的STM 32是以A RM Cortex -M 3为内核的32位微处理器,主频可高达72M H z ,内置Flash 和SRAM ,其容量可分别高达512KB 和64K B ;内部集成双bxCA N 控制器。它支持CAN 协议V2.0A 和V2.0B ,波特率最高可达1M b /s ,具有3个发送邮箱和2个3级深度的FIFO ,能够以最小的CPU 负荷来高效处理大量收到的报文。基于此,选用STM 32F105作为主控制器,设计出一款基于STM 32的CAN 总线中继器。其整体方案如图1所示。 由于STM 32F105内部集成了双路CA N 控制器,CA N 中继器的节点电路变得十分简单,其硬件电路如图

总线控制实验

《计算机组成与结构》课程实验报告 实验名称基本模型机设计与实现实验序号六实验日期2011.11.29 姓名王涛院系计算机班级091041B1 学号0910411113 专业计算机科学与技术指导教师蒯锐成绩 一、实验目的及要求 l、熟悉用微程序控制器控制模型机的数据通路。 2、学习设计与调试计算机的基本步骤及方法。 三、实验内容 l、实验原理 本实验在实验七基本模型机的基础上增加移位控制电路,实现移位控制运算.本实验数据通路如图3- 14所示a ㈥买验机系统中增加设计4条移位运算指令 ①左环移RL; ②带进位左环移RLC; 一——一一 ③右环移RR; ④带进位右环移RRC。 指令格式如下: 助记符操作码 RR 01010000 RRC 01100000 RL 01110000 RLC 10000000 说明: ·以上4条指令都为单字节指令。 ·RR是将RO寄存器的内容循环右移一位,。 ·RRC是将RO寄存器的内容带进位右移一位,它将RO寄存器最低位移入进位,同时将进位位移至RO寄存器的最高位。 ·RL是将RO寄存器的数据循环左移一位。 ·RLC是将RO寄存器中的数据带进位循环左移一位e (2)带移位运算的模型机监控软件的设计 本模型机监控软件主要完成从输入设备读入数据,进行算术运算、移位运算后,将结果存入内存的某个单元,最后通过输出设备输出结果。 监控软件详细如下:

地址内容助记符说明 00000000 00000000 IN ; "输入开关量"->R0 00000001 00010000 ADD[0DH] ; R0[0DH]->R0 00000010 00001101 00000011 10000000 RLC 00000100 00000000 IN ; "输入开关量"->R0 00000101 01100000 RRC 00000110 01110000 RL 00000111 00100000 STA[0EH] 00001001 00110000 ;R0->[0EH] 00001001 00110000 OUT[0EH] 00001010 00001110 ;[0EH]->BUS 00001011 01000000 JMP 00H ; 00H->PC 00001100 00000000 00001101 01000000 ;自定义数据 00001110 ;结果存放单元 (4)根据微程序流程图设计微程序并转化成十六进制文件格式(文件名C8JHE2),具体内容如下: 程序: $ P00 00 $ P01 10 $ P02 0D $ P03 80 $ P04 00 $ P05 60 $ P06 70 $ P07 20 $ P08 0E $ P09 30 $ P0A 0E $ P0B 40 $ P0C 00 $ P0D 40 微程序: $ MO0 088105 $ M01 82ED05 $ M02 50C004 $ M03 04E004 $ M04 058004 $ M05 06A205 $M06 019A95 $ M07 0FE004 $M08 8AED05 $M09 8CED05

计算机组成原理 实验六 总线数据传输控制实验

实验六总线数据传输控制实验 一、实验目的 1.理解总线的概念,了解总线的作用和特性。 2.掌握用总线传输数据的控制原理和方法。 二、实验原理 1.74LS374芯片的逻辑功能 2.了解通用寄存器部件的逻辑功能 三、实验过程 1.连线 1)连接实验一(输入、输出实验)的全部连线。 2)按逻辑原理图连接寄存器单元(REG UNIT)的B-R0,B-R1正脉冲信号。 3)连接寄存器单元(REG UNIT)的R0-B、R1-B到KA、KB,用KA、KB控制R0-B、 R1-B这两个低电平有效信号 4)连接运算器单元(ALU UNIT)S1、S0、M、299-B。 5)按逻辑原理图连接时钟单元(CLOCK UNIT)与微程序控制单元(MAIN CONTROL UNIT)的T4。

2.数据送R0操作过程 1)首先把手动控制开关单元(MANUAL UNIT)的控制开关全部拨到无效状态。 2)在输入数据开关拨一个实验数据(如“00001001”,即16进制的09H),把I/O-R 把实验数据送总线。 3)把B-R0信号拨动一下,即实现“1-0-1”,产生一个正脉冲,实验数据由总 线送0号通用寄存器(R0)保存。 4)把输入数据开关上的实验数据拨回到全0,拨上I/O-R控制开关,切断输入 数据与总线的联系,这时总线显示灯为“11111111”,处于悬空状态。 3.数据从R0读出送移位寄存器操作过程 1)拨下KA控制开关,产生R0-B 信号,把实验数据从R0送总线,总线显示灯 为“00001001”,显示R0寄存器状态 2)把299-B ,S1,S0,M拨成1111,确保时钟单元(CLOCK UNIT)的STEP/RUN 开关处于“STEP”状态,按一下“START”键发T4脉冲,把R0中的数据通过总线送入74LS299移位寄存器中。 3)拨上KA控制开关,使R0-B 信号无效,切断R0输出数据与总线的联系,总 线显示灯为“11111111”,处于悬空状态。 4.数据经移位寄存器移位后送R1的操作过程 1)把299-B ,S!,S0,M拨成0101,按下“START”键发T4脉冲,对74LS299移位寄存器中的数据进行一次带进位的循环右移,这时从总线上可看到移位后的实验数据。 2)把B-R1信号拨动一下,即实现“0—1—0”,产生一个正脉冲,实验数据通过总线送1号通用寄存器(R1)保存。 3)拨上299-B 控制开关,切断74LS299移位寄存器与总线的联系。

接口实验报告

接口实验课程结课报告 学号、专业:控制工程 1508202024 姓名:** 报告题目:基于STM32的实时时钟设计 指导教师:潘明 所属学院:电子工程与自动化学院 成绩评定 教师签名 桂林电子科技大学研究生院 2016年6月4日

摘要 本设计以STM32F103芯片为控制核心,利用其内部的RTC设计了一个实时时钟。本系统主要由以下几个部分组成:微处理器,实时时钟模块,显示模块,调节模块。其中MCU 采用STM32F103芯片,实时时钟采用RTC实时时钟,显示模块为4.3寸的TFTLCD显示屏,采用独立按键调节。另外整个系统是在系统软件控制下工作的,能实现年、月、日、时、分、秒的实时显示及闹钟功能,并增加了温度显示。 关键字:STM32F103;实时时钟(RTC);TFTLCD显示屏

Abstract This design with STM32F103 chip as the control core, using its internal RTC design a real-time clock. The system is mainly composed of the following parts: microprocessor, real-time clock module, display module, control module. MCU using STM32F103 chip, real-time clock using RTC , display module use the 4.3 inch TFTLCD display screen, using independent buttons to adjust . In addition, the whole system is under the control of the system software,and accomplish the year, month, day, hour, minute, second real-time display and alarm clock function,and added to temperature display. Key words: STM32F103;real time clock(RTC); TFTLCD display screen

实验4 数据通路 实验报告

班级:计算机科学与技术3班 学号:20090810310 姓名:康小雪 日期:2011-10-14 实验3 存储器实验 预习实验报告 疑问: 1、数据通路是干嘛的? 2、数据通路如何实现其功能? 3、实验书上的存储器部分总线开关接在高电平上,是不是错了? 实验报告 一、波形图: 参数设置: Endtime:2.0us Gridsize:100.0ns 信号设置: clk:时钟信号,设置周期为100ns占空比为50%。 bus_sel: sw|r4|r5|alu|pc_bus的组合,分别代表的是总线(sw_bus)开关,将 存储器r4的数据显示到总线上,将存储器r5的数据显示到总线上, 将alu的运算结果显示到总线上,将pc的数据打入AR中二进制 输入,低电平有效。 alu_sel:m|cn|s[3..0]的组合,代表运算器的运算符号选择,二进制输入,高 电平有效。 ld_reg:lddr1|lddr2|ldr4|ldr5|ld_ar的组合,分别表示将总线数据载入寄存器 r1,r2,r4, r5或AR中,二进制输入,高电平有效。 pc_sel: pc_clr|ld|en的组合,分别代表地址计数器PC的清零(pc_clr)、装 载(pc_ld)和计数使能信号(pc_en),二进制输入,低电平有效。we_rd:信号we和rd的组合,分别代表对ram的读(we)与写(rd)的操作, 二进制输入,高电平有效 k:k [7]~ k [0],数据输入端信号,十六进制输入。 d: d[7]~d[0],数据输出中间信号,十六进制双向信号。 d~result: d [7] result ~d[0] result,最终的数据输出信号,十六进制输出。ar: ar[7]~ ar[0],地址寄存器AR的输出结果,十六进制输出。 pc: pc [7]~ pc [0],地址计数器PC的输出结果,十六进制输出。 仿真波形

基于STM32的CAN通讯,已在实际项目中应用

与本程序代码相关部分的原理图及PCB,基于STM32F103VET6,已在项目中应用。

开头篇:STM32的CAN波特率计算 STM32里的CAN 支持2.0A,2.0B, 带有FIFO,中断等, 这里主要提一下内部的时钟应用。 bxCAN挂接在APB1总线上,采用总线时钟,所以我们需要知道APB1的总线时钟是多少。我们先看看下图,看看APB1总线时钟: APB1时钟取自AHB的分频, 而AHB又取自系统时钟的分频, 系统时钟可选HSI,HSE, PLLCLK, 这个在例程的RC设置里都有的,然后再看看有了APB1的时钟后,如何算CAN的总线速率, 先看下图:

有了上边的这个图,基本就清楚了: 总线时钟MHz (3+TS1+TS2)*(BRP+1) ====================================================================== 下面是我的计算: CAN_InitStructure.CAN_SJW = CAN_SJW_1tq; CAN_InitStructure.CAN_BS1 = CAN_BS1_3tq; 注意//#define CAN_BS1_3tq ((uint8_t)0x02) /*!< 3 time quantum */ CAN_InitStructure.CAN_BS2 = CAN_BS2_5tq; CAN_InitStructure.CAN_Prescaler = 4;//2 nominal bit time(3+5+1)tq=9tq 关于分频系数,查看 system_stm32f10x.c下面的static void SetSysClockTo72(void) 函数:/* HCLK = SYSCLK */ /* PCLK2 = HCLK */ /* PCLK1 = HCLK/2 */ 所以can时钟 72MHZ/2/4=9 Mhz,tq=1/36Mhz 波特率为 1/nominal bit time= 9/9=1MHZ ===================================================================== void CAN_Configuration(void) { CAN_InitTypeDef CAN_InitStructure; CAN_FilterInitTypeDef CAN_FilterInitStructure; /* CAN register init */ CAN_DeInit(); CAN_StructInit(&CAN_InitStructure); /* CAN cell init */ CAN_InitStructure.CAN_TTCM=DISABLE; CAN_InitStructure.CAN_ABOM=DISABLE;

STM32的can总线实验心得

STM32的can总线实验心得 标签: 总线心得实验2010-09-01 21:08 https://www.doczj.com/doc/ae17715363.html,/my/space.php?uid=2 29870&do=blog&id=37832 工作模式 bxCAN有3个主要的工作模式:初始化、正常和睡眠模式。 初始化模式 *软件通过对CAN_MCR寄存器的INRQ位置1,来请求bxCAN进入初始化模式,然后等待硬件对CAN_MSR寄存器的INAK位置1来进行确认。 *软件通过对CAN_MCR寄存器的INRQ位清0,来请求bxCAN退出初始化模式,当硬件对CAN_MSR 寄存器的INAK位清0就确认了初始化模式的退出。*当bxCAN处于初始化模式时,报文的接收和发送都被禁止,并且CANTX引脚输出隐性位(高电平)。初始化CAN控制器,软件必须设置CAN_BTR和CAN_MCR寄存器。 正常模式 在初始化完成后,软件应该让硬件进入正常模式,同步CAN总线,以便正常接收和发送报文。软件通过对INRQ位清0来请求从初始化模式进入正常模式,

然后要等待硬件对INAK位清0来确认。在跟CAN总线取得同步,即在CANRX引脚上监测到11个连续的隐性位(等效于总线空闲)后,bxCAN才能正常接收和发送报文。 过滤器初值的设置不需要在初始化模式下进行,但必须在它处在非激活状态下完成(相应的FACT 位为0)。而过滤器的位宽和模式的设置,则必须在进入正常模式之前,即初始化模式下完成。 睡眠模式(低功耗) *软件通过对CAN_MCR寄存器的SLEEP位置1,来请求进入这一模式。在该模式下,bxCAN的时钟停止了,但软件仍然可以访问邮箱寄存器。 *当bxCAN处于睡眠模式,软件想通过对CAN_MCR 寄存器的INRQ位置1,来进入初始化式,那么软件必须同时对SLEEP位清0才行。 *有2种方式可以唤醒(退出睡眠模式)bxCAN:通过软件对SLEEP位清0,或硬件检测CAN总线的活动。 工作流程 那么究竟can是怎样发送报文的呢?

相关主题
文本预览
相关文档 最新文档