我想做,
analogWrite(3,100);
analogWrite(6,200);
同时。但问题是只有引脚3上的LED指示灯亮起。我希望两者同时点亮。我听说过直接端口操作,但我只能找到digitalWrite()
的替代品,但我找不到analogWrite()
的替代品。有人可以帮我一个关于如何进行上述操作的简单例子吗?
答案 0 :(得分:0)
当您使用它时,analogWrite(pin, value)
不是analogWrite(value, pin)
。
交换这些数字可以解决您的问题。
请参阅https://cdn.arduino.cc/reference/en/language/functions/analog-io/analogWrite/
答案 1 :(得分:0)
您使用的代码很好,应使用脉冲宽度调制将引脚3至39%的功率设置为引脚,并将引脚设置为6至78%的功率。 analogWrite()取0(off)和255(on)之间的数字。
您应该检查您的引脚和LED是否正常工作。您可以通过交换两个LED来实现,因为您已经知道您的引脚3及其LED工作正常。
您的引脚6或LED可能已损坏或烧毁,或者您可能在引脚6处使用需要更多电流或电压的LED。
答案 2 :(得分:0)
Arduino有一个端口操作功能。要同时打开引脚3和5,请执行
DDRD = B11111110; //set pins 1-7 as output EXCEPT for 0 AT THE SAME TIME
PORTD = B00101000; // sets digital pins 5 and 3 HIGH AT THE SAME TIME
PORTD = B00000000; // sets all digital pins LOW AT THE SAME TIME
AnalogWrite通过PWM工作,因此您可以根据所需的输出电压切换延迟。请注意,您不能使用此方法同时打开引脚2和12,因为它们位于不同的寄存器中。我敢肯定,如果你浏览arduino文件夹,你会发现一个包含analogWrite定义的C / C ++文件。只需将其复制,然后将digitalWrite替换为下面的端口操作函数。希望这有帮助!
答案 3 :(得分:-1)
如果您忘记在设置中设置@Bean
public ConnectionFactory connectionFactory() {
ConnectionFactory connectionFactory = null
Tibjms.setPingInterval(10);
try {
TibjmsConnectionFactory tibjmsConnectionFactory = new TibjmsConnectionFactory(
environment.getProperty("url"));
//few more statments to set other properties
} catch (Exception ex) {
}
return connectionFactory;
}
,可能会遇到这种情况:
pinMode