C8051F500 C8051F50X CAN总线收发数据 中文寄存器

news/2024/11/24 22:34:29/

**

C8051F500 C8051F50X CAN总线收发数据中文寄存器

**
一、最近手头有一个汽车项目用到CAN总线进行通信,使用的芯片是C8051F500;这个芯片具有CAN 2.0协议;它和早期的C8051F04X和06x的使用和寄存器的定义有些不同;
C8051F50X的寄存器也是分页的,分3页和所有页可见;CAN寄存器在0x0C页面;
下面写一下寄存器的说明,例程整理后,再发
二、CAN寄存器
1、CAN控制寄存器 CAN0CN
_- 7 - – 6 — 5- 4 ----3----- 2— 1- -0
—————————————————
| test | cce | dar | - | eie | sie | ie | init |
_-------------------------------------------------
test:测试模式使能位
=1 测试模式
=0 正常模式

cce:配置更改使能位
=1可以更改配置,init=1时
=0不可以更改配置

dar:自动重传设置
=1禁用自动重传
=0开启自动重传

eie:错误中断使能
=1使能错误中断,状态寄存器中位Bof或Warn的位变化时,将产生一个中断
=0;不使能

sie:状态改变中断使能
=1:消息传输成功完成或检测到CAN总线错误时,产生中断
=0;不使能

ie:模块中断使能
=1;使能,中断将IRQ_B设置为低,并一直为低,直到所有中断处理完
=0;不使能,IRQ_B一直高

init:初始化
=1;初始化开始
=0;正常运行

2、状态寄存器 CAN0STAT

未完,待续…


http://www.ppmy.cn/news/515338.html

相关文章

HC32L110国产超低功耗华大MCU芯片介绍

华大HC32L110 系列32 位 ARM Cortex-M0 微控制器 HC32L110 系列是一款旨在延长便携式测量系统的电池使用寿命的超低功耗、Low Pin Count、宽电压工作范围的 MCU。集成 12 位 1M sps 高精度 SARADC 以及集成了比较器、多路 UART、SPI、I 2 C等丰富的通讯外设,具有高…

ASEMI代理NXP汽车芯片MKE02Z32VLC4

编辑-Z NXP汽车芯片MKE02Z32VLC4参数: 型号:MKE02Z32VLC4 资格状态:M完全合格的一般市场流量,P资格预审 动脉炎家族:KE02型 关键点属性:Z M0 core 程序闪存大小:16 16 KB,32…

HC32L136国产超低功耗华大MCU芯片介绍

华大HC32L136 系列32 位 ARM Cortex-M0 微控制器 HC32L136 系列是一款旨在延长便携式测量系统的电池使用寿命的超低功耗、宽电压工作范围的 MCU。集成 12 位 1M sps 高精度 SARADC,以及集成了比较器、运放、内置高性能 PWM 定时器、LCD 显示、多路 UART、SPI、I2C …

KT404A芯片使用手册_4.参考电路

4.参考电路 争对芯片的应用,我们提供了详细的设计参考,让您可以更快的上手体验到该芯片的强大功能 串行通信接口,波特率默认9600,可以根据客户的要求修改外部的IO按键的功能可以按照客户需求订制外部单声道功放参考电路 4.1串行…

s3c6410 Can Bus mcp2515

Kernel:2.6.29 MCU:s3c6410 Can Driver:SocketCan Chip:mcp2515 使用两个Can通信,使用cansend 发送测试,工作正常. [rootTommy canbustest]# ifconfig can0 can0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 UP RUNNING …

STM32F40x CAN控制器

一、CAN控制器简介 STM32自带了基本扩展CAN外设,又称bxCAN,bxCAN的特点如下: 支持CAN协议2.0A和2.0B主动模式 波特率最高达1Mbps 支持时间触发通信 具有3个发送邮箱 具有3级深度的2个接收FIFO 可变的筛选器组(也称过滤器组&…

【stm32f407】CAN总线

一.CAN简介 CAN是ControllerArea Network的缩写(以下称为CAN),是ISO国际标准化的串行通信协议。在当前的汽车产业中,出于对安全性、舒适性、方便性、低公害、低成本的要求,各种各样的电子控制系统被开发了…

AC78013CAN模块测试(二)CAN错误寄存器

上一节我们发现无论CANH、CANL接地或者断开,调用函数CAN_TransmitMessage(CAN_Type *CANx, const CAN_MsgInfoType *info, CAN_TransmitBufferType type)发送的数据返回值永远是0,查看原函数发现这里只管数据能正常丢入缓冲区。对于发送错误并没有相关判…