我发觉不管是单片机,还是串口通信,还是传感器,最后根本都是配置寄存器。

我发觉不管是单片机,还是串口通信,还是传感器,最后根本都是配置寄存器。

所以叫你写一个传感器的驱动,也不用怕了,其实就是对传感器寄存器的一些设置,去看传感器芯片的datasheet。

写一个串口的驱动也是的,所以再看STM32那些驱动文件,清晰多了吧,不会说不知道怎么写的,不知道怎么看。

怪不得acfly跟我说光流驱动很好写的。你弄清楚了原理,自然就好写了。

也确实非常感谢华清的这个课,真的把比如串口的驱动代码一行一行地讲了,当然之前原理也讲了,让我再看那些驱动代码不会怕了。

这么想想《原子教你学STM32寄存器版本》真的是非常重要有用的。

https://blog.csdn.net/sinat_16643223/article/details/107174061?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522159973304419724839255699%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=159973304419724839255699&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_v1~rank_blog_v1-1-107174061.pc_v1_rank_blog_v1&utm_term=%E5%AF%84%E5%AD%98%E5%99%A8&spm=1018.2118.3001.4187

现在学各种串口通信,会发现还是设置寄存器

学MUPU6050,依旧是配置寄存器

看芯片手册,传感器的手册,实际也是看的寄存器。

http://www.makeru.com.cn/video/16190_35379.html

所以叫你写一个传感器的驱动,也不用怕了,其实就是对传感器寄存器的一些设置,去看传感器芯片的datasheet。

写一个串口的驱动也是的,所以再看STM32那些驱动文件,清晰多了吧,不会说不知道怎么写的,不知道怎么看。

怪不得acfly跟我说光流驱动很好写的。你弄清楚了原理,自然就好写了。

我想去看看优像的光流的手册,是不是也给你提供了一堆寄存器。

看mini光流也不会再怕这些

https://item.taobao.com/item.htm?spm=a230r.1.14.115.50ac70bdAbdUbS&id=569754747102&ns=1&abbucket=1#detail

我觉得再给你一个陌生的传感器你也是会用的,也敢用,一通百通了,真正把一个传感器MPU6050弄通之后

这样我也更有底气了。

让我现在更有底气了,也喜欢上写驱动了。

招聘重视考串口有道理,你会写串口驱动那些传感器驱动也基本会写了1。

真正弄懂一个比你肤浅重复地做很多项目强得多。

深入吃透一个项目比你泛做十个项目强些,所以不如把华清一个项目跟着学透。
 

现在你才是能真正会用一些基本的传感器模块,能够自己独立写出一个完整的嵌入式系统,单一个单片机肯定是不能组成一个嵌入式系统的,肯定会有串口和传感器,所以确实连这都不会是说不过去的。我现在才真正达到能自己独立写一个嵌入式系统的地步。真的能够自己独立写很重要。

我现在也想直接去看STM32的芯片手册,直接根据芯片手册里面的寄存器信息去写代码,这样才专业。

LCD1602屏幕的驱动还有其他屏幕的驱动你也可以写写,去读读那些屏幕的芯片手册。我现在似乎对写驱动有感觉了。甚至想去写写linux的驱动。

https://www.bilibili.com/video/BV1zC4y1a7fA?from=search&seid=11043509226376857613

我感觉STM32 HAL或者cube就是把那些寄存器配置图形化了,确实啊,这样方便很多,本质是一样的。

你清楚比如SPI的本质和原理之后再用STM32cube配置起来不也清晰得多。

上面这个人写代码的功底还是足够的。真的,好好学学。

linux下的驱动开发和STM32的驱动开发它应该是不同的,但是他们的操作对象应该是相同的,那么应该遵循同样的标准,都是要去配置一些寄存器,都是要UART通信,IIC通信,SPI通信,你哪怕ROS,它和单片机通信还不是得UART。

所以两者应该是有共通的地方的。只是在linux下开发驱动要遵循一些linux的规则。

linux下的驱动开发和STM32的驱动开发它应该是不同的,但是他们的操作对象应该是相同的,那么应该遵循同样的标准,都是要去配置一些寄存器,都是要UART通信,IIC通信,SPI通信,你哪怕ROS,它和单片机通信还不是得UART。

所以两者应该是有共通的地方的。只是在linux下开发驱动要遵循一些linux的规则。

我翻了下linux驱动的书确实是有总线类驱动的

其实我在做无人机SLAM的时候已经涉及到很多驱动了,对吧。其实告诉你T265的寄存器,你应该也可以自己写T265的驱动。

是不是只要有各个硬件的datasheet,就可以操作各种硬件,不光是各种传感器,包括磁盘等等的。会读datasheet是一项基本功。

猜你喜欢

转载自blog.csdn.net/sinat_16643223/article/details/108520182