树莓派 C LED闪烁

学习记录

功能

通过c程序,控制LED1Hz闪烁。

代码

/*************************************************************************
    > File Name: 2.c
    > Author: admin
    > Mail: 
    > Created Time: 2020年01月01日 星期三 11时49分27秒
    > Modified Time:2020年01月01日 星期三 13时31分21秒
 ************************************************************************/

#include <stdio.h>
#include <stdlib.h>
#include <wiringPi.h>

int main()
{
    wiringPiSetupGpio();
    
    pinMode(10, OUTPUT);

    for(;;)
    {
        digitalWrite(10, HIGH);
        printf("led off\n");
		delay(500);
		
        digitalWrite(10, LOW);
        printf("led on\n");
        delay(500);
    }
    return 0;
}

函数解释

  1. wiringPiSetupGpio 函数初始化 wiringPi,假定程序使用的是 Broadcom 的 GPIO
    管脚定义,即BCM码。
  2. pinMode 函数。该函数的原型为:void pinMode(int pin, int mode);使用该函数可以将某个管脚讴置为 INPUT(输入)、OUTPUT(输出)、PWM_OUTPUT(脉冲输出)或者 GPIO_CLOCK(GPIO 时钟)。
    需要注意的是仅有管脚 1(BCM_GPIO 18)支持 PWM_OUTPUT 模式,仅有管脚 7(BCM_GPIO 4)支持 CLOCK 输出模式。
    在 Sys 模式下,返个函数没有影响。你可以通过调用 gpio 命令在 shell 脚本中来设置管脚的模式。
  3. digitalWrite 函数。该函数的原型为:void digitalWrite(int pin, int value);使用该函数可以向指定的管脚写入 HIGH(高)或者 LOW(低),写入前,需要将管脚讴置为输出模式。
    wiringPi 将任何的非 0 值作为 HIGH(高)来对待,因此,0 是唯一能够代表 LOW(低)的数值。
### 树莓派绿色电源指示灯闪烁及开机失败的解决方案 对于树莓派5出现绿灯频繁闪烁而无法正常启动的情况,这通常是由于特定类型的硬件或软件问题引起的。当遇到此类情况时,可以采取一系列措施来诊断和解决问题。 #### 1. 确认LED闪烁模式的意义 根据观察到的现象——即绿灯短闪八次,这种现象表明存在读取SD卡错误的可能性[^1]。这意味着操作系统可能未能成功加载自SD卡上的文件系统。 #### 2. SD卡检查与修复尝试 既然已经提到过格式化SD卡的操作并未奏效,则建议进一步验证该存储介质的状态: - 使用另一台计算机读取此SD卡的内容; - 利用工具如`fsck`命令(适用于Linux环境)或其他专用软件检测是否存在坏道等问题; - 如果条件允许的话,最好更换一张新的高质量MicroSD卡重试安装官方镜像。 ```bash sudo fsck /dev/sdXn # 替换sdXn为实际设备名 ``` #### 3. 排查供电不足的风险 确保使用的USB-C电源适配器能够提供足够的电流支持(至少达到推荐标准)。不稳定的电力供应也可能引发类似的症状。 #### 4. 验证其他外接组件的影响 断开所有不必要的外围设备连接后再测试启动过程;某些情况下,不当配置或者故障配件可能会干扰正常的引导流程。 #### 5. 考虑物理损伤因素 考虑到长期直接插拔电源可能导致电路板受损的事实,有必要评估主板本身是否有明显的烧毁痕迹或者其他形式的损害迹象。如果怀疑是这种情况造成的永久性破坏,则需考虑购买新设备作为替代方案。 综上所述,针对当前描述的症状,最有可能的原因在于SD卡数据损坏以及因不当操作习惯带来的潜在硬件风险。遵循上述指导方针逐一排查可以帮助定位具体原因并找到合适的解决办法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值