Questions tagged «nucleo»

4
是什么导致我的微控制器LED程序停止工作?
所以,我是一个完全的编程新手。我已经在Arduinos上做了一些基本的工作(实际上是切换LED并在LCD上显示某些东西),我试图自学如何用C编程。做任何固件/软件方面的工作,而且没有夜校可以教它,我想进一步发展我的职业选择。我正在努力了解其中一些命令是如何结合使用的,并遇到了一个问题,我无法理解为什么它不起作用。 因此,我有一个输入和一个输出。我的输出是切换FET的栅极,从而使LED点亮。输入来自与门。因此,我的LED一直亮着,当我从AND门获得输入信号时(已满足2个条件),我希望输出(LED切换)变为低电平(关闭LED。因为输出也连接到“与”输入之一,这也将使输入信号变为低电平。 我想做什么:我只想读取输入内容为“满足条件”,然后关闭LED。然后应将其关闭1秒钟,然后重新打开。如果输入再次变为高电平,则重复该过程。我使用一个简单的推动将开关作为另一个“与”门输入,并测量了按下按钮时输出(MCU输入)为高电平,但LED切换(输出)不会关闭。我的代码(我认为)非常简单,但显然我无法正确理解某些内容,因为它无法正常工作。 这是我正在使用的代码: #include "mbed.h" DigitalIn ip(D7); DigitalOut op(D8); int main() { if (ip == 1){ op = 0; wait (1.0); op = 1; }else{ op = 1; } } 对我来说,这似乎合乎逻辑。在通常状态下,输出为HIGH。如果输入从“与”门获得信号,则LED将关闭1秒钟,然后再次打开。 我做错了什么,因为这看起来像是合乎逻辑的方式,而我只是不明白为什么这不起作用? 如果有帮助,我正在使用Nucleo F103RB。当我使用“ blink”代码并像这样打开和关闭LED时,它可以正常工作,只是当我添加“ if”语句时,它才出错。 这是简化的电路: 模拟该电路 –使用CircuitLab创建的原理图 PS我知道我没有在原理图中添加它们,但是与门的输入和输出上确实具有下拉电阻。
11 led  nucleo 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.