Download - CAN-bus 应用教程
传递价值 成就你我 http://www.embedcontrol.com
致远电子
CAN-bus CAN-bus 应用教程应用教程
LPC2000 系列 ARM CAN 应用
传递价值 成就你我 http://www.embedcontrol.com
致远电子
LPC ARM LPC ARM 简介简介ARM 处理器简介嵌入式系统简介嵌入式开发流程简介相关开发工具简介
传递价值 成就你我 http://www.embedcontrol.com
致远电子
ARM ARM 处理器简介处理器简介
ARM 是 Advanced RISC Machines 的缩写,它是一家微处理器行业的知名企业,该企业设计了大量高性能、廉价、耗能低的 RISC (精简指令集)处理器。
公司的特点是只设计芯片,而不生产。它将技术授权给世界上许多著名的半导体、软件和 OEM 厂商,并提供服务。
ARM 公司简介
传递价值 成就你我 http://www.embedcontrol.com
致远电子
ARM ARM 处理器简介处理器简介
将技术授权给其它芯片厂商
形成各具特色的 ARM 芯片
. . .
ARM 公司简介
传递价值 成就你我 http://www.embedcontrol.com
致远电子
ARM ARM 处理器简介处理器简介ARM 处理器的版本 V1 ~ V5目前流行的 ARM 处理器 ARM7 ~ ARM1
0
SecurCore , Xscale
传递价值 成就你我 http://www.embedcontrol.com
致远电子
ARM7TDMIARM7TDMI ARM7TDMI 基于 ARM 体系结构 V4 版本,是目前低端的 ARM 核。具有广泛的应用,其最显著的应用为数字移动电话。
支持高密度 16 位的 Thumb 指令集;支持片上调试;支持 64 位乘法;支持 EmbededICE 观察硬件;
ARM7TDMI 的可综合( synthesizable )版本(软核),对应用工程师来说其编程模型与 ARM7TDMI 一致;
ARM7 T D M I - S
传递价值 成就你我 http://www.embedcontrol.com
致远电子
ARM7TDMIARM7TDMI基本特性
ARM7TDMI 处理器使用流水线来增加处理器指令流的速度。这样可使几个操作同时进行,并使处理和存储器系统连续操作,能提供 0.9MIPS/MHz的指令执行速度。
ARM7TDMI 的流水线分 3 级,分别为:
取指译码执行
三级流水线 , 实现高指令吞吐
传递价值 成就你我 http://www.embedcontrol.com
致远电子
ARM7TDMIARM7TDMI结构简单 , 响应迅速
精简指令集计算机( RISC ),比复杂指令集计算机( CISC )要简单得多。小的 , 高性价比的处理器宏单元使其同时具备低功耗,中断响应实时的特点
灵活的存储器访问方式
对存储器的访问可以是字节( 8Bit ),半字( 16Bit )和字( 32Bit )
传递价值 成就你我 http://www.embedcontrol.com
致远电子
嵌入式系统简介嵌入式系统简介
监控程序
操作系统
实时操作系统
分时操作系统
多道批处理操作系统
时 间 先 后
适用于多个用户共享系统资源
适用于计算中心等较大的计算机系统
适用于嵌入式设备和有实时性要求的系统中
嵌入式系统的发展
传递价值 成就你我 http://www.embedcontrol.com
致远电子
嵌入式系统简介嵌入式系统简介实时系统的特点
实时操作系统是事件驱动的,能对来自外界的作用和信号在限定的时间范围内作出响应。它强调的是实时性、可靠性和灵活性 , 与实时应用软件相结合成为有机的整体起着核心作用 , 由它来管理和协调各项工作
操作系统是计算机中最基本的程序。操作系统负责计算机系统中全部软硬资源的分配与回收、控制与协调等并发的活动;操作系统提供用户接口,使用户获得良好的工作环境;操作系统为用户扩展新的系统功能提供软件平台。
传递价值 成就你我 http://www.embedcontrol.com
致远电子
嵌入式系统简介嵌入式系统简介
中断服务程序处理异步事件,这部分可以看成前台行为,前台也叫中断级。时间相关性很强的关键操作一定是靠中断服务程序来保证的。
循环中调用相应的函数完成相应的操作,这部分可以看成后台行为,后台也可以叫做任务级。这种系统在处理的及时性上比实际可以做到的要差。
ISR
ISR
ISRISR
后台 前台
中断服务程序 时间
传递价值 成就你我 http://www.embedcontrol.com
致远电子
嵌入式系统简介嵌入式系统简介
前后台系统
ISR 任务
ISR
非占先操作系统
任务A
任务B
任务C
ISR
占先操作系统
任务A
任务B
任务C
传递价值 成就你我 http://www.embedcontrol.com
致远电子
LPC2000LPC2000 系列微控制器系列微控制器概述
LPC2000 系列微控制器基于 ARM7TDMI-S CPU内核。支持 ARM 和 Thumb指令集,芯片内集成丰富外设,而且具有非常低的功率消耗。使该系列微控制器特别适用于工业控制、医疗系统、访问控制和 POS 机等场合。
传递价值 成就你我 http://www.embedcontrol.com
致远电子
器件型号 引脚数 片内 RAM 片内 Flash 10 位 AD通道数 CAN控制器 备注LPC2114 64 16KB 128KB 4 - -LPC2124 64 16KB 256KB 4 - -LPC2210 144 16KB - 8 - 带外部
存储器接口
LPC2212 144 16KB 128KB 8 -LPC2214 144 16KB 256KB 8 -LPC2119 64 16KB 128KB 4 2 -LPC2129 64 16KB 256KB 4 2 -LPC2194 64 16KB 256KB 4 4 -LPC2290 144 16KB - 8 2 带外部
存储器接口
LPC2292 144 16KB 256KB 8 2
LPC2294 144 16KB 256KB 8 4
LPC2131 64 8KB 32KB 8 - -LPC2132 64 16KB 64KB 8 -
带 1路DAC
LPC2134 64 16KB 128KB 双 8路 -LPC2136 64 16KB 256KB 双 8路 -LPC2138 64 32KB 512KB 双 8路 -
LPC2000 系列器件信息
传递价值 成就你我 http://www.embedcontrol.com
致远电子
LPC2000 系列芯片内部框图LPC2000 系列微控制器包含四大部分: ARM7TDMI-S
CPU
AHB To VPB桥 EMC
VIC
I2C串行接口
SPI串行接口
UART0 & 1
CAN
看门狗定时器
系统控制
外部中断
TIMER0/1
ADC
通用 I/O
PWM0
实时时钟
SRAM
Flash
AHB总线
ARM7 局部总线系统功能
ARM7TDMI-S CPUARM7局部总线及相关部件AHB高性能总线及相关部件VLSI 外设总线及相关部件
传递价值 成就你我 http://www.embedcontrol.com
致远电子
LPC2000LPC2000 系列微控制器系列微控制器系统控制模块
系统控制模块包括一些系统构件和控制寄存器,它们具有众多与芯片内其它外设无关的功能。系统控制模块包括:系统时钟单元、复位、外部中断输入、存储器映射控制、功率控制和唤醒定时器。
传递价值 成就你我 http://www.embedcontrol.com
致远电子
LPC2000LPC2000 系列微控制器系列微控制器系统时钟
CPU正常工作需要有合适的时钟信号,包括 ARM7内核使用的 CCLK时钟,和芯片外设使用的 PCLK时钟
通过 LPC2000 系列微控制器的时钟产生单元产生 ARM7内核和芯片外设正常工作所需要的时钟节拍
传递价值 成就你我 http://www.embedcontrol.com
致远电子
LPC2000LPC2000 系列微控制器系列微控制器
ARM7 核 桥 外设
时钟产生
FCCLK FPCLK
FOSC
CPU时钟结构
系统时钟概述
传递价值 成就你我 http://www.embedcontrol.com
致远电子
LPC2000LPC2000 系列微控制器系列微控制器 时钟产生单元
时钟产生单元包括晶体振荡器、锁相环振荡器( PLL)和 VPB分频器。
PLL晶体振荡器
VPB分频器
FCCLK
FPCLK
FOSC
10 ~ 25MHz
10 ~ 60MHz
传递价值 成就你我 http://www.embedcontrol.com
致远电子
LPC2000LPC2000 系列微控制器系列微控制器功率控制
支持两种节电模式:空闲模式和掉电模式。另外还具有外设的功率控制特性,允许独立关闭应用中不需要的外设,这样可以进一步降低功耗。
空闲模式-内核停止运行直到发生中断或者复位, CCLK 不停
掉电模式-处理器完全停止,振荡器关闭,功耗几乎为零
外设的功率控制-控制外设的电源使能
传递价值 成就你我 http://www.embedcontrol.com
致远电子
LPC2000LPC2000 系列微控制器系列微控制器中断控制器 ARM7TDMI内核具有两个中断输入,分别为 IRQ中断和 FIQ中断。但是芯片内部有许多中断源,最多可以有 32个中断输入请求。向量中断控制器的作用就是允许哪些中断源可以产生中断、可以产生哪类中断、产生中断后执行哪段服务程序。
19 个中断输入
VIC将 32个中断输入进行分配13 个未使用
FIQ中断
向量 IRQ中断
非向量 IRQ中断
中断源 0
中断源 1
……
中断源 18
传递价值 成就你我 http://www.embedcontrol.com
致远电子
LPC2000LPC2000 系列微控制器系列微控制器中断控制器
VICVectCntl0 ~ 15 -向量中断源优先级
VICVectAddr0 ~ 15 -各级中断向量地址
VICDefVectAddr -非向量中断地址
VICIntEnable-中断使能
VICIntEnClr -中断禁能
VICVectAddr -中断向量地址
传递价值 成就你我 http://www.embedcontrol.com
致远电子
LPC2000CANLPC2000CAN 控制器控制器特点
操作和 SJA1000 相似,易于上手三个独立发送缓冲区,提高数据发送效率更人性化的验收过滤机制,增强对离散 ID 的验收支持更方便的高级应用软件 ( 协议 )设计, ASM 、 C/C++支持。
传递价值 成就你我 http://www.embedcontrol.com
致远电子
LPC2000LPC2000 系列系列 CANCAN 控制器控制器 32 位的 SJA1000
CAN打开 控制器模块电源
设置总线分频器( ) CAN 波特率
配置验收过滤器
设置出错警告值
CAN配置 中断使能
配置发送优先级( ) I D/ Tx 帧 优先级
CAN设置 控制器模式( ) / 只听 正常
配置管脚连接
进入软件复位状态
退出软件复位
传递价值 成就你我 http://www.embedcontrol.com
致远电子
LPC2000LPC2000 系列系列 CANCAN 控制器控制器 发送缓冲寄存器
每组发送缓冲都有 4个寄存器组成,一旦启动发送命令, CAN控制器就会按照 CAN协议的格式把这组内容发送到总线上
PRI ODLCFF RTR
CAN I D
DATA0DATA1DATA2DATA3
DATA4DATA5DATA6DATA7
0xE0044038
0xE004403C
0xE0044040
0xE0044044
CANTFI
CANTID
CANTDA
CANTDB
传递价值 成就你我 http://www.embedcontrol.com
致远电子
LPC2000LPC2000 系列系列 CANCAN 控制器控制器 发送命令
CANCMRTRATRRBCDOSRRSTB1STB2STB3
CAN命令的发送全部由命令寄存器的不同组合完成,命令寄存器为只写寄存器,每次操作只能一次写入
LPC2000CAN控制器支持的发送方式:正常发送,单次发送,自发自收,单次自发自收
传递价值 成就你我 http://www.embedcontrol.com
致远电子
LPC2000LPC2000 系列系列 CANCAN 控制器控制器接收缓冲
I D I ndexDLCFF RTR
CAN I D
DATA0DATA1DATA2DATA3
DATA4DATA5DATA6DATA7
0xE0044020
0xE0044024
0xE0044028
0xE004402C
CANRFS
CANRID
CANRDA
CANRDB
BP
每个 CAN控制器只有一组接收缓冲,但是 CPU本身的 RAM 资源可以作为缓冲使用,所以,效率不会降低。
传递价值 成就你我 http://www.embedcontrol.com
致远电子
LPC2000LPC2000 系列系列 CANCAN 控制器控制器验收过滤
内置 2K验收过滤 RAM以硬件查表的方式完成验收过滤直观的独立或者范围验收 ID 设置
传递价值 成就你我 http://www.embedcontrol.com
致远电子
SFF_sa 0 d :=000 h :=0 0000000 b
column_lower column_upper
0123
22232425
SFF_GRP_sa 52 d :=034 h :=0 0011010 b
EFF_sa 100 d := 64 h :=0 0110010 b
EFF_GRP_sa 112 d := 70 h :=0 0111000 b
ENDofTable 128 d :=080 h :=0 1000000 b
lower_boundary 3
lower_boundary 41
upper_boundary
lower_boundary 42
upper_boundary
lower_boundary 3 5 upper boundary
6
ID Index #
Look-up Table RAM
88d =
84d =
52d =
00d =
04d =
44d =
48d = 30h
34h
54h
58h
00h
04h
2Ch
PB BASE+Address
22
1
3
23
0
2
2524
2
4 upper boundary
26 d
34 d
35 d
100d 64h 38 38 d
92d = 5Ch lower_boundary 3 6 upper boundary 36
68h
d
39 39 d104d
112d 70h 41 d
116d 74h
120d 78h 42
124d 7Ch
d
传递价值 成就你我 http://www.embedcontrol.com
致远电子
LPC2000LPC2000 系列系列 CANCAN 控制器控制器总线定时器
BRPSJ WTSEG1TSGE2SAM
Tscl3)TSEG2(TSEG1 TtsyncTtseg2Ttseg1 Tbit
Fvpb
11)(BRPTscl
2TsclTtseg2
2TsjwTtseg2
Ttseg2Ttseg1
传递价值 成就你我 http://www.embedcontrol.com
致远电子
基于基于 ARMARM 的的 CANCAN 函数库函数库特点
可配置功能全移植性好,使用灵活
传递价值 成就你我 http://www.embedcontrol.com
致远电子
LPC2000LPC2000 开发工具开发工具EasyJTAG 与 AXD 调试环境ADS 编译环境菲利普 ISP下载软件
传递价值 成就你我 http://www.embedcontrol.com
致远电子
谢谢