米尔电子
直播中

jf_67024233

2年用户 282经验值
擅长:电源/新能源 模拟技术 测量仪表 接口/总线/驱动
私信 关注
[技术]

【米尔-全志T113-S3开发板- 极致双核A7国产处理器-试用体验】米尔-全志T113-S3开发板介绍及LED的应用程序(点灯)

MYC-YT113X核心板及开发板

T113-S3入门级、低成本、极致双核A7国产处理器

基于T113-S3处理器,双核A7@1.2GHz,适用低成本网关产品和商业显示产品;丰富多媒体接口MIPI-DSI/RGB/LVDS/Parallel CSI,支持1080P@60FPS显示;支持千兆以太网接口、2个CAN接口、2个USB2.0接口、6个UART功能接口;内置128MB DDR3,支持256MB Nand Flash和4G eMMC存储;核心板采用邮票孔方式连接,尺寸为37mmx39mm,140PIN。

应用:电力、商业显示、智能家居、工业控制、医疗器械等场景。

11.jpg

10.jpg

14.jpg

MYC-YT113国产核心板及开发板

13.jpg

  • SOM:
  • 全志T113处理器;邮票孔+LGA连接,焊接简便,载板可用2/4层PCB
  • 140pin+50pin,信号齐全;37*39mm,体积小;
  • 工业级、宽温级;
  • 支持Linux 5.10,Ubuntu18.04,Tina系统(预发布)
  • 十年以上供货
  • 性能:
  • Dual-core ARM Cortex-A7(1.2GHZ);128M/256M/512M/1G DDR3
  • Single-core HiFi4 DSP;H.265/H.264 1080P @60FPS 视频解码
  • 接口:
  • Video IN:Parallel CSI、CVBS IN
  • Video OUT:MIPI-DSI/RGB/2*LVDS/CVBS OUT 1080P 60fps
  • 2USB2.0,1GMAC,2SPI,6UART,2*CAN
    米尔基于全志T113核心板,尺寸精巧,节省客户单板空间、设计灵活度更高;带屏蔽罩设计,便于批量生产、贴片效率高、质量稳定。屏蔽强电磁环境干扰。更适合充电桩、PCS等电力电子产品的苛刻需求。支持客制化LOGO,体现客户品牌价值。

4.png

米尔基于全志T113核心板

高可靠性:

米尔基于全志T113核心板详细的设计验证:所有信号完整性测试、系统和应用功能测试、性能测试和老化测试。获得认证报告:SGS的CE认证报告、ROH报告,支持100%国产物料。

5.png

米尔基于全志T113核心板-相关认证报告

点灯
几乎所有嵌入式的第一课都是点灯,其实从点灯这一个简单的操作中,我们可以学到很多东西。

1、宏定义解析

#define  LED_TRIGGER    "/sys/class/leds/sys_led/trigger"		//LED闪烁
#define  LED_BRIGHTNESS "/sys/class/leds/sys_led/brightness"	//点亮或熄灭LED
#define  USAGE()    fprintf(stderr, "usage:\n"
"    %s \n"
"    %s  \n", argv[0], argv[0])	//用户使用指南

上述这三个定义我就不多说了,他们的功能都写在了注释里面。
需要稍微介绍一下的是前两个定义。

2、LED_TRIGGER和LED_BRIGHTNESS
刚接触嵌入式的小伙伴一定会好奇,为什么这两个对应的就是注释里面的内容呢?
其实这两个是内核自带的,简单的来说就是所有的开发板都自带的。
但是要使用上述两者的话,需要我们去编写设备树,并且开启内核中对应的内容。

3、程序编写
LED.C

#include 
#include 
#include 
#include 
#include 
#include 
#include 

#define  LED_TRIGGER    "/sys/class/leds/sys_led/trigger" 	//控制LED灯闪烁模式
#define  LED_BRIGHTNESS "/sys/class/leds/sys_led/brightness"	//控制LED亮灭
#define  USAGE()    fprintf(stderr, "usage:\n"  
"    %s \n"   
"    %s  \n", argv[0], argv[0])

int main(int argc, char *argv[])
{
int fd1, fd2;

/* 校验传参 */
if (2 > argc) {
USAGE();
exit(-1);
}

/* 打开文件 */
fd1 = open(LED_TRIGGER, O_RDWR);
if (0 > fd1) {
perror("open error");
exit(-1);
}

fd2 = open(LED_BRIGHTNESS, O_RDWR);
if (0 > fd2) {
perror("open error");
exit(-1);
}

/* 根据传参控制LED */
if (!strcmp(argv[1], "on")) {
write(fd1, "none", 4); 	//先将触发模式设置为none
write(fd2, "1", 1); 		//点亮LED
}
else if (!strcmp(argv[1], "off")) {
write(fd1, "none", 4); 	//先将触发模式设置为none
write(fd2, "0", 1); 		//LED灭
}
else if (!strcmp(argv[1], "trigger")) {
if (3 != argc) {
USAGE();
exit(-1);
}

if (0 > write(fd1, argv[2], strlen(argv[2])))
perror("write error");

}
else
USAGE();

exit(0);

}

编写好程序后,根据自己的交叉编译器将程序进行编译,并将程序丢到开发板上即可。

更多回帖

发帖
×
20
完善资料,
赚取积分