linux驱动:[1]LED驱动/dev/led

  LED Linux驱动依次

  测试平台: Xunlong Orange Pi Zero

  驱动依次和Makefile以下:

  在shell中应用以下敕令装载驱动依次:

  应用linux c停止测试:

  停止编译、测试:

  没后果,胜利操作LED!

  写Linux驱动依次的步调不过是:

  这里编写的依次和单片机依次的差别就是:

  单片机通俗不具有MMU(内存办理单位),应用的是物理地址,而现在的SoC通俗都带有MMU,应用虚拟地址。这时候分我们就需求用Linux C库供给的 ioremap 函数去将物理地址映照为虚拟地址。

  led_schematic

  经过检查道理图,我们得知LED(STATUS-LED)接在PA17处。

  pio_datasheet_0

  Port Controller Register 的物理基地址为0x01C20800,在 sun8i_opizero_led.c 中应用:

  把PA_CFG0、PA_CFG1、……PA_PUL1这0x20字节物理地址映照到pacfg[0]~(paccfg[0] + 8)。

  以后的操作也是就跟操作单片机一样的位操作了。

  pio_datasheet_1

  pio_datasheet_2

  对硬件操作封装成固定的驱动依次框架格局,经过编译以后便可以注册到内核以待应用了。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

本文作者2020-04-22 01:11
admin
上一篇:
汗青选修四4.3圣雄甘地获发布时间:(03-17)
下一篇:
古文 舆 除借的意思发布时间:(03-13)

精彩阅读

排行榜

迪恩微信公众号码

扫码微信公众号
给你想要与成长

牛叉体育最牛叉的体育门户
Power by DedeCms