Ti大神好:
请教一个问题,我们正在使用gpio拉高拉低测试一个硬件问题
我创建了空白项目,其中初始化了IO9和IO1 ,.在while循环中拉高两个引脚然后延迟一秒再拉低,这样可以控制led灯进行闪烁,如图
可是我下载代码发现led灯常亮,可是我在debug的时候在while循环中设置断点,单步调试(F6) 是可以正常闪烁的, 但是如果不设置断点 让代码自己跑,就会出现led常量的情况,
即使将sleep 函数改为上面的循环也不行
优化等级已经设置为0,这种情况应该怎么解决
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Ti大神好:
请教一个问题,我们正在使用gpio拉高拉低测试一个硬件问题
我创建了空白项目,其中初始化了IO9和IO1 ,.在while循环中拉高两个引脚然后延迟一秒再拉低,这样可以控制led灯进行闪烁,如图
可是我下载代码发现led灯常亮,可是我在debug的时候在while循环中设置断点,单步调试(F6) 是可以正常闪烁的, 但是如果不设置断点 让代码自己跑,就会出现led常量的情况,
即使将sleep 函数改为上面的循环也不行
优化等级已经设置为0,这种情况应该怎么解决
您好,
你试一下 使用定时器来实现精确延时
你需要先创建定时器 (可以参考这个方法)
然后
就像您下面说的 切换指定引脚上的LED状态 利用toggle
// // ======== gpioButton0Fxn ======== // Callback function for the GPIO interrupt on CONFIG_GPIO_BUTTON0 // // Note: index is the GPIO id for the button which is not used here // void gpioButton0Fxn(uint_least8_t index) { // Toggle the LED GPIO_toggle(CONFIG_GPIO_LED0); }
您好,我任务不是sleep的问题,我如果使用一个普通的for循环空跑一会儿,也会存在电平不切换
但是我在debug仿真的时候,单步执行是可以切换led的开关的