通过最近几天的学习,了解到飞凌嵌入式的开发内容分为应用层和底层开发。由于应用层的统一性比较好,就选择了稍微底层一点的角度进行测评。 由于uboot没有开放,暂时从飞凌imx6ull的管脚功能入手。按照应用手册快速的测试一遍,其中有看门狗,USB、蓝牙等等。这些功能只要按照手册指示就能顺利完成,没有什么难度并且手册介绍的条理清楚,就不再重述了。 这里重点介绍下imx6ull开发板的PWM输出功能。这个与我们开发项目比较密切,如果能调试通过,就可以控制PWM输出控制电机进行的实际项目。 以下是我对PWM功能调试的过程和一些小的弯路,非常荣幸借助电路城这个平台跟大家分享下,借此抛砖引玉,引起大家对飞凌imx6ull开发的关注和应用热情。 首先,按照原理图和相关资料对PWM功能的管脚复用、配置和底层驱动进行了解。接着参考资料步骤即可。 设置好保存后重新编译Linux生成新的内核、设备树,为了节约时间也可以单独用make命令编译内核和设备树而其它不用编译。编译操作完成的结果如下附件: 然后,将新的内核和设备树通过u盘更新到开发板,并显示开发板更新后的结果如下附件。 最后,将开发板重新启动后按照资料输入指令,用示波器观察对应引脚的PWM输出,波形如下附件,波形频率的确是设置的2.4khz。 至此,PWM功能输出步骤完成。原计划是将PWM输出到电机驱动端控制电机运行,由于时间关系,只能到这个步骤就停下来。后面有机会的话再补上。 在这次评测的结尾,提一下调试过程的一个小插曲,就是发现了文档的一点笔误。原先的文档中要求修改imx6ull-14x14-evk.dts相关内容,因为okimx6ull-c-emmc.dts调用前面这个文件。于是修改前面文件后编译保存后PWM输出没有任何反应,又由于uboot不开源不能跟踪源代码之间的调用,经过一番折腾也没有搞定。最后咨询飞凌技术支持得到是文档笔误,在此感谢飞凌技术支持,他们反馈迅速并更新文档,免去了后面客户像我这样的折腾~。 这次评测就写到这里,如果有讨论的地方,欢迎大家留言,谢谢。
|