5.1.5. UART

开发板系统集成了上层直接操作底层UART硬件接口; 开发板有6个UART。其中在deviceInit()中id对应0-5; 0-1对应/dev/ttyS0,/dev/ttyS1,为系统自带的UART,/dev/ttyS0默认为调试串口。 2-5为SPI转UART接口;对应的设备节点为/dev/ttysWK0, /dev/ttysWK1, /dev/ttysWK2, /dev/ttysWK3;

5.1.5.1. UART硬件接口定义

J20/J38的位置如下:

_images/J20.png

J38从左到右定义

_images/J38.png

J20从左到右定义

_images/J20-1.png _images/J20-2.png

硬件接口如下:

UART 0-1在硬件J38上;

J38 丝印名字 对应设备节点
1 U0RXD /dev/ttyS0
2 U0TXD
3 U1RXD /dev/ttyS1
4 U1TXD

J38是1.8V TTL;

UART2-5在J20上;

J20 丝印名字 对应设备节点
1 URXD4_3V3 /dev/ttysWK3
2 UTXD4_3V3
3 URXD3_3V3 /dev/ttysWK2
4 UTXD3_3V3
6 URXD232_TXD0 /dev/ttysWK1
7 URXD232_RXD0
8 URXD232_TXD1 /dev/ttysWK0
9 URXD232_RXD1

此时信号为3.3V UART232信号。

请注意如果板上没有贴U36的话就没有URXD4_3V3,UTXD4_3,URXD3_3V,UTXD3_3V3。此时J20 UART功能定义如下:

J20 丝印名字 对应设备节点
6 URXD232_TXD0 /dev/ttyS0
7 URXD232_RXD0
8 URXD232_TXD1 /dev/ttyS1
9 URXD232_RXD1

此时信号为3.3V UART232信号。

5.1.5.2. UART的Native申明方法

UART的native申明如下,注意class路径:

package com.ziver.Native;
public class UART {
    static public native int deviceInit(int id, int baud);
    static public native void sendData(int fd, byte[] buffer);
    static public native byte[] getData(int fd);
    static public native void close(int fd);
}

5.1.5.3. UART API的接口定义说明


_images/UART1.png

5.1.5.4. APK演示

APK演示方法: URXD4_3V3与UTXD4_3V3短接测试。

APK演示结果如下图:

_images/UART2.png _images/UART3.png