android - Arduino数字引脚高低输出似乎颠倒了

标签 android bluetooth arduino arduino-ide digital-logic

我去年写了一个代码,当时运行良好。然而,这次加载相同的代码时,我得到了相反的输出。也就是说,当数字引脚设置为高电平时,它返回低电平,反之亦然。

digitalWrite(led, HIGH) //PROBLEM: Should turn ON the LED but insted it turns OFF

我尝试过 BLINK 示例,在这种情况下,输出似乎也是相反的。

这是代码:

// Pin 13 has an LED connected on most Arduino boards.
// give it a name:
int led = 13;

// the setup routine runs once when you press reset:
void setup() {                
// initialize the digital pin as an output.
pinMode(led, OUTPUT);     
}

// the loop routine runs over and over again forever:
void loop() {
digitalWrite(led, HIGH);   // turn the LED on (HIGH is the voltage level)
delay(1000);               // wait for a second
digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
delay(5000);               // wait for a second
}

根据代码,我的 LED 应打开 1 秒,然后关闭 5 秒,然后再次打开。然而,我得到的输出完全相反,即 LED 亮起 5 秒,熄灭 1 秒。 我需要帮助如何解决这个问题。

我的主要代码是基于 arduino 与 android 的接口(interface)。我一直致力于通过蓝牙解决 android-arduino 连接的问题,我去年确实完成了这个任务,但现在遇到了这个问题。 我已经在三个不同的arduino uno板上尝试过这个,尝试使用不同的传感器,但高低似乎颠倒了。

最佳答案

将电压表或示波器放在输出引脚上。 0 伏时为低电平,5 伏时为高电平吗?如果是这样,则软件和芯片工作正常,并且您的 LED 已接线,因此另一侧将有电压,这意味着芯片的 0 V 将打开它。这是驱动 LED 的常见方法,因为某些芯片吸收的电流比源出的电流多。

关于android - Arduino数字引脚高低输出似乎颠倒了,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21490795/

相关文章:

java - R 类未生成(API 错误?) - Android 项目

java - 如何将用户输入的语音命令与硬编码字符串进行比较

java - 顶级 Android 2D 游戏引擎

android - 如何在android中获取连接的蓝牙设备数据?

python - 使用用户输入中断 while 循环(通过 arduino 和 python 2.7 控制 neopixels)

arduino - 在 OLED 显示屏上滚动长文本

android - 如何在录制的视频上显示当前时间? (安卓)

android - 是否可以在不配对的情况下使用蓝牙或 wifi 从一个 android 手机向另一个 android 手机发送消息?

android - 通过蓝牙打印机 AGPtEK SC28 打印图像

java - 获取 Arduino UNO r3 上 XBee 数据包的有效负载值