printk()打印的信息没办法在终端显示,那怎么调试驱动呢?

printk 的信息属于内核信息,是不会在终端打印出来的, 如果想要调试驱动,可以使用dmesg命令去查看内核调试信息。

具体命令:dmesg | tail -8

(在‘dmesg’命令后跟随‘tail’命令(‘ dmesg | tail -8’)来输出‘dmesg’命令的最后8行日志)

 
但是可以看到打印信息里面出现了一些乱码,这就是出现的乱码:
 
 
'' 是字符串的结束符,。如果字符串末尾少了‘’转义字符,则其在输出时可能会出现乱码问题。我把 HEX_string[bytes] = ''; 这行代码网上移动,于是就没有乱码了。
 
 
备注:以上测试 的是Intel 大学计划课程的  嵌入式设计Exercise_3solutionsDE1-SoCpart3 。

原文地址:https://www.cnblogs.com/DoreenLiu/p/14144072.html