COM-335X工控模块产品集成了 ARM Cortex-A8 1GHz(MAX) TI AM335X 处理器,该模块使用了TPS65217电源管理芯片,板载大容量电子盘(COM-335X集成了NAND FLASH或者EMMC,支持三种启动方式(NAND/EMMC/QSPI NOR),稳定运行WindowsCE 7.0 和Linux 4.14(支持DTB)。 该核心模块使用SODIMM204接口件与工程底板相连,并带螺钉锁定,保证系统抗震性能。COM-335X提供了3.3V I/O接口,可提供宽温的工业组件,运行于条件恶劣的工业现场!
|
FUNCTION |
COM-335X |
主要参数 |
主控制器 |
TI Am335X,Cortex-A8,1GHZ(Max) |
|
内存 |
256MB DDR3(最大可到1GB) |
|
闪存 |
SLC NAND 128MB (最大到1GMB) 或者EMMC(最大到32GMB) |
时钟 |
DS1338U-33 |
看门狗 |
有 |
电源管理 |
TPS65217C (可支持电池供电的移动应用) |
复位 |
支持软件和硬件复位 (直接写寄存器) |
串口 |
串口6个,LVTTL电平 |
以太网 |
2,10/100/1000Mbps |
USB OTG |
2个,高速 |
SD/MMC卡 |
四线 |
触摸屏 |
支持4/5/8线 |
系统总线 |
NAND启动产品提供GPMC总线,EMMC启动产品无GPMC总线; |
IIC接口 |
3 |
SPI接口 |
2 |
GPIO |
多个3.3V LVTTL电平 |
MCASP音频 |
1 |
CAN总线 |
2 |
Graphic Chip |
支持2D/3D,仅对于AM3354 |
分辨率 |
最大1360×768 |
LCD接口 |
16/24-bit TTL接口 |
电源 |
5.0 V (+-5%) |
Power Consumption |
TBD |
尺寸 |
67.6MM*38MM*2.5MM |
工作温度 |
0 ~ 70° C (可定制-20-70°C) |
工作湿度 |
5 ~ 95 % ,冷凝结 |
RoHS |
YES |
认证 |
CE |
软件支持 |
Linux 4.14 dtb (DEBIAN,WCE7.0或者ANDROID项目定制支持) |
-335X可从NAND Flash、EMMC或者SPI NOR FLASH启动和存储操作系统。
默认从nandflash启动
默认从eMMC启动
EAC-335X主板的COM-335X核心板,对应的启动顺序如下表:
Jumper Set |
First Boot |
Second Boot |
Third Boot |
Fourth Boot |
Default boot from NandFlash |
||||
Open |
Nand |
Nand I2C |
MMC0 |
UART0 |
Close |
MMC0 |
SPI0 |
UART0 |
USB0 |
Default boot from eMMC |
||||
Open |
MMC1 |
MMC0 |
UART0 |
USB0 |
Close |
SPI0 |
MMC0 |
USB0 |
UART0 |
为了更快捷的操作使用EAC-335X主板,把J1(jumper)引用到EAC-335X SW2按键,如上图所示;
对于NAND版本的COM-335X :EAC-335X板SW2按键不按上电,AM335X优先从Nand启动,当SW2按键按下上电,则优先从MMC0启动,这时我们将烧写文件保存到SD卡,并将SD卡插入到MMC0连接的卡座中,AM335X从SD卡中启动U-BOOT(嵌入式LINUX的引导程序),通过U-BOOT将LINUX内核等系统写入到NAND FLASH中,烧写完成后,系统默认从NAND启动。
对于eMMC版本的COM-335X: EAC-335X板SW2按键不按上电,AM335X优先从MMC1(MMC1信号连接了eMMC存储芯片)启动,当SW2按键按下上电,则优先SPI0启动(SPI0需要外接SPI NOR FLASH),SPI0没连接启动存储设备,则从次级MMC0启动(MMC0接口连接到了SD卡卡座),这时我们将需要烧写到EMMC中的各个系统文件存放到SD卡后,并插入MMC0连接的卡座中,上电启动后,COM-335X先从SD卡中保存的U-BOOT启动(嵌入式LINUX的引导程序),通过该U-BOOT可以将LINUX内核等系统写入到eMMC中,烧写完成后,系统默认从eMMC启动系统。
以上启动的具体细节请参考《COM-335X硬件使用手册》以及附录1-bootloader三级启动说明;
在x86平台使用ubuntu-base-16.04.6-base-armhf.tar.gz镜像制作ubuntu文件系统,步骤如下。
1、在 Linux PC 主机上安装模拟器
# sudo apt-get install qemu-user-static
2、准备Ubuntu镜像
# wget -c http://cdimage.ubuntu.com/ubuntu-base/releases/16.04/release/ubuntu-base-16.04.6-base-armhf.tar.gz
# mkdir console
# sudo tar -xpf ubuntu-base-16.04.6-base-armhf.tar.gz -C console
3、设置dns,为下载package做准备
# sudo cp -b /etc/resolv.conf console/etc/resolv.conf
4、准备qemu
# sudo cp /usr/bin/qemu-arm-static console/usr/bin/
5、切换rootfs目录
# sudo mount -t proc proc console/proc/
# sudo mount -t sysfs sys console/sys/
# sudo mount --bind /dev/ console/dev/
# sudo mount --bind /dev/pts/ console/dev/pts/
# sudo chroot console
6、更新
# apt update
# apt upgrade
7、安装所需组件(根据需求安装)
# apt-get install vim git openssh-server sudo net-tools iputils-ping wireless-tools udev
# apt-get install rsyslog ifupdown ethtool dialog bash-completion
# apt-get install bluetooth-touch bluez
# apt-get install busybox udhcpc
# apt-get install console-setup console-terminus console-data
# apt-get install alsa-utils can-utils tzdata
桌面环境需要安装以下软件包:
# apt-get lxde libpam-kwallet4 libpam-kwallet5
# apt-get install xinput-calibrator network-manager
8、配置启动界面
# update-alternatives --config x-session-manager
9、配置默认登录界面
# dpkg-reconfigure lightdm
10、配置网络
# echo auto eth0 > /etc/network/interfaces.d/eth0
# echo iface eth0 inet dhcp >> /etc/network/interfaces.d/eth0
# echo auto wlan0 > /etc/network/interfaces.d/wlan0
# echo allow-hotplug wlan0 >> /etc/network/interfaces.d/wlan0
# echo iface wlan0 inet dhcp >> /etc/network/interfaces.d/wlan0
11、添加系统用户,并设置密码,以embfly为例
# useradd -s '/bin/bash' -m -G adm,sudo embfly
# echo embfly:embfly | chpasswd
12、设置主机名
# echo am335x > etc/hostname
# echo "127.0.0.1 localhost am335x" > etc/hosts
# echo "Asia/Shanghai" > /etc/timezone
13、退出
# exit
# sudo umount -lf console/dev/pts
# sudo umount -lf console/dev
# sudo umount console/sys
# sudo umount console/proc
14、制作镜像
制作ext4镜像
eMMC存储的主板,烧写压缩后的ext4镜像,文件后缀为ext4.gz。
# mkdir rootfs
# dd if=/dev/zero of=linuxroot.img bs=1M count=4000
# mkfs.ext4 linuxroot.img
# sudo mount linuxroot.img rootfs/
# sudo cp -rfp console/* rootfs/
# sudo umount rootfs/
# e2fsck -p -f linuxroot.img
# resize2fs -M linuxroot.img
# gzip -9 linuxroot.img
压制ubi镜像
nand flash存储的主板,烧写UBI镜像。由于ubuntu镜像较大,只支持512 MIB以上、页大小为
4096 byte的nand flaah。以压制512MIB的镜像为例:
# sudo mkfs.ubifs -F -q -r console/ -m 4096 -e 253952 -c 1980 -o ubuntu16.04.img
# ubinize -o ubuntu16.04.ubi -O 4096 -m 4096 -p 256KiB -s 1024 ubivolume.cfg
注:INI配置文件ubivolume.cfg如下:
# cat ubivolume.cfg
[ubifs]
mode=ubi
image=ubuntu16.04.img
vol_id=0
vol_size=450MiB
vol_type=dynamic
vol_name=rootfs
vol_flags=autoresize