开发环境篇:Linux C按键控制LED--米尔MYD-YT507H开发板
2022-08-26
2058
来源:米尔电子
本篇测评由电子工程世界的优秀测评者“qinyunti”提供。
此次板卡的测试,是Linux C开发环境下按键控制LED的操作实录。
前言
对于核心板或者开发板的选型我们一样会考虑二次开发的便捷性,开发环境,手册等的易用性和完整性。下面我们就从开发者的角度体验,从Linux C开发,Qt开发,python开发等常见开发入手进行体验。现 在开始第一部分Linux C开发环境的简单体验。
准备
串口登录
丝印Debug对应的Type-C USB口为调试串口,接到电脑。
设置串口终端,我这里使用crt。参数为115200-8-N-1。如果找不到COM则先网上搜索下载FTD21XX的驱动安装。登录到开发板。
用户名为root无需密码
[root@myir:/]#
SSH登录
网口接到丝印ENET2的网口
串口终端中ifconfig查看IP
开发板IP地址为169.254.127.228
我们将电脑的IP设置为同一网段169.254.127.227
开发板中ping电脑
电脑中ping开发板
如果ping不通可以关闭电脑的防火墙
修改root用户密码
串口终端中输入passwd回车
输入123回车
继续输入123回车
将密码设置为了123
密码为刚才设置的123
安装必备包
进入WSL打开终端
sudo apt-get update
sudo apt-get install build-essential gcc libncurses5-dev bison flex texinfo
sudo apt-get install zlib1g-dev gettext libssl-dev autoconf
sudo apt-get install autoconf
sudo apt-get install automake
sudo apt-get install libtool
sudo apt-get install linux-libc-dev:i386
sudo apt-get install git
sudo apt-get install gnupg
sudo apt-get install flex
sudo apt-get install bison
sudo apt-get install gperf
sudo apt-get install build-essential
sudo apt-get install zip
sudo apt-get install curl
sudo apt-get install libc6-dev
sudo apt-get install libncurses5-dev:i386
sudo apt-get install x11proto-core-dev
sudo apt-get install libx11-dev:i386
sudo apt-get install libreadline6-dev:i386
sudo apt-get install libgl1-mesa-glx:i386
sudo apt-get install libgl1-mesa-dev
sudo apt-get install g++-multilib
sudo apt-get install mingw32
sudo apt-get install tofrodos
sudo apt-get install python-markdown
sudo apt-get install libxml2-utils
sudo apt-get install xsltproc
sudo apt-get install zlib1g-dev:i386
交叉编译环境安装
windows下从http://down.myir-tech.com/MYD-YT507H/下载资料,其中03_Tools.zip解压;
我这里解压后为E:BOARDMYC-YT507�3_Tools
将文件夹Complie Toolchain名字改为Complie_Toolchain,因为Linux中命令行文件名不能有空格。
wsl中
cd ~
mkdir MYD-YT507H
cd MYD-YT507H/
直接将windows下的文件解压到WSL中:
tar -xvf /mnt/e/BOARD/MYC-YT507/03_Tools/Complie_Toolchain/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu.tar.xz -C .
export PATH=$PATH:~/MYD-YT507H/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu/bin
aarch64-linux-gnu-gcc -v
能看到打印信息说明安装成功。
测试
编写代码
以下代码实现按键控制LED的亮灭。
led.c
#include <linux/input.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <sys/ioctl.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
/* ./key_led /dev/input/event0 noblock */
int main(int argc, char **argv)
{
int fd,bg_fd; int err, len, i;
unsigned char flag;
unsigned int data[1];
char *bg = "/sys/class/leds/blue/brightness";
struct input_event event;
if (argc < 2)
{
printf("Usage: %s <dev> [noblock]n", argv[0]);
return -1;
}
if (argc == 3 && !strcmp(argv[2], "noblock"))
{
fd = open(argv[1], O_RDWR | O_NONBLOCK);
}
else
{
fd = open(argv[1], O_RDWR);
}
if (fd < 0)
{
printf("open %s errn", argv[1]);
return -1;
}
while (1)
{
len = read(fd, &event, sizeof(event));
if (event.type == EV_KEY)
{
if (event.value == 1)//key down and up
{
printf("key test n");
bg_fd = open(bg, O_RDWR);
if (bg_fd < 0)
{
printf("open %d errn", bg_fd);
return -1;
}
read(bg_fd,&flag,1);
if(flag == '0')
system("echo 1 > /sys/class/leds/blue/brightness"); //l ed off - 62 -
else system("echo 0 > /sys/class/leds/blue/brightness ");//led on
}
}
}
return 0;
}
编译
aarch64-linux-gnu-gcc led.c -o led
导入到开发板
将编译后的程序led拷贝到windows下,再拷贝到开发板中
cp led /mnt/e
SSH登陆后
输入rz回车
选择程序文件led
点击Add
点击确定
运行
chmod +x led
./led /dev/input/event1 noblock
按下开发板上丝印ON/OFF的按键
则对应的蓝色的LED亮和灭。
总结
米尔的资料是比较友好和全面的,手册,开发环境等都比较详尽,能方便用户快速熟悉开发环境进行二次开发。
另外参考文档中《MYD-YT507H_Linux软件开发指南V1.1.pdf》中相关信息有误,比如:
/dev/input/event0应该为 /dev/input/event1;
代码中/sys/class/leds/blue/brightness应该为/sys/class/leds/heartbeat/brightness等,也没明确按键对应关系。
文档中也没有用户名密码等描述,所以需要手动修改root的密码等等。文档整体比较详细,但是一些细节还是需要尽可能描述清楚,并且保持更新。
参考
MYD-YT507H_Linux软件开发指南V1.1.pdf
想要了解优秀测评者“qinyunti”关于MYD-YT507H开发板测评原文的可以复制下方链接查看:
http://bbs.eeworld.com.cn/thread-1211835-1-1.html
需要购买米尔MYD-YT507H开发板的可以复制下方链接购买:
https://detail.tmall.com/item.htm?id=673629085661
2023-02-17
嵌入式Linux入门级板卡的神经网络框架ncnn移植与测试-米尔i.MX6UL开发板
本篇测评由电子发烧友的优秀测评者“ALSET”提供。电子发烧友网发布了一款试用产品:米尔 MYD-Y6ULX-V2 开发板,基于 NXP i.MX6UL/i.MX6UL L处理器,该开发板被米尔称之为经典王牌产品。本次测试目标是在此开发板上进行神经网络框架ncnn的移植与测试开发,测试ncnn在此开发板上的性能与应用测试。01.什么是ncnnncnn 是腾讯优图推出的在手机端极致优化的高性能神经网
2022-11-24
FPGA+MPU+MCU三芯合一!米尔全自动血细胞分析仪解决方案
全自动血细胞分析仪是医院临床检验应用非常广泛的仪器之一,用来检测红细胞、血红蛋白、白细胞、血小板等项目。是基于电子技术和自动化技术的全自动智能设备,功能齐全,操作简单,依托相关计算机系统在数据处理和数据分析等方面具有出色表现,可同时进行多个参数的可靠分析,通过联网互通和交互式触摸屏可以实现线上信息共享等功能,被广泛应用在医院临床检验中
2022-10-18
基于Zynq-7000高速数据采集解决方案—米尔MYD-C7Z010/20-V2开发板
近年来,科技日新月异,随着机器视觉、人工智能的迅速发展,相关行业对数据采集系统的性能要求更加苛刻,要求能够同时采样的通道更多,采样的精度和速度要求更高。在雷达,航天,视频传输,工业控制等领域,采样率、分辨率、传输速率成为评价超高速数据采集系统的最重要技术指标,所以芯片的选择就变得尤为重要,既需要具备高精度、高采样速率等模块,又需要可以嵌入操作便捷、用户体验更友好的操作系统,实现良好的人机交互功能。
2022-08-26
开发环境篇:Linux C按键控制LED--米尔MYD-YT507H开发板
本篇测评由电子工程世界的优秀测评者“qinyunti”提供。此次板卡的测试,是Linux C开发环境下按键控制LED的操作实录。前言对于核心板或者开发板的选型我们一样会考虑二次开发的便捷性,开发环境,手册等的易用性和完整性。下面我们就从开发者的角度体验,从Linux C开发,Qt开发,python开发等常见开发入手进行体验。现在开始第一部分Linux C开发环境的简单体验。准备串口登录丝印Debu
2022-08-22
第一视角体验国产处理器全志T507-H开发板
现在车规级芯片市场潜力巨大,需求旺盛,芯片都在逐渐走向国产化。本期要介绍的主角是米尔基于全志T507-H的MYD-YT507H开发板,是米尔结合国产工业级平台CPU:全志T507-H芯片研制的CPU模组,集成了四核Cortex-A53的CPU和G31MP2的GPU,具有强大的图像处理功能,并拥有多路视频输入和输出的接口。
2022-08-05
米尔的国产T507-H开发板怎么玩?macOS如何将Ubuntu系统烧录到eMMC的完全调教指南!
本篇测评由电子发烧友的优秀测评者“HonestQiao”提供。此次板卡的测试,是用macOS将Ubuntu系统烧录到eMMC的操作实录。米尔MYD-YT507H开发板,官方提供了HMI系统和Ubuntu18.04镜像,体验过默认的HMI系统后,我就换上了我喜欢的Ubuntu系统了。一、系统烧录参考官方的文档,使用全志的图形界面烧录工具,在Windows下烧录简单又方便:因为我使用的是macOS系统
2022-07-15
如何实现异构处理器间相互通讯——米尔带您玩转i.MX 8M Plus开发板
本篇测评由电子工程世界的优秀测评者“bloong”提供。此次测试的项目,是异构处理器间相互通讯项目。MYD-JX8MPQ配备了一颗异构的Cortex-M7协处理器,可以同时运行Linux和RTOS。本文主要介绍协处理器M7使用方法。M7在运行时可能会涉及到和A53核共用资源,这里列举出会冲突资源如下:ECSPI0/ECSPI2,FLEXCAN,GPIO1/GPIO5,GPT1,I2C3,I2S3,
2022-05-18
基于QT+OpenCV的人脸识别-米尔iMX8M Plus开发板的项目应用
本篇测评由电子工程世界的优秀测评者“流行科技”提供。此次测试的开源项目,是基于QT+OpenCV的人脸识别打卡项目。本次体验使用的是开源的代码,此代码本来是运行在WIN下的,为了测试稍微进行了修改,让其运行在米尔iMX8M Plus开发板上。测试项目实际是分了两个工程,一个工程是作为管理员控制功能使用,添加人脸信息。同时也可以查询到打卡记录,对从机进行下发通知等等。人脸识别我们主要需要用到open
2021-10-26
米尔MYS-8MMX开发板试用体验测评——dql2016
米尔MYS-8MMX开发板试用体验测评四日前,米尔科技发布了关于MYS-8MMX开发板的测评公告,公告发布后,吸引了各大媒体平台的测评者争相报名,本期我们分享其中一名优秀测评者的测评报告,供各位参考。想要了解优秀测评者“dql2016”关于MYS-8MMX开发板测评原文的可以复制下方链接查看:https://bbs.elecfans.com/jishu_2159854_1_1.html【米尔MYS
2021-09-29
应用开发笔记 | 米尔MYD-YA15XC-T LoRa无线通讯实例
1.概述本文主要基于LoRa调制功能的无线串口模块的树莓派扩展板,讲述在M4核LoRa的调试过程。2.硬件资源ØTypec Debug线1根ØMicro usb线1根ØMYD-15XC-T开发板Ø树莓派接口SX1262 868M LoRa HAT模块2个3.软件资源ØLinux 5.4.31ØSTM32CubeIDE 1.5.0ØLInux虚拟机Ø米尔提供的SDK4.环境准备预先安装好CubeID