> 文档中心 > AllWinner T113 调试篇

AllWinner T113 调试篇


1、can

can基础知识:

11位标准帧,29位扩展帧,也可以通过购买can盒子进行测试。CAN标准帧和扩展帧只是在帧ID的长度上不一样,以能扩展更多的CAN节点,更好地支持上层协议。

 详解CAN总线:什么是CAN总线?_不脱发的程序猿的博客-CSDN博客_can总线

CAN节点通常由三部分组成:CAN收发器、CAN控制器和MCU。

CAN总线通过差分信号进行数据传输,CAN收发器将差分信号转换为TTL电平信号,或者将TTL电平信号转换为差分信号,CAN控制器将TTL电平信号接收并传输给MCU

 高速CAN总线(ISO 11898-2,通信速率为125Kbps~1Mbps)

在传输显性(0)信号时,会将 CAN_H端抬向5V高电平,将CAN_L拉向0V低电平。

当传输隐性(1)信号时,并不会驱动 CAN_H 或者 CAN_L 端。

显性信号 CAN_H 和 CAN_L 两端差分标称电压为 2V。

终端电阻在没有驱动时,将差分标称电压降回 0V。显性信号(0)的共模电压需要在 1.5V 到 3.5V 之间。隐性信号(1)的共模电压需要在+/-12V。

显性电平对应逻辑:0
CAN_H和CAN_L之差为2V左右。
隐性电平对应逻辑:1
CAN_H和CAN_L之差为0V

can测试:两个can互接

candump can0

cansend can1  123#11223344

问题点:

can命令配置

ip link set can1 downip link set can1 type can bitrate 250000ip -detail link show can1ip link set can1 up

查看can状态,波特率为250k,can state  ERROR-ACTIVE

sh-4.4# ip -detail link show can02: can0:  mtu 16 qdisc pfifo_fast state UP mode DEFAULT group default qlen 10    link/can  promiscuity 0 minmtu 0 maxmtu 0    can state ERROR-ACTIVE (berr-counter tx 0 rx 0) restart-ms 0   bitrate 250000 sample-point 0.875   tq 250 prop-seg 6 phase-seg1 7 phase-seg2 2 sjw 1   sun8i-can: tseg1 1..16 tseg2 1..8 sjw 1..4 brp 1..64 brp-inc 1   clock 24000000numtxqueues 1 numrxqueues 1 gso_max_size 65536 gso_max_segs 65535

1、电阻120欧姆

2、硬件信号不好时。需要restart can等,并设置tx的len,否则会阻塞。

ifconfig can0 downecho 4096 > /sys/class/net/can0/tx_queue_lenip link set can0 type can restart-ms 1000ip link set can0 up type can bitrate 1000000ifconfig can0 up

2、uart

3、gpio

4、key

5、音频

6、lcd

7、camera

8、掉电关机保护功能。

两种保护措施:

1、将文件系统改成只读。

2、卸载走正常流程。

#!/bin/bash

PATH=/sbin:/bin:/usr/sbin:/usr/bin
pkill -9 XXXX.sh
fuser -mvk /run
fuser -mvk /var/volatile
mount -o remount,ro /
umount -f -a -r > /dev/null 2>&1

哈尔滨心理咨询网