1. 一、背景
  2. 客户要了一块单路CAN的板子,他希望在没有其他板子的情况下进行自行测试,然后按照我写的
  3. APP选择自收发测试选项,却无法接收到发送的信息,但是外接了一块板子就可以接收到自己发送的
  4. 信息;由于开发时间久远,之前又没做记录,所以一时间没有解释出个子丑寅卯来,惭愧。现在重
  5. 新查看资料,便有了此文。
  6.  
  7. 二、正文
  8. LPC1769"Gloable self test(全局自测试)""Local self test (本地自测试)"两种测试模
  9. 式:
  10. --> "Gloable self test(全局自测试)",连接模式如下图:

  1. 如上图所示,这种测试模式需要总线上有节点进行应答,即发送数据成功后,它才会把刚刚发
  2. 送出去的数据接收进来,若是接收中断被使能,则会和收到正常的CAN数据一样,产生接收中断
  3. ,提醒CPU来读数据。当然,相应的滤波设置要做好,
  4. 具体设置方法,就是在发送的时候,"CANxCMR"寄存器不再置位"TR"位,来提醒CAN控制器发送
  5. 数据,而是置位"SRR"位来提醒CAN控制器发送数据。
  6.  
  7. --> "Local self test (本地自测试)",连接模式如下图:

  1. 如上图所示,这种测试模式是不需要总线上有节点进行应答的,只要发送出去,CAN控制器不去理
  2. 会总线上是否有节点收到信息,而是直接将发送的数据取回来放到接收buffer内。
  3. 注意:由于不需要节点响应,所以必须要将CAN high CAN low的线通过一个终端匹配电阻给连接
  4. 起来。
  5. 具体设置方法,比"全局自测试"多一个步骤,即在CAN控制器进入复位模式后,将"CANxMod"寄存
  6. 器的"STM"置位,然后按照"全局自测试"发送方法发送数据,就可以实现自收自发了。
  7.  
  8. 至此,记录完毕。
  9.  
  10. 记录时间:--
  11. 记录地点:深圳WZ

LPC1769 CAN的自测试模式的更多相关文章

  1. MEMS陀螺仪(gyroscope)的工作原理

    传统的陀螺仪主要是利用角动量守恒原理,因此它主要是一个不停转动的物体,它的转轴指向不随承载它的支架的旋转而变化. 但是MEMS陀螺仪(gyroscope)的工作原理不是这样的,因为要用微机械技术在硅片 ...

  2. saltstack其他运行模式

    除了常规的运行模式外,salt还有几种运行模式 salt-call --local可以直接在minion上自执行,多用于本机自测试,此方式几乎不用,知道即可 [root@linux-node2 ~]# ...

  3. 【原】谈谈对Objective-C中代理模式的误解

    [原]谈谈对Objective-C中代理模式的误解 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 这篇文章主要是对代理模式和委托模式进行了对比,个人认为Objective ...

  4. 彻底理解AC多模式匹配算法

    (本文尤其适合遍览网上的讲解而仍百思不得姐的同学) 一.原理 AC自动机首先将模式组记录为Trie字典树的形式,以节点表示不同状态,边上标以字母表中的字符,表示状态的转移.根节点状态记为0状态,表示起 ...

  5. 制作类似ThinkPHP框架中的PATHINFO模式功能

    一.PATHINFO功能简述 搞PHP的都知道ThinkPHP是一个免费开源的轻量级PHP框架,虽说轻量但它的功能却很强大.这也是我接触学习的第一个框架.TP框架中的URL默认模式即是PathInfo ...

  6. MVVM模式解析和在WPF中的实现(六) 用依赖注入的方式配置ViewModel并注册消息

    MVVM模式解析和在WPF中的实现(六) 用依赖注入的方式配置ViewModel并注册消息 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二 ...

  7. MVVM模式解析和在WPF中的实现(五)View和ViewModel的通信

    MVVM模式解析和在WPF中的实现(五) View和ViewModel的通信 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 M ...

  8. MVVM模式解析和在WPF中的实现(三)命令绑定

    MVVM模式解析和在WPF中的实现(三) 命令绑定 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在WPF中 ...

  9. MVVM模式和在WPF中的实现(二)数据绑定

    MVVM模式解析和在WPF中的实现(二) 数据绑定 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在WPF中 ...

随机推荐

  1. mysql小技巧

    将一列值赋予另一列 会遇到新增一列, 需要用其他列的值来初始化这一列 或者根据业务条件把某行的某列值直接赋予到其他列. 行号 列1 列2 1 aaa ddd 2 bbb ccc UPDATE 表 SE ...

  2. codevs 2830 蓬莱山辉夜

    2830 蓬莱山辉夜 http://codevs.cn/problem/2830/ 题目描述 Description 在幻想乡中,蓬莱山辉夜是月球公主,居住在永远亭上,二次设定说她成天宅在家里玩电脑, ...

  3. [LeetCode] Patching Array 补丁数组

    Given a sorted positive integer array nums and an integer n, add/patch elements to the array such th ...

  4. python入门

    输出用print 注释用# rang() >>> range(1,5) #代表从1到5(不包含5) [1, 2, 3, 4] >>> range(1,5,2) #代 ...

  5. mybatis一对多关联

    这里的一对多指的是:当我们查询一个对象的时候,同时将其有关联的多方对象都查询出来. 下面以国家(Country)和部长(Minsiter)做案例 一个国家有多个部长 1.定义实体 定义实体的时候需要注 ...

  6. php 2038年问题

    在mysql中存放日期时可以存放整数 (int),  而int可以存放的数据最大为4294967295(无符号), 而php最大为2147483647, 要显示一个大于2038年日期,该如何处理 ? ...

  7. javascript-- test() 匹配正则 与 逻辑运算符 “!”

    在使用正则表达式验证"时分秒"的时候遇到了一个问题,因为业务需求,需要提供两个input 给用户输入开始时间和结束时间. js 代码: var regtime=/^([0-1]?[ ...

  8. 一个脚本可以一直运行 ignore_user_abort

    php中ignore_user_abort函数的用法 PHP中的ignore_user_abort函数是当用户关掉终端后脚本不停止仍然在执行,可以用它来实现计划任务与持续进程,下面会通过实例讨论ign ...

  9. 测试或运维工作过程中最常用的几个linux命令?

     大家在测试工作过程中,可能会遇到需要你去服务器修改一些配置文件,譬如说某个字段的值是1 则关联老版本,是0则关联新版本,这时候你可能就需要会下vi的命令操作:或者查看session设置的时长,可能需 ...

  10. 贝赛尔曲线UIBezierPath

    使用UIBezierPath类可以创建基于矢量的路径,这个类在UIKit中.此类是Core Graphics框架关于path的一个封装.使用此类可以定义简单的形状,如椭圆或者矩形,或者有多个直线和曲线 ...