文章目录1.Liteos-a中串口的使用1.1内核里打印1.2APP控制台1.2.1/dev/console1.2.2/dev/serial1.2.3/dev/uartddev-01.总体介绍2.device_t3.drvier_t4.uartdev_fops1.2.4uart_ops2.串口移植2.1最终结果2.2串口发送单个字符2.3在device_t中指定资源2.4实现uart_ops2.5GICPs:这个鸿蒙系列是韦东山老师录制的视频和开发手册为基础,请大家支持韦老师。这个专栏是:1.学习的笔记记录。2.整理和知识点汇总。3.个人做的项目经验汇总。1.Liteos-a中串口的使用1.1
IMX6ULL移植LVGL话不多说,直接开干!!!1、移植准备1.1、源码克隆文件名克隆命令描述lvglgitclonehttps://github.com/lvgl/lvgl.git包含了LVGL图形界面控件的源码以及少量例程lvglgitclonehttps://github.com/lvgl/lv_drivers.git包含了驱动LVGL图形界面的驱动接口源代码lv_port_linux_frame_buffergitclonehttps://github.com/lvgl/lv_port_linux_frame_buffer.git适配有framebuffer的linux系统的接口lv
文章目录前言一、安装交叉编译器二、编译Uboot三、Uboot结构简介四、Uboot配置1、Uboot配置命令2、DDR配置3、LCD配置4、时钟频率配置5、开机延时设置6、SPL配置前言本文讲述了如何编译uboot并进行配置,对编译过程中遇到的问题进行解决,此外还对uboot的结构进行了简介一、安装交叉编译器网盘地址:链接:https://pan.baidu.com/s/1ndgzG_aAMCbDgqYwh1yxfw提取码:4gpo国外用户:https://releases.linaro.org/components/toolchain/binaries/6.3-2017.05/arm-li
文章目录一、综述二、UCLASS架构解析2.1uclass2.2udevice2.3uclassdriver2.4driver2.4.1spimasterdriver三、uboot代码解析3.1DM的初始化3.2spinorflash设备识别3.3设备树内容3.4.config配置3.5spi读写测试四、其他相关链接1、SPI协议详细总结附实例图文讲解通信过程2、Linux下spi网卡dm9051驱动移植及驱动调试分析总结3、Linux下设备树dts内容总结及示例解析一、综述本文通过如何通过编写特定板子的spimaster驱动从而识别到spinorflash设备,完成norflash设备的读写
问题简述在uboot启动的时候需要把某个CPU引脚拉高或者拉低,促使某个功能能正常运行。问题解决方法思路一首先打开RK356X的SDK软件包,查看一下uboot源码,这次我先在u-boot/common/board_f.c和board_r.c文件上添加GPIO口设置,虽然添加了gpio_direction_output()或者gpio_set_value()类似的GPIO设置的函数,但是用万用表测量了一下,怎么都不起效果。思路二思路一不行,只能看看还有什么方式能设置GPIO的了,然后找到一个文件uboot/arch/arm/mach-rockchip/rk3568/rk3568.c。里面都是用
0.平台简介项目描述硬件平台100ask_imx6ull_pro开发板Linux内核Linux4.9.88Buildroot版本Buildroot2019.02FFmpeg版本3.4.5Nginx版本1.15.7摄像头支持UVC的USB摄像头 总体的系统方案如下,是韦老师在【自己做一个物联网视频监控系统】系列视频中分享的一个实例,基本框架如下:1.基于Buildroot编译相关软件 前提,本文所使用的Linux内核已设置支持UVC设备类驱动,且基于此进行以下操作,使用韦老师所分享的Buildroot进行编译,需要首先进行对imx6ull_pro开发板的相关默认配置进行设置。首先需要在终端进
文章目录1.1休眠与唤醒1.1.1适用场景1.1.2内核函数1.1.2.1休眠函数1.1.2.2唤醒函数19.1.3驱动框架1.1.4编程1.1.4.1驱动程序关键代码1.1.4.2应用程序1.1.5上机实验1.1.6使用环形缓冲区改进驱动程序1.2POLL机制1.2.1适用场景1.2.2使用流程1.2.3驱动编程1.2.4应用编程1.2.5现场编程1.2.6上机实验1.2.7POLL机制的内核代码详解1.2.7.1sys_poll函数1.2.7.2do_sys_poll函数1.2.7.3do_poll函数1.3异步通知1.3.1适用场景1.3.2使用流程1.3.3驱动编程1.3.4应用编程1
文章目录1.具体单板的GPIO操作方法1.1IMX6ULL的GPIO操作方法1.1.1IMX6ULL的GPIO模块结构1.1.2CCM用于设置是否向GPIO模块提供时钟1.1.3IOMUXC:引脚的模式(Mode、功能)1.1.4GPIO模块内部1.1.5怎么编程1.1.6写GPIO这部分的工作比较复杂,其实写gpio,就是要学会看芯片手册。打印芯片手册,然后研读是学习的必要。最好英文版。1.具体单板的GPIO操作方法1.1IMX6ULL的GPIO操作方法CCM:ClockControllerModule(时钟控制模块)IOMUXC:IOMUXController,IO复用控制器GPIO:Ge
为什么要设置IMX6ULL与虚拟机通信?因为要把在虚拟机下编译的文件传到IMX6ULL开发板上运行设置好同一网段,可以互ping后,可以参考这篇博客,实现开发板与虚拟机的文件互传IMX6ULL开发板与虚拟机互传文件目录一、设置windows有线网卡二、配置虚拟机双网卡(原本有一个NAT网卡了)三、设置虚拟机静态IP四、设置IMX6ULL开发板静态IP一、设置windows有线网卡设置window下有线网卡的IP和子网掩码如何知道自己电脑有线网卡的名称?如果笔记本没有网口,可以使用拓展坞转网口设备连接开发板查看电脑的有线网卡名称:上图箭头所指就是我笔记本的有线网卡名称RealtekPCleGbE
目的通过修改linux正点原子imx6ull设备树,防止led灯占用做法编译内核与设备树1.将原子的镜像解压到ubuntu虚拟机2.使用tar-xflinux…解压到某一文件夹3.修改设备树文件(imx6ull-alientek-emmc.dts)cdarch/arm/boot/dtscodeimx6ull-alientek-emmc.dts在leds下面添加status="disabled";4.编译设备树在源码根目录下makedtbs(非必须)4-2.编译内核在源码根目录下makeARCH=armCROSS_COMPILE=arm-linux-gnueabihf-distcleanmake