教程1_点亮第一个led灯

学习模数电路,从点灯开始;

学习51单片机,从点灯开始;

学习stm32,从点灯开始;

学习DSP,从电灯开始;

学习FPGA,从点灯开始;

渐渐的,我们已经习惯了用点灯的方式去接触新的事物,不知不觉中,我们已经成为了人们口中常常提到的“一灯大师 ”。

今天,我们来学习树莓派的使用,依旧从点灯开始,用点灯的方式一步步点亮我们的世界。

 

实验原理

同过树莓派的IO口可以外接很多外设,如舵机、红外发送接收模块、继电器、步进电机、各类兼容传感器、屏幕等。通过这些外设可以制作很多有趣的设计,改善我们的生活方式提高我们的生活质量。

树莓派的IO口驱动能力是比较弱的,驱动电平为3.3V,高电平驱动比电平驱动能力稍弱些,但这也足够驱动led工作,为方便理解,以下实验以高电平驱动方式进行。IO口输出高电平,led灯亮,输出低电平则灭。

 

实验内容

  • 使用面包板和杜邦线连接电路
  • 通过ssh局域网无线连接树莓派
  • 使用wiringPi控制IO
  • 使用vim编辑器

 

实验元器件

  • 树莓派及电源 x1
  • 无线网卡 x1
  • 串口连接器 x1
  • 面包板 x1
  • Led灯 x1
  • 电阻220欧 x1
  • 杜邦线 若干

 

以上器件可在树莓派创客社区淘宝直营店购买:https://52pi.taobao.com

 


实验步骤

一、连接线路。

%e5%9b%be%e7%89%871%e5%9b%be%e7%89%872

实物图如下:

%e5%9b%be%e7%89%8711

二、通过ssh连接连接树莓派

通过上一课程的学习,已经知道如何通过串口连接树莓派进行联网,接下来学习如何在局域网中通过ssh无线网络连接树莓派,这样摆脱了接串口线的麻烦,方便很多。

1.首先通过串口连接上树莓派,登陆进入树莓派后输入 ifconfig 回车。可以查看到树莓派的ip地址。

%e5%9b%be%e7%89%874
2.电脑打开PuTTY软件,选择SSH模式,输入上面查看的ip地址,端口22,确认无误后点击Open,输入默认用户名密码,登陆完成。

%e5%9b%be%e7%89%875

%e5%9b%be%e7%89%876
三、使用vi编辑器编写控制代码及编译运行

1.登陆树莓派后,输入cd ./wiringPi 进入wiringPi目录,使用vi编辑器编辑c源文件,

输入vim.tiny blink.c,如目录下有blink.c文件打开编辑,若无则会新建一个打开编辑。

%e5%9b%be%e7%89%877

2.按i进入输入模式,输入C语言代码,如下是使GPIO17间隔500ms交替输出高低电平的代码。

%e5%9b%be%e7%89%878

对应各栏接口的标号,如以下程序使用的0即为树莓派的GPIO17接口也是物理接口的11接口。

#include <wiringPi.h>

int main (void)

{

wiringPiSetup () ;

pinMode (0, OUTPUT) ;

for (;;)

{

digitalWrite (0, HIGH) ; delay (500) ;

digitalWrite (0, LOW) ; delay (500) ;

}

return 0 ;

}

%e5%9b%be%e7%89%879

 

代码书写完毕后输入按esc退出编辑模式,再输入:wq进行保存退出

3.输入gcc –o blink blink.c -lwiringPi编译程序,

  • gcc是对c语言编译的声明,
  • -o blink是输出工程文件到blink文件(接下来的执行文件)
  • blink.c是刚刚编写的c语言程序
  • -lwiringPi是库的调用

输入sudo ./blink执行程序。(需要通过sudo命令获取权限)

%e5%9b%be%e7%89%8710

 

可以看到面包板上的led在闪烁,恭喜您已学会用树莓派成功点亮第一个LED灯。

%e5%9b%be%e7%89%873

“教程1_点亮第一个led灯”的17个回复

    1. linux 有个crontab 周期执行服务,把编译好的文件 配置到这个命令就行,linux 系统是 搞这玩意的入门基础

    1. 我的也一样 你的问题解决了吗? 可以的话教教我 在pinMode()这一块段错误。联系我qq343866647 谢谢!

    1. 如果用BCM(博通)命名的方法,引脚是GPIO 17, 在wiringPi引脚命名上,它就是0号引脚。
      gpio readall就可以看到

knowncold进行回复 取消回复

您的电子邮箱地址不会被公开。

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据