嵌入式开发者社区

标题: AM335x 《使用TIMER计算外部脉冲个数方法》 [打印本页]

作者: 梁淑怡-Tronlong    时间: 2019-12-2 14:22
标题: AM335x 《使用TIMER计算外部脉冲个数方法》
测试硬件:TL335x-IDK开发板;
软件:Linux-4.4.12--g15ea277
案例:《使用TIMER计算外部脉冲个数方法》
问题:拓展口的引脚用杜邦线连着,基于SD卡测试没有问题,基于NAND启动测试会出问题。

回答:

     1.报错原因:例程使用的定时器输入管脚为R7/GPMC_ADVN_ALE,而用的NANDFLASH时,也要用的该管脚。所以从SD卡启动运行正常,从NAND启动运行会出错。
     2.解决方法:若需从NANDFLASH启动系统,则需更换一个定时器输入管脚。
                        AM335x一共有4个timer输入管脚(timer4/timer5/timer6/timer7各一个),但开发板都用作其他功能了。相对于其他管脚,方便使用的管脚是TL335x-IDK底板的USER KEY4(A15/XDMA_EVENT_INTR0/GPIO0[19]),将设备树的pinmux配置成该管脚,通过按键可以产生脉冲来测试(按键测试可能存在抖动现象)。
[attach]5938[/attach]

[attach]5939[/attach]
需修改设备树文件: arch/arm/boot/dts/am335x-icev2.dts  如下图,屏蔽按键的配置,将对应的引脚配置成Timer4的模式:
[attach]5940[/attach]
[attach]5941[/attach]

修改完成设备树文件,重新编译,替换后测试。
[attach]5942[/attach]
从NAND启动必须这样替换设备树文件。

[attach]5943[/attach]
测试:加载驱动,查看捕获值,按下按键,再看看捕获值。
[attach]5944[/attach]



作者: czs----Tronlong    时间: 2019-12-3 08:32
感谢分享




欢迎光临 嵌入式开发者社区 (https://51ele.net/) Powered by Discuz! X3.4