自学内容网 自学内容网

深度探索RK3568嵌入式教学平台实战案例:设备驱动开发实验

一、产品简介

TL3568-PlusTEB人工智能实验箱

国产高性能处理器

64 位 4 核低功耗

2.0 GHz超高主频

1T 超高算力 NPU

image.png

兼容鸿蒙等国产操作系统

image.png

image.png

image.png

image.png

image.png

二、实验目的

1、熟悉基本字符设备的驱动程序设计;

2、掌握在Linux系统下GPIO的使用方法;

3、掌握验证LED驱动的方法。

image.png

三、实验原理

管脚控制

根据原理图,可知LED1和LED2的管脚控制:

LED1是GPIO0_D5_d管脚控制。

LED2是GPIO0_D6_d管脚控制。

image.png

设备树源码

leds节点这里定义了几个leds灯。

som_led0为心跳指示灯

som_led1为硬盘指示灯

user_led0与user_led1为用户LED灯

label是唯一的,用于标识一个设备,不同的设备(如led)不可以分配相同的标签。如果忽略label,则标签是默认取自节点名(不包括地址)。

gpios是存储gpio的信息,包括id,标志等。包括指定的GPIO控制器节点cells的数字。

linux,default-trigger:如果存在这个参数,则它是分配给led的一个由字符串定义的触发器,目前的触发器类型有:

backlight:led将作为背光灯,由framebuffer控制系统。

default-on:led会点亮。

heartbeat:基于负载平均速率的基础上,led会实现双闪。

ide-disk:led用于指示显示磁盘活动。

timer:led将会以已配置好的频率闪烁。

default-state:led的初始状态,如果不存在这个属性,则默认关闭“off”。该属性的有效值有“on”"off" "keep",分别表示开、关、保持。

image.png

定义的节点是将这些pin设置为普通gpio。

image.png

四、实验设备

实验软件

本实验中使用的软件为VMware17+Ubuntu18.04.4 和串口调试工具Xshell。

image.png

image.png

实验硬件

本实验中使用的是TL3568-PlusTEB实验箱,所需的配件为Micro SD卡、Type-C线和电源。

image.png

image.png

image.png

image.png

五、实验步骤

驱动配置

(1)执行指令进入内核文件夹里面,然后输入命令进入内核菜单;

(2)在内核菜单,通过电脑键盘的上下左右按键、Enter键控制进入相应目录;

选择LED驱动,默认已经配置完成,在此无需修改;

(3)选择exit,按下enter键不断退出;

注意:如果配置有修改,可按照第一章实验2 的 2.4.5 编译 LinuxSDK 小节重新编译,生成镜像,再按照第一章实验 4 的 4.4.4 制作 SD 系统启动卡小节重新制作 SD 卡,更新驱动。

image.png

硬件连接

接着进行硬件连接,

(1)将Linux系统启动卡插至Micro SD卡槽。

(2)使用Type-C线连接USB TO UART2调试串口到PC机。

(3)连接电源线,先不要上电。

image.png

软件操作

接着进行软件部分操作。

(1)先在设备管理器查看串口的端口号;

(2)再设置串口调试工具,波特率设置为1500000,点击连接,在Xshell调试终端会显示连接成功。

(3)连接成功后,拨动实验箱的电源开关,将实验箱上电。

(4)等待系统登录SD卡系统。

(5)登录成功后,在串口调试窗口执行命令控制LED亮灭。

(6)执行相关命令后,LED能正常亮灭,说明LED驱动正常。

image.png


原文地址:https://blog.csdn.net/Tronlongtech/article/details/142454532

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!