[英]How to write Simple UART Linux Device Driver for Raspberry Pi?
[英]How to disable default Raspberry Pi 2 model B UART driver/module?
我正在为一个学校项目编写一个自定义的Raspberry Pi UART模块,我认为我的模块与默认UART驱动程序存在某种冲突。 每次我使用fwrite向ttyAMA0中写入内容时,即使模块的write函数始终返回零,它也会返回一个等于我写入的数据长度的值。 此外,当我使用mknod创建一个新的ttyAMA1文件并尝试写入该文件时,我的模块会响应,但还会返回数据的长度。 因此,我的问题是如何禁用默认的RPI UART驱动程序/模块?
模块和测试应用程序代码(仅传输功能): https : //github.com/mixr26/sppurv-projekat
任何帮助将非常感激!
我找到了解决问题的办法。 在raspi-config中禁用串行接口会禁用Raspbian驱动程序(AMBA-PL011),但也会禁用UART引脚(GPIO14和GPIO15),这就是为什么我的模块无法工作的原因。 我必须通过更改模块中的GPFSEL寄存器来手动设置UART引脚的功能。 之后,我可以安全地调用request_mem_region()和register_irq(),而不会出现任何错误。 – Mihailo
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.