你好!
我做了一个自定义板,其中一个按钮是附加到P0_6。按钮配置为INPUT_PULLUP,连接3.3V和电阻。每当我试图调试它使用Keil工作完美。它在LightBlue应用程序中显示0,按下时显示1。但是当我尝试使用SmartSnippets工具箱时,它总是显示1,所以我不能激活中断。
我在SmartSnippets和一个SPI端口是使用P0_6,所以我把它更改为一个端口,我不使用。但我还是有同样的问题。
知道为什么会这样吗?
非常感谢。
设备:
嗨vrabo,
我不太明白你的问题,你把P06上的按钮配置为输入上拉(这意味着你已经启用了580的内部上拉),你还附加了一个外部上拉电阻?我认为按钮是连接到地面的,每当你按下它,你就会检测到低电平中断。当按下按钮或未按下按钮时,请检查线路,以检查电路的实际状态,并检查是否触发中断。关于flash,当设备在RAM中镜像fw后,你的peripher_init()函数会显示引脚的功能。另外,如果你能分享一些实现,可能会有什么地方出错。
由于MT_dialog
谢谢你的快速回答。
我添加了示意图中那个特定部分的图像。
当我使用Keil uVision进行调试时,默认值(按钮未按下)为0,按下后变为1。我遇到的问题是,当我使用smarsnippets时,默认输入变成了“1”而不是0,所以我的中断永远不会发生,因为它永远不会改变状态。
我在这里添加了蓝牙应用程序的截图。
嗨vrabo,
再次,我不太明白这将如何工作,你有P06作为一个输入拉上,你已经将按钮连接到一个3V3电源,尝试将S1连接到地或尝试改变INPUT_PULLDOWN引脚的配置。你也可以检查专业板和电路使用的按钮。关于它与keil而不是与Smart Snippets工作的事实,我不能解释,因为我说过,只要fw镜像在RAM的引脚配置是一个,你已经在外围init()设置。
由于MT_dialog