自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(54)
  • 资源 (5)
  • 收藏
  • 关注

原创 Camera sensor调试与bringup帧率计算

在我们前期开发一个项目的时候,经常会调试各种Camera sensor,sensor作为一种电气元件,我们的任务是让其正常工作,需要根据sensor的datasheet、原理图来正常地点亮一个sensor,让其正常出图、出流,然后将Camera的功能比如初始化、复位、裁剪、旋转、缩放等实现并且封装成一个API函数,最后以库的形式提供给应用工程师,让其能在app中结合逻辑灵活调用。

2024-02-25 23:17:21 1077

原创 嵌入式linux 必懂概念科普篇

嵌入式linux 应用编程入门应用编程概念系统调用是什么?应用编程、裸机编程、驱动编程概念文件 I/O 操作文件i/o的系统调用函数文件管理文件描述符的由来什么是空洞文件?原子操作与竞争冒险标准 I/O 库标准 I/O 库与文件 I/O 的区别FILE 指针I/O 缓冲文件 I/O 的内核缓冲标准 I/O 库的缓冲文件属性与目录Linux 系统中的文件类型文件属主符号链接(软链接)与硬链接目录系统信息与系统资源时间的概念GMT 时间UTC 时间时区proc 文件系统信号基本概念信号的目的是用来通信的信号由谁

2021-07-02 12:20:36 1497 4

原创 滚球板球控制系统详解(openmv+stm32实现)

实现球板控制系统——基于openmv视觉处理+stm32主控

2021-03-16 16:08:32 20310 26

原创 K210快速上手教程(色块、人脸、声源识别等)

k210实现各种功能快速上手前言开发环境以及材料准备软件Maixpy IDE使用说明识别色块并且串口输出最大色块中心坐标声源方向的坐标识别前言最近想要做一个项目是涉及到目标识别的,我想要实现一个功能就是识别到目标并且把目标的坐标信息通过串口传输给单片机进行控制,那么目前我认为最好的选择就是使用k210了,它不仅成本低,性能好,而且基于MicroPython的开发极易上手,就算是不会python的小萌新也能实现简单的使用。首先我来介绍一下什么是k210:210 是嘉楠(Cannaan)科技的一款集成机

2021-02-08 21:51:47 62546 25

原创 图像处理常用术语解释

帮助做图像处理的新人快速熟悉领域的专业术语

2022-07-07 14:50:10 1830 1

原创 Uboot启动流程

Uboot启动流程前言一、嵌入式中的Uboot二、U-Boot启动内核第一阶段:第二阶段:三、Uboot启动流程分析前言一个完整的linux系统,通常需要一个引导启动它的bootloader,而我们最常用的就是Uboot。uboot启动分为两个阶段,即boot + loader,boot阶段启动系统,初始化硬件设备,建立内存空间映射图,将系统的 软硬件带到一个合适的状态,loader阶段将操作系统内核文件加载至内存,之后跳转到内核所在地址运行。一、嵌入式中的Uboot当一个开发板上电的时候,即使是

2022-01-22 15:52:10 11948 1

原创 linux使用开机自启动脚本

如何开机自执行命令当我们每次开机都需要自己手动敲出命令时,我们会感觉到非常的麻烦(比如nfs挂载)。特别是在嵌入式linux开发中,时常常需要开发板和虚拟机之间使用nfs文件互传或者根文件系统挂载的。下面,我将演示一遍如何使用开机自启动脚本,在arm上或者在pc上是通用的。1.进入/etc/init.d/etc/init.d下面放的是系统启动时要启动的服务,根据不同的运行级别,运行不同的rcn.d(n为运行级别),最终调用的都是init.d里面的脚本。 里面的rcS是规定启动哪些文件的脚本文件。2

2022-01-06 11:24:28 5546 1

原创 linux使用socket实现简单的网络编程

简介套接字(socket) 是 Linux 下的一种进程间通信机制(socket IPC) ,在前面的内容中已经给大家提到过,使用 socket IPC 可以使得在不同主机上的应用程序之间进行通信(网络通信) ,当然也可以是同一台主机上的不同应用程序。 socket IPC 通常使用客户端<—>服务器这种模式完成通信, 多个客户端可以同时连接到服务器中,与服务器之间完成数据交互。内核向应用层提供了 socket 接口,对于应用程序开发人员来说,我们只需要调用 socket 接口开发自己的应用

2021-10-26 16:53:14 1733

原创 嵌入式linux学习路径--新手入门篇

嵌入式linux如何入门?前言基础概念计算机与嵌入式的关系操作系统是什么?程序网络ARPIPICMPTCPUDPDNSDHCPFTPHTTPlinux系统命令目录相关文件相关用户相关系统相关网络相关程序相关其他linux系统配置环境变量设置静态ipTFTP、Samba、NFS服务C语言基础掌握前言随着技术领域的发展,单片机虽然有实时性好的特点,但是面对多任务并发以及人机交互等却力不从心,所以人们开始追求更高工艺更高性能的soc芯片,并且在上面跑linux系统。嵌入式linux应用如此广阔的原因有以下几点

2021-10-08 16:56:40 988

原创 zynq linux开发与普通ARM平台的不同点

前言笔者之前从事的是imx平台的linux开发,之后工作需求转到Xilinx推出的zynq系列芯片的开发,以下内容是笔者在适用zynq平台中遇到的不同于传统linux开发的内容,期间踩了不少坑,笔者希望能够帮助读者理解zynq的开发,少走弯路。平台简介zynq是xilinx推出的一款集成arm核以及fpga可编程逻辑器件的soc芯片,使得它不仅拥有 ASIC 在能耗、性能和兼容性方面的优势,而且具有FPGA 硬件可编程性的优点。zynq主要分为两端,首先是pl端,属于像fgpa开发一样的纯逻辑开发。然

2021-09-30 14:17:55 4392 1

原创 使用Vivado HLS点灯

使用HLS 设计ip核首先打开Vivado HLS创建一个工程,设置工程名字和路径设置顶层函数名然后添加c测试文件(点灯不需要,直接next)修改芯片型号然后点击Finish完成工程设置。在弹出的页面中创建新的源文件在弹出的框中创建一个src文件夹用来保存源文件在新创建的.c文件中输入如下代码#include <ap_cint.h> //任意精度整数类型#define DELAY 50000000void led_hls(uint2 *led){ in

2021-09-16 17:58:47 871

原创 使用Petalinux定制自己的linux系统

使用Petalinux定制自己的linux系统(linux三大件)简介Petalinux设计流程1.设置petalinux运行的环境变量2.创建 petalinux 工程3.配置 petalinux 工程4.配置linux内核5.配置linux根文件系统6.配置设备树7.编译工程8.制作zynq的启动文件BOOT.BIN9.成功启动linux!简介zynq是xilinx推出的一款集成arm核以及fpga可编程逻辑器件的soc芯片,使得它不仅拥有 ASIC 在能耗、性能和兼容性方面的优势,而且具有FPGA

2021-09-16 15:03:08 10961 12

原创 嵌入式linux 驱动编译进内核

简介一般我们开发一个驱动的时候,首先是把这个驱动编译成一个.ko格式的驱动模块,然后动态地在命令行中加载进内核才能去使用。但是大家可能会想,linux里面本来就自带很多驱动,他们都不是像.ko文件一样加载进内核的,能不能把我自己写的驱动也放进去开机的时候自启动呢?当然是可以的。下面,我以我写的pwm驱动为例,将他编译进内核里。将驱动编译进linux内核首先,我先介绍一下linux内核源码里面的drivers目录。顾名思义,就是指驱动。linux内核里面的所有设备驱动都在里面了。比如 drivers

2021-09-15 14:59:06 1042 3

原创 如何固化zynq程序

1.验证程序是否可行首先打开sdk(本文默认读者已经有可使用的sdk工程),连接 JTAG 接口和串口,然后将pl端.bit配置文件下载进开发板最后下载.elf文件执行查看现象。2.配置vivado单击开启qspi,用于操作w25q存储或者使用sd卡验证设计可行性最后按快捷键“ Ctrl + S”保存设计,右键点击 Block Design 设计文件“ system.bd”, 执行“ Generate Output Products”,Flow Navigator 导航栏中找到

2021-09-14 14:03:13 3158

原创 zynq启动流程分析

前言zynq是xilinx推出的一款集成arm核以及fpga可编程逻辑器件的soc芯片,使得它不仅拥有 ASIC 在能耗、性能和兼容性方面的优势,而且具有FPGA 硬件可编程性的优点。zynq主要分为两端,首先是pl端,属于像fgpa开发一样的纯逻辑开发。然后是ps端,我把它类比成是单片机的裸机开发,通过操作库函数配置寄存器等,它的优势是可以将pl端当成是外设,pl端写好的东西可以被ps端直接调用。然后ps端是属于arm-A核,是可以跑系统的(linux等)。zynq启动分析1.启动 BootROM

2021-09-14 10:57:31 1764 3

原创 嵌入式linux之在lcd上显示摄像头图像

摄像头的数据采集格式YUV格式Y:表示亮度

2021-08-28 13:05:17 4730 6

原创 在linux虚拟机上显示摄像头视频(V4L2编程)

使用V4L2编程在虚拟机上显示动态图像还不会使用V4L2进行基础操作的同学请参考前面的文章:使用V4L2拍照本次,我们进行进阶版学习,通过将摄像头的mjpg格式照片(摄像头不能直接采集rgb格式的照片)数据流转化成rgb格式并且显示在虚拟机上,以此显示动态视频。rgb格式是大多数lcd液晶屏能显示的格式,对此也为下一章在开发板的lcd上显示动态视频打下基础,运行代码和注释如下:#include <stdio.h>#include <sys/types.h>#include

2021-08-26 14:59:42 8802 7

原创 手把手教你使用linux摄像头(V4L2框架)

什么是V4L2框架市场上出售着种类繁多的摄像头,他们的型号不同,厂商不同。这样子的话,每一次换一个摄像头难道就要我们自己去写一个驱动吗?这样子太麻烦了而且没有必要,于是就出现了v4l2框架,现在的摄像头都适配这个主流框架(就算不适配厂商也会想尽办法去适配以此来增加自己产品的畅销性)。这个v4l2适配了多种接口的摄像头。我们只需要学习一个简单的V4L2编程就可以通用所有摄像头了!我们知道linux的摄像头编程应用在人工智能嵌入式很热门,下面我来手把手教你linux是怎样驱动摄像头的。驱动流程本次教程在p

2021-08-26 11:22:51 28984 19

原创 使用Buildroot构建根文件系统

前言之前介绍过使用busybox来构建根文件系统,busybox虽然能够帮助我们快速构建出很小的根文件系统,但是想要正常使用还需要我们去完善(移植lib库,配置文件等),显然对于新手的我们要移植库文件只能把全部移植过去而不会裁剪,这样子出来的根文件系统也有100多M了,而且容易有遗漏的地方导致完善不全。这次我使用Buildroot来构建根文件系统,傻瓜式构建不需要我们来移植库和第三方软件什么的,啥都为我们构建好了,非常方便且完善。1.到官网下载Buildroot和交叉编译器点击以下超链接下载:交叉编

2021-08-24 13:53:29 1899

原创 使用busybox构建完善的linux根文件系统

使用busybox构建完整的根文件系统什么是根文件系统?使用最简单的busybox构建根文件系统1.安装依赖文件2.修改busybox顶层makefile3.添加busybox中文字符的支持4.配置busybox5.编译busybox生成根文件系统6.完善根文件系统1)向 rootfs 的“/lib”目录添加库文件2)向 rootfs 的“usr/lib”目录添加库文件3)创建/etc/init.d/rcS 文件4)创建/etc/fstab 文件5)创建/etc/inittab 文件什么是根文件系统?在

2021-08-23 16:46:21 1925

原创 linux驱动开发之新字符设备

前言什么是新字符设备呢?那我还是先说说什么是老的字符设备驱动吧。传统的字符设备驱动开发就是使用函数 register_chrdev注册字符设备,注册完成把驱动模块加载进内核后,还需要手动使用 mknod 命令创建设备节点。这就非常地不方便,这需要我们知道哪些设备号可以使用,还会浪费掉次设备号。(因为一个设备只用一个主设备号,则其下的所有此设备号都为它使用了)。于是就出现了新字符设备驱动了,这个提供的api可以让系统自动分配设备号,这样子在我们加载完成模块驱动后,自动就会在/dev上面挂着设备节点以供我们操

2021-08-21 16:59:05 390

原创 从零开始理解linux设备驱动

点灯的背后原理首先让大家简单了解一下点灯的原理。当我们使用./test_app文件点灯之后,其实是这个文件使用open函数打开了/dev下的设备节点(后面有介绍),然后通过操作设备节点控制系统调用进入linux内核去驱动底层硬件。下面将详细介绍一些相关的概念和具体实现原理。关于设备的分类设备主要分为:字符设备、块设备和网络设备字符设备驱动程序适合于大多数简单的硬件设备,而且比起块设备或网络驱动更加容易理解, 因此我们选择从字符设备开始,从最初的模仿,到慢慢熟悉,最终成长为驱动界的高手。也就是说,学

2021-08-21 15:47:51 554

原创 使用fdisk命令配置sd卡分区大小与格式

我们在用到sd卡进行特殊操作时,往往对sd卡各个分区大小以及格式有特殊要求,比如需要100M FAT格式的分区,又或者 EXT4格式 200M 的分区,我们如何在linux环境下格式化以及分配呢?本章同样适用于对系统磁盘进行操作。1.查看sd卡对应的设备节点首先不插入sd卡,使用命令ls /dev/sd*然后插入sd卡,使其接入linux系统再次使用命令对比可知,sd类型的节点多出了sdb,那/dev/sdb就是sd卡的设备节点使用fdisk进行分区操作查看信息umount /dev/sd

2021-08-18 09:54:54 5580

原创 linux设备树插件

什么是设备树插件?在linux内核版本4.4之后,就引入了一个动态设备树(设备树插件)的概念。在4.4版本之前我们增加或修改设备的时候,需要进入内核源码中修改设备树并且编译下载到开发板中。为了使得开发更加方便快捷,就引入了类似于设备树“补丁”的设备树插件。我们只要写好设备树插件,就可以直接被内核识别并且将里面的内容补充到设备树中,不需要重新编译设备树。这样子还有一个好处就是通过修改设备树插件的内容来使能或者失能某些设备以便于复用为不同功能。举个例子:usart3使用了引脚3和4,i2c也是可以用引脚3和

2021-08-17 17:39:12 2341

原创 什么是linux设备树

为什么要使用设备树?随着嵌入式的发展,linux系统被嵌入到各行各业。就拿开发板而言,就有玲珑满目的开发板可供用户选择。于是就出现了一个问题:每一块开发板的内核里,都有描述属于自己开发板的信息,于是就因为硬件不同,就产生了大量的有差别的内核,然后这些内核每年都大量地上传到linux开源社区。这样子开源社区的管理员就不乐意了!内核里的区别就只是硬件描述不一样,一点技术含量都没有,然后每年还有处理筛选那么多这种内核岂不是要累死。于是就引进了linux设备树的概念,专门用来描述板级硬件设备。设备树简介“设备

2021-08-17 15:30:37 955

原创 vscode使用SPHINX写文档(带预览)

使用shpinx编写文档有如下优点:使用sphinx编写的文档可以方便地制作html、pdf等格式,非常方便浏览和转换。sphinx支持rst和markdown语法,方便共享及开源编辑,使用git也方便跟踪。由于rst语法比markdown语法更强大和方便,我们主要采用rst语法编写文档, linux内核源码文档也是使用rst格式编写的。我们的文档也支持markdown,主要是为了方便不熟悉rst的用户参与进来首先展示一下效果:这是我拿野火的开源项目做的一个示例。可以使用git下载:git

2021-08-11 16:35:05 2382 1

原创 Linux与Windows之间文件互传

平时我们编译文件或着一些资料需要在linux下运行,我们如何在windows与linux之间进行文件互传呢?在这里我介绍一个比较方便的软件FileZilla。下载地址下面就来正式开始:1.配置好linux下的环境安装vsftpd软件包:sudo apt-get install vsftpd打开对应的配置文件:sudo vi /etc/vsftpd.conf将里面的local_enable和write_enable使能,如图不会使用vi编辑器的可以把上面命令vi改为nano,使用nano编

2021-08-10 09:25:58 1677

原创 嵌入式linux 内核移植篇

如何将自己的linux板卡信息添加到linux内核呢?本章,我也是通过修改第三方半导体厂商开发板提供的 Linux BSP 包移植到我们自己的平台上。我选择的是nxp厂商官方的evk开发板,使用他们官方的内核修改为自己板卡的内核。添加开发板默认配置文件在编译linux内核之前,也要像编译uboot一样,需要先用配置文件设置好参数,这里我选择复制imx_v7_mfg_defconfig文件,因为通过这个文件配置出来的内核可以使用nxp提供的一个mfgtool工具进行烧录下载,非常方便。将 目 录 下

2021-07-13 10:36:32 1340 7

原创 嵌入式linux UBoot移植篇

如何在U-boot添加自己的linux板卡并启动呢?uboot 的移植并不是说我们完完全全的从零开始将 uboot 移植到我们现在所使用的开发板或者开发平台上。这个对于我们来说基本是不可能的,这个工作一般是半导体厂商做的, 半导体厂商负责将 uboot 移植到他们的芯片上,因此半导体厂商都会自己做一个开发板,这个开发板就叫做原厂开发板。半导体厂商会将 uboot 移植到他们自己的原厂开发板上,测试好以后就会将这个 uboot 发布出去,这就是大家常说的原厂 BSP 包。我们一般做产品的时候就会参考原厂的开

2021-07-12 17:30:12 709 1

原创 qt怎么定义自己的信号与槽?

简介信号与槽(Signal & Slot)是 Qt 编程的基础,也是 Qt 的一大创新。因为有了信号与槽的编程机制,在 Qt 中处理界面各个组件的交互操作时变得更加直观和简单。信号(Signal)就是在特定情况下被发射的事件,例如 PushButton 最常见的信号就是鼠标单击时发射的 clicked() 信号,一个 ComboBox 最常见的信号是选择的列表项变化时发射的CurrentIndexChanged() 信号。GUI 程序设计的主要内容就是对界面上各组件的信号的响应,只需要知道什么

2021-07-09 16:06:55 966

原创 linux系统open函数flags参数值标志位用途说明

open 函数用于打开文件,当然除了打开已经存在的文件之外,还可以创建一个新的文件,函数原型如下所示:O_RDONLY :以只读方式打开文件O_WRONLY :以只写方式打开文件O_RDWR :以可读可写方式打开文件以上三个是文件访问权限标志,传入的flags 参数中必须要包含其中一种标志,而且只能包含一种,打开的文件只能按照这种权限来操作,譬如使用了 O_RDONLY 标志,就只能对文件进行读取操作,不能写操作。O_CREAT:如果 pathname 参数指向的文件不存在则创建此文件使用此标

2021-06-20 15:17:31 2769

原创 新手如何快速上传本地文件到github工程

·#### 1.在github上创建一个新的工程2.在git bash上进入到要上传内容的文件夹并使用git init初始化3.使用git add . 将文件夹中所有文件添加到本地缓冲区4.使用git commit 确认提交缓冲区的内容5.添加要远程推送的具体项目地址calabababy是指你的git用户名,后面是工程名6.将分支设置为main主分支,然后使用git push -u origin main推送...

2021-06-18 10:17:20 122

原创 长工微电子杯企业赛获奖经验分享

长工微电子杯企业组竞赛比赛介绍初赛决赛收获与总结比赛介绍最近参加了一个学校联合企业举办的一个名叫长工微电子杯的一个比赛,去参加的组别是企业赛。至于我为什么会参加这个比赛呢?那当然是为了:钱…啊呸,当然是为了提升自己的单片机应用测试能力啦,难道是一等奖奖励5000元,二等奖奖励3000元我才去的吗?下面来看看比赛方式:初赛设计理念:为了解决以往板子集成带来的问题,比如电流过大对贵重芯片造成永久性损害、电源损害后电源电路替换困难、功能模块替换不方便等问题。本次为IS6807A设计应用核心板遵循的

2021-06-11 15:53:51 370

原创 Uboot 常用命令操作解释

常用uboot操作指令详解1.ls mmc 1:1查看mmc设备号1的分区1中有什么文件2.mmc dev 0 0将主设备0的分区0(0代表sd卡,1代表emmc)设置为当前的操作空间。3.环境变量的设置1.bootargsbootargs = console=ttymxc0,115200 root=/dev/mmcblk1p2 rootwait rw1)root 用来设置根文件系统的位置,root=/dev/mmcblk1p2 用于指明根文件系统存放在mmcblk1 设备的分区 2 中。

2021-05-18 11:52:31 1423

原创 linux wifi驱动联网测试

使用usbwifi的配置过程1.插上usb wifi,终端会打印信息2.加载对应的驱动模块3.使用 ifconfig 命令查看并打开对应的无线网卡,比如 wlan0 或 wlan14.使用 iwlist 命令扫描一下当前环境下的 WIFI 热点一来测试一下WIFI 工作是否正常。二来检查一下自己要连接的 WIFI 热点能不能扫描到,扫描不到的话肯定就没法连接了。cell代表wifi编号,ssid代表wifi名称5.创建配置文件要连接的 WIFI 热点扫描到以后就可以连接了,先在开发板根

2021-05-12 22:44:27 1104

原创 linux系统中pinctrl 和gpio子系统使用方法(教你点灯)

如何使用pinctrl子系统点亮ledpinctrl 子系统作用PIN配置pinctrl 子系统作用pinctrl 子系统主要工作内容如下:①、获取设备树中 pin 信息。②、根据获取到的 pin 信息来设置 pin 的复用功能③、根据获取到的 pin 信息来设置 pin 的电气特性,比如上/下拉、速度、驱动能力等。对于我们使用者来讲,只需要在设备树里面设置好某个 pin 的相关属性即可,其他的初始化工作均由 pinctrl 子系统来完成, pinctrl 子系统源码目录为 drivers/pi

2021-05-07 12:17:10 2567

原创 vscode开发建议安装的插件(带功能介绍)

vscode开发建议安装的插件1)、 C/C++,这个肯定是必须的,函数跳转,自动补全2)、 C/C++ Snippets,即 C/C++重用代码块。3)、 C/C++ Advanced Lint,即 C/C++静态检测 。4)、 Code Runner,即代码运行。5)、 Include AutoComplete,即自动头文件包含。6)、 Rainbow Brackets,彩虹花括号,有助于阅读代码。7)、 One Dark Pro, VSCode 的主题。8)、 GBKtoUTF8,将

2021-05-07 11:06:31 669

原创 大神嵌入式linux系统的路径规划与经验分享(干货满满)

该如何从小白开始学习嵌入式linux前言1.首先必要掌握的基础概念BootLoaderKernel根文件系统2.学会编译与烧录3.学会简单的应用程序开发4.开始linux驱动开发5.逐步提升,终成大佬!6.最后总结前言相信很多人都会有疑问,自己是个小白,对与linux一窍不通,那该如何开始学习呢?很多人学习没有方法,学着学着就学不下去了,感觉学得不知所云然后就放弃了,对此我是觉得很惋惜的。所以我在这里分享一下我看到的文章并且总结给大家,希望能够帮助更多的人来克服linux学习路上的障碍。1.首先必要掌

2021-05-04 00:34:01 826 3

原创 uboot查找ip是否复用并且重设

使用uboot命令端重新设置网络挂载ip地址相信大家在进行嵌入式linux开发的过程中会遇到一个问题:明明自己在平常使用网络改在加载镜像到板卡上都成功,但是今天却偏偏不行,检查了网络情况也正常,ip地址与pc端linux也能相互ping通,但是却偏偏加载不进去。那么,你很大的概率就是因为ip地址被别的电脑使用了,导致两个设备同时使用一个ip地址,所以网络挂载就会失效。检查ip是否正常1.使用pc端ping开发板ping不通才是正常的,因为再uboot启动端还没有启动linux内核,时不会使能网口的

2021-05-03 13:52:51 1278

原创 使用linux内核驱动lcd

Linux下LCD驱动在linux驱动开发中,使用lcd进行人机交互是必不可少的,为此,我门如何在内核中初始化lcd使用呢?1、LCD 屏幕 IO 配置打开.dts设备树文件,在iomuxc中创建lcd子节点pinctrl_lcdif_dat: lcdifdatgrp {fsl,pins = < MX6UL_PAD_LCD_DATA00__LCDIF_DATA00 0x79 MX6UL_PAD_LCD_DATA01__LCDIF_DATA01 0x79 MX6UL_PAD_LC

2021-05-03 13:24:45 627

滚球板球控制系统代码.zip

这是我自己写的球板控制系统代码,实现效果可以参考我写的博客https://blog.csdn.net/small_po_kid/article/details/112067224

2021-07-11

k210开发工具.zip

这个工具包包含了开发k210人工智能套件的各种软件工具以及一个人脸识别的模型库

2021-02-09

旋转倒立摆常规起摆源码.zip

里面是旋转倒立摆实现的源码,包含了代码详细注释,非常适合学习pid的新手入门学习。可以借鉴或者改写该源码作为自己的控制代码,也适用于其他项目的开发

2020-07-29

树莓派开发软件.zip

这是树莓派开发过程中用到的软件,包括了一系列查找树莓派ip,通过电脑登陆树莓派,tf卡格式化等软件。适合新手入门树莓派的适合安装使用,建议配合我写的教程使用。

2020-02-05

0306、Openmv开发环境.zip

在学open_mv的小伙伴可以下载这个压缩包,里面含有Open_Mv的开发软件以及dfu的固件,安装就可以开发openmv了

2019-12-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除