小猎骨黑闪光板载 USR0 LED C++,代码运行但 LED 不变
beaglebone black flash onboard USR0 led c++, code runs but led doesn't change
我有一个安装了Debian的BeagleBone Black。我用MobaXterm成功地对其进行了ssh处理,并编写了以下代码(已经在nano和gedit中编写/编译/运行了此代码):
#include <iostream>
#include <stdio.h>
#include <unistd.h>
using namespace std;
int main(){
cout << "LED Flash Start" << endl;
FILE *LEDHandle = NULL;
const char *LEDBrightness="/sys/class/leds/beaglebone:green:usr0/brightness";
for(int i=0; i<10; i++){
if((LEDHandle = fopen(LEDBrightness, "r+")) != NULL){
fwrite("1", sizeof(char), 1, LEDHandle);
fclose(LEDHandle);
}
usleep(1000000);
if((LEDHandle = fopen(LEDBrightness, "r+")) != NULL){
fwrite("0", sizeof(char), 1, LEDHandle);
fclose(LEDHandle);
}
usleep(1000000);
}
cout << "LED Flash End" << endl;
}
基本上我遵循了这里显示的步骤:http://elinux.org/Beagleboard:C/C%2B%2B_Programming
代码编译并运行。在终端中,它显示预期输出,但在BeagleBone Black上,USR0 led从未改变其通常的心跳模式。有人知道为什么会这样吗?
提前谢谢。
首先从命令行检查是否全部工作
# cd beaglebone:green:usr0
# more trigger
none ...... mmc0 mmc1 timer oneshot [heartbeat] backlight gpio cpu0 default-on transient
# echo none > trigger
你会看到led停止闪烁。现在试试这个
# echo 1 > brightness
第一个LED应点亮
# echo 0 > brightness
第一个LED应该熄灭。
# echo heartbeat > trigger
将其设置回心跳。
如果所有这些都有效,那么可能是你做错了什么。做一个正确的错误检查,这样调试它会更容易。
相关文章:
- 在执行其他功能的同时播放动画(LED矩阵和Arduino/ESP8266)
- 为什么我的变量没有更新,我的 LED 没有亮起?
- 如何避免LED在循环状态变化中闪烁?
- ATMEGA32 8x8 LED 矩阵控制
- 如何修复 Arduino LED 串控制器的代码?
- 如何让 LED 代码从键盘按下运行
- 创建头文件并使用FastLED库中的CRGB LED阵列时出错
- 使用LPC1768控制 LED
- 我在微控制器STM32F373发现中点亮LED的问题
- 使用 ARDUINO 和处理在 8x8 LED 矩阵上显示数据时出现问题
- Adafruit NeoPixel库在寻址超过7个LED灯条时不起作用
- 尝试使用异或和位移运算符切换随机 LED
- 使用串行监视器 arduino 控制 LED
- 如何修复闪烁的led矩阵和液晶菜单屏幕
- Arduino RGB LED随机PWM级别
- wx小部件和代码:块 - 缺少 <wx/led.h> 用于 LED 组件
- 对于循环:LED 在 Arduino 上无法正确显示
- C++/Arduino 闪烁 LED 不同的间隔
- 如何逆转Arduino中的LED矩阵
- 根据通过/失败返回,在MFC对话框中更改LED颜色