注:这个驱动参考了 https://blog.csdn.net/wince_lover/article/details/54577898#comments 这位大神的博客。
该大神给出了思路,驱动框架。大家可以直接去看他这个,即可以学习一下,也节约钱。
如果你想走捷径,就看我这个吧。
本来这个专栏都快没有动力继续往下写了的。之前弄这个专栏的目的也只是为了给自己做个笔记,方便后面查看,结果今天竟然收到了一个订阅,然后瞬间又有动力了。
这一章介绍一下i.MX6 EPIT硬件定时器。下一章我们介绍一下i.MX7 GPT硬件定时器
在Linux操作系统里面,如果不是需要特别精准的定时,那么一般软件定时器基本也就满足了。但是在实际的项目里面,可能有那么一两个功能需要精准的定时,那么硬件定时器肯定是最佳选择。
我们使用的芯片是IMX6D,它带有2个EPIT硬件定时器。
第一步,阅读手册。我已经阅读过了,就不再读了,没有阅读过的去看看。
第二步,查看设备树相关信息。
在 arch/arm/boot/dts/imx6qdl.dtsi 文件里面,有对epit定时器的相关描述,描述如下:
epit1: epit@020d0000 { /* EPIT1 */
reg = <0x020d0000 0x4000>;
interrupts = <0 56 IRQ_TYPE_LEVEL_HIGH>;
};
epit2: epit@020d4000 { /* EPIT2 */