我正在使用各种(主要是蓝牙)开发板(ConnectBlue、Ubertooth、USRP等)。为了研究蓝牙在物理层上的通信行为。为了获得更多的见解,我正在寻找一种在Windows7桌面计算机上调试蓝牙堆栈的方法。我的用例相对简单:我有自定义的基带实现,它可以建立与Windows计算机的连接。我想看看蓝牙硬件/驱动程序所做的一切。
我不确定如何处理这个问题:我想看看Bluetooth Chip/Windows驱动程序何时接收到信号,以及它(消息)是如何通过各种相关API进行解释/格式化/传递的。这主要与内核调试有关。有没有办法在WinDBG中显示所连接硬件的状态?也许要在蓝牙内核服务上执行(内核) API日志记录?
我希望更熟悉设备驱动程序调试和Windows内核服务的人能在这里给我一些指导。
发布于 2012-03-03 07:44:38
既然你在这上面似乎没有得到任何点击率,我会尽我所能地发布。
我没有任何确切的答案,但在NTDebugging博客上,他们经常在windbg中进行硬件级调试。
即http://blogs.msdn.com/b/ntdebugging/archive/2007/06/22/where-the-rubber-meets-the-road-or-in-this-case-the-hardware-meets-the-probe.aspx
老实说,这不仅需要广泛的硬件知识,而且还需要深入了解windows的内部结构,以及蓝牙协议栈是如何编写的,但WDK可能是理解蓝牙协议栈的一个很好的起点。我也会去博客上看看小贴士和窍门。
另一个可以查看和提问的地方是http://osronline.com/,这是一个关于设备驱动程序的更好的社区,所以他们应该有一些合理的提示来做你想要做的事情。
https://stackoverflow.com/questions/9336492
复制相似问题