t113平台tina5.0(openwrt)开发连载-TinaLinux的SDK下如何部署应用
创始人
2024-09-25 20:25:21
0

SBC-T113S产品特性:

  • 采用Allwinner公司Cortex-A7双核T113-S3/S4处理器,运行最高速度为1.2GHZ;
  • 内置64-bit XuanTie C906 RISC-V协处理器(仅T113-S4支持);
  • 支持JPEG/MJPEG视频编码,最大分辨率1080p@60fps;支持多格式1080P@60fps视频解码 (H.265,H.264, MPEG-1/2/4);
  • 支持RGB666/LVDS/MIPI-DSI,分辨率最高1920x1080;
  • 支持128-256M Bytes DDR3 SDRAM,其中T113-S3内置128MB;T113-S4内置256MB;
  • 支持SPI NAND存储和启动(默认:256MB)或者EMMC启动(默认:4GB,最大32GB);
  • 支持一路USB2.0 OTG(设计为TYPE-A接口);支持二路USB2.0 HOST;
  • 支持七路RS232通信或者6路RS232和1路RS485(非隔离);
  • 支持一路CAN BUS通信(非隔离);
  • 支持一路10/100M以太网;
  • 稳定的操作系统的支持,可预装LINUX 5.4(Preempt)或者OpenWRT;
  • 经典尺寸主板,尺寸为120*100MM;

SBC-T113S产品功能评估图: 

Tina 应用打包、配置

Tina 增加 Package

在Tina里新增一个Hello World软件包,使用Tina编译Hello World并一同打包进入 Tina Linux。这个方法不但适用于Hello World 程序,同样也适用于所以希望将自己的软件包整合进入 Tina Linux 的情况。通过这个方法,可以很方便的管理多库编译链接,解决编译链接的难题,也可以提供Tina Linux 的底层调用库函数的接口,免去单独交叉编译的麻烦。

首先,在Tina LinuxSDK的openwrt/package 文件夹新建一个存放项目文件的 helloworld 文件夹,并准备 外层 Makefile 和 src 文件夹,在 src 文件夹里建立一个编译使用的 Makefile,把源码放到 src 文件夹里目录结构如下:

首先编写外层 Makefile 供 Tina Linux 检索查找。

include $(TOPDIR)/rules.mk include $(INCLUDE_DIR)/package.mk  PKG_NAME:=helloworld PKG_RELEASE:=1  PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME) SRC_CODE_DIR := ./src/  define Package/$(PKG_NAME)     SECTION:=hello     CATEGORY:=Hello World     TITLE:=hello world test endef  define Package/$(PKG_NAME)/description     Hello World endef  define Build/Prepare     mkdir -p $(PKG_BUILD_DIR)     $(CP) ./src/* $(PKG_BUILD_DIR)/ endef  define Package/helloworld/install     $(INSTALL_DIR) $(1)/usr/bin     $(INSTALL_BIN) $(PKG_BUILD_DIR)/helloworld $(1)/usr/bin/ endef  $(eval $(call BuildPackage,$(PKG_NAME))) 然后编写用于编译 helloworld 的 Makefile main: main.o     $(CC) $(LDFLAGS) main.o -o helloworld  main.o: main.c     $(CC) $(CFLAGS) -c main.c  clean:     rm *.o helloworld 和 main.c 的 helloworld 源码 #include   int main(int argc, char const *argv[]) {     printf("Hello World\n");     return 0; } 之后 make menuconfig 里就可以找到 Hello World 了 

 

可以进入并勾选它

 

编译,打包,烧写主板,就可以直接运行 helloworld 命令了

 

将文件打包进入 Tina Linux 

Tina Linux 提供 busybox-init-base-files 作为 rootfs 的接口提供用户将文件打包进入固件的功能。busybox-init-base-files 内的文件在打包编译系统的时候会覆盖进入 rootfs 内。文件夹的路径 openwrt/target/t113_s4/sbc-t113s_nand/busybox-init-base-files。

配置开机自启 

开机自启可以说是嵌入式 Linux 投入应用中最主要的一环。这里以自启动 lv_example 介绍一下 Tina Linux 如何配置开机自启功能。

开机自启动主要的配置位于 openwrt/target/t113_s4/sbc-t113s_nand/busybox-init-base-files/etc/init.d 文件夹内。系统启动后会按顺序执行这里的脚本,可以通过编写这里的脚本实现开机自启功能。

编写一个 S99lvdemo 的启动脚本,S99 代表他会等待之前的 Sxx 脚本执行完毕他才会执行,这里的排序是字符的顺序。

#!/bin/sh # # Start lv_example .... #  start() {       printf "Start lv_example .... "       lv_examples 1 }  stop() {     printf "Stopping lv_example .... " }  case "$1" in     start)     start     ;;     stop)     stop     ;;     restart|reload)     stop     start     ;;   *)     echo "Usage: $0 {start|stop|restart}"     exit 1 esac  exit $? 

编译、打包烧录,可以看到开机自启了 lvgl 的操作界面。

相关内容

热门资讯

透明挂教程!传奇扑克辅助(微扑... 透明挂教程!传奇扑克辅助(微扑克wpk透视辅助)原来真的有挂(有挂秘籍)1、每一步都需要思考,不同水...
透视内幕!云扑克有没有辅助挂,... 透视内幕!云扑克有没有辅助挂,线上德州ai机器人(其实真的有挂)是一款可以让一直输的玩家,快速成为一...
七分钟辅助挂!轰趴大菠萝十三水... 您好,轰趴大菠萝十三水有外挂吗这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很...
2024新版教程!微扑克插件(... 2024新版教程!微扑克插件(微扑克ai辅助器苹果版)其实真的是有挂(有挂插件)是一款可以让一直输的...
7分钟辅助!德扑线上创建房间&... 7分钟辅助!德扑线上创建房间"德州免费辅助神器app(其实真的有挂)-哔哩哔哩1、德州免费辅助神器a...
透视揭秘!德州之星ai辅助,德... 透视揭秘!德州之星ai辅助,德州软件辅助(原来真的有挂);科技详细教程小薇《487309276》所有...
透明挂教程!用ai挂打德州有用... 透明挂教程!用ai挂打德州有用吗(wepoke真的有挂)原来真的有挂(有挂插件)1、实时用ai挂打德...
4分钟总结!微扑克辅助钻石&q... 1、4分钟总结!微扑克辅助钻石"wepokeai代打(其实真的有挂)-哔哩哔哩。2、微扑克辅助钻石透...
爆料教程!聚星扑克有假吗(智星... 爆料教程!聚星扑克有假吗(智星德州菠萝开挂)原来真的是有挂(有挂教程)1、实时智星德州菠萝开挂开挂更...
1分钟辅助挂!微扑克wpk安全... 1分钟辅助挂!微扑克wpk安全吗"德州免费辅助神器app(原来真的有挂)-哔哩哔哩1、在德州免费辅助...