zcu102开发板驱动编写详细步骤

内核编译一搞就是一个小时,只能干瞪眼,利用这点时间用一个最简单的驱动把近期学的东西做一个整理。
1,下载开发板对应的内核源码。我用的是ZCUO102开发板,下载网址为在这里插入图片描述
记得选择对应的版本。我的板子里面的内核是2019.01,但是我下了2018.02的,耽误了不少事。
2,配置内核。
板子对应的交叉编译链是aarch64-linux-gnu-gcc。对应修改源码主目录下的Makefile。
在这里插入图片描述
搜索ARCH找到这两行,做出对应修改。
之后输出make menuconfig,进入内核配置界面,

在这里插入图片描述
在这里插入图片描述
把交叉编译链填入第一栏。保存退出。
寻找vermagic.h文件,打开后找VERMAGIC_STRING判断一下开发板内核版本与这个是否相同,在开发板输入uname -r,查看开发板内核版本。改成一样的。
在这里插入图片描述
在这里插入图片描述
我刚开始这里的vermagic是4.14.0,开发板是4.14.0-xilinx-v2018.2,最后加载驱动时候就报错了。后面那一串一个字符都不能少。后面那两个引号中间的空格也不能少,这个也报错过一次,心累。
3,编译内核。直接输入make就行。然后就是一个小时左右的等待。
4,编译内核的时间可以用来写个驱动。随便写在哪个文件夹都行,建议不要写在内核源码里,有特殊需求除外。建立一个文件夹,里面新建两个文件,一个hello.c,一个Makefile。分别写上

#include <linux/module.h>
#include <linux/init.h> 
#include <linux/kernel.h>
MODULE_LICENSE("GPL");
MODULE_AUTHOR("tang");
static int hello_init(void)
{
    printk("hello world!\n");
    return 0;
}
static void hello_exit(void)
{    
	printk("goodbye!\n");
}
module_init(hello_init); 
module_exit(hello_exit);

这段代码粘贴过来这个博客就会卡住,必须用word再复制一遍,烦。
然后是Makefile

KERN_DIR = /home/tang/Documents/bsp/xilinx-zcu102-2018.2/components/plnx_workspace/linux-xlnx-xilinx-v2018.2
all:
 make -C $(KERN_DIR) M=`pwd` modules
clean:
 make -C $(KERN_DIR) M=`pwd` modules clean
 rm -rf modules.order
obj-m    += hello.o

KERN_DIR需要改成你自己的内核源码对应的文件夹位置。
5,等内核make完毕后,在驱动文件夹内make一下,就可以生成hello.ko。
在这里插入图片描述
6,打开WINSCP,没有的话百度搜一下下载就行。我是用这个通过tftp把.ko文件传到开发板。你有别的办法也行。
在这里插入图片描述
输入ifconfig查看开发板的ip地址。
在这里插入图片描述
连上之后,把hello.ko拖到右边。就可以在开发板上找到这个文件。在这里插入图片描述
不要问我为啥没printk,我暂时也不清楚。等我整明白了再写。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: ZCU102开发板是赛灵思(Xilinx)推出的一款高性能嵌入式开发板,集成了多种功能和接口,其中包括了HDMI接口。 HDMI(高清晰度多媒体接口)是一种数字化音视频传输接口,具有高带宽和高画质的特点。通过连接HDMI接口,ZCU102开发板可以实现高清晰度音视频的输入和输出功能。 在ZCU102开发板上,HDMI接口提供了一个方便的方式来连接高清显示设备,例如电视、显示器等。通过HDMI接口,用户可以将开发板上的视频输出直接传输到显示设备上,实现高清晰度的图像显示。 另外,ZCU102开发板上还集成了一个HDMI输入接口,用户可以通过外部设备的HDMI输出口将高清视频信号输入到开发板上。开发者可以通过在开发板上搭建相应的嵌入式系统,对接收到的视频信号进行处理和分析。 通过ZCU102开发板的HDMI接口,用户可以方便地实现音视频数据的输入和输出,开发出各种应用,例如高清视频播放、视频监控、图像处理等。同时,HDMI接口还支持多声道音频传输,可以实现高质量的音频输出。 综上所述,ZCU102开发板上的HDMI接口为用户提供了方便易用的高清音视频输入输出功能,使开发者能够更好地进行嵌入式应用程序的开发。 ### 回答2: ZCU102开发板是一款由赛灵思公司推出的高性能开发板,具备HDMI接口。 HDMI(High-Definition Multimedia Interface)是一种数字音视频接口标准,可以传输高清音视频信号,并支持多通道音频、3D视频和高速数据传输。 ZCU102开发板上的HDMI接口可以将图像和音频信号传输到显示器或电视上,且具备良好的兼容性和稳定性。通过HDMI接口,可以将开发板上的视频内容实时显示在外部显示设备上,方便开发者实时观察图像或视频处理的效果。 使用ZCU102开发板的HDMI接口,可以将开发板与其他外部设备进行连接,例如电视、显示器、投影仪等。通过HDMI接口的高清信号传输,可以实现高质量的画面和音频效果。此外,HDMI接口还支持多种分辨率和频率的选择,可以根据需求进行配置。 对于开发者而言,利用ZCU102开发板的HDMI接口,可以开展多种应用,例如图像处理、视频编解码、数字信号处理等。同时,ZCU102开发板还提供了丰富的开发资源和工具,使得开发者能够更加便捷地进行开发和调试。 总而言之,ZCU102开发板上的HDMI接口是一项重要的功能,可以实现高清音视频信号的传输,并为开发者提供了广阔的应用空间。 ### 回答3: ZCU102开发板是一款高性能的嵌入式开发板,具有支持HDMI接口的功能。 HDMI(High-Definition Multimedia Interface)是一种数字音视频接口标准,能够传输高质量的音频和视频信号。ZCU102开发板上配备了HDMI接口,可以通过该接口将开发板与外部显示设备(如电视、显示器等)连接起来。 使用ZCU102开发板的HDMI功能,可以实现将开发板上的图像和音频内容通过HDMI接口传输到外部显示设备上显示。这对于基于ZCU102开发板进行图像处理、视频播放等应用的开发非常有用。 要使用ZCU102开发板的HDMI功能,首先需要通过HDMI线将开发板的HDMI输出端口与外部显示设备的HDMI输入端口相连。接下来,在开发板上的软件中进行相关的配置和设置,以使HDMI输出能够正常工作。通常,开发板上会提供相应的软件库和驱动程序,用于控制和操作HDMI接口。通过这些软件工具,可以设置HDMI显示的分辨率、刷新率等参数,以及控制音频输出等功能。 使用ZCU102开发板的HDMI功能,开发者可以方便地进行图像和音频的传输与显示,从而更好地实现各种嵌入式应用的开发需求。无论是开发基于图像处理的应用,还是进行视频播放、游戏等应用的开发,ZCU102开发板的HDMI功能都能够提供高质量、高清晰度的音视频传输,满足开发者的需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值