RTT的驱动框架应该怎么学呢?之前一直习惯了HAL库+RTOS内核编程的方式,然而一接触了驱动框架,HAL层的驱动就必须被打散,添加到驱动框架的各个角落,而不能再像之前那样直接用了。而在这个移植的过程中,个人的体验非常不好,为了把HAL层代码添加到设备框架里,这期间出现了各种各样的移植问题,非常折磨。请问关于设备驱动框架的原理,以及从HAL库驱动的移植方法,有没有相关文档来描述?如果每用一个外设框架,都要从头到尾读代码的话,实在是太浪费时间了!
驱动框架里的根本难点其实是指针,一定要把指针搞懂,还有结构体指针,其实也是指针;慢慢来,谁都是从零开始的,当你弄懂设备驱动的框架结构以后,就离代码的优雅境界不远了😄
其实驱动框架体现的是分层的思想,每个层只做各个层次的事情,然后提供接口给其它层次注册、使用。
事实上,和linux驱动是很像的,当然,肯定比之简单很多。
如果说要怎么学,最直接的方法当然是花时间,学什么?多读源码,思考为什么这样写?当量积累多了,自然就会发生质变,你会突然发现框架也就那样。