樹莓派使用WiringPi實現LED燈閃爍

2021-06-26 02:48:04 字數 1420 閱讀 1267

樹莓派使用wiringpi實現led燈閃爍

前幾天入手樹莓派,刷了系統就想做一些有趣的事情。

工具:乙個led發光二極體(各顏色皆可,我選用的是3v綠色的)

乙個定值電阻(為了樹莓派的安全,建議使用,具體多少根據情況而定,我沒有使用)

母對母杜邦線2根(可選)

乙個樹莓派且已燒好系統

首先安裝wiringpi,安裝過程不再贅述。

然後寫乙個簡單的**。

要是不知道wiringpi各個函式的作用可以參考

如果鏈結不能用請告訴我

源**如下:

#include 

#include

#include

int main(int argc,char *argv)

else pinnum=atoi(argv[1]);

pinmode(pinnum,output);system("clear");

printf("請設定led閃爍的次數:");

scanf("%d",×);

printf("請設定led閃爍間隔的時間(毫秒):");

scanf("%d",&t);

printf("開始閃爍......\n");

for(i=0;i

$vim myfirstled.c

編輯完之後wq儲存退出

編譯:$gcc -wall myfirstled.c -o myfirstled -lwiringpi

!!注意不加 -lwiringpi 引數會報錯

執行一下

#./myfirstled 1

我設定閃爍次數為50000次

閃爍間隔為50ms

可以使用

$gpio readall

命令來檢視當前機型的gpio以及在wiringpi中的定義

因為我選的是gpio 1,所以我需要把led接在針腳8和針腳12上(我的杜邦線在路上,沒辦法只能用手接)

把樹莓派倒置,看針腳的焊點,有乙個是方形焊點,其餘的都是圓形的,那個方形的代表針腳1,它旁邊那個代表針腳2,以此類推。這個是可以跨機型的方法。

如圖所示:

最主要的是wpi和physical。

至於每一項什麼意思手冊中都有介紹。

當然你要是覺得每次看對映關係太麻煩,可以參考手冊更改程式。

效果圖(由於不讓上傳2m以上檔案我也只能截圖了):

樹莓派 wiringPi庫的使用

侷限性wiringpi庫是乙個非常實用的庫,它使我們能把樹莓派像stm32一樣應用而不用掌握linux的核心。gpio vderuio 工作室做了乙個wiringpi的使用者手冊,將庫函式分為11類。v0.0.1 這個只展開常用的幾個函式 後面的我還沒用過 int wiringpisetup voi...

樹莓派wiringPi輸出PMW

只有wringpi第1腳 第23腳 第24腳和第26腳才支援輸出硬體pwm波 pinmode 1,pwm output 函式在系統模式 sys mode 下無效。pwmwrite 1,22 輸出占空比為22 1024的pwm波 新增標頭檔案 include 主函式中 int pwmpin 7 wir...

樹莓派 wiringPi 時間函式

wiringpi不僅提供硬體操作的介面,同時也提供了一些時間管理函式。void delay unsigned int howlong 延時ms,最大傳入32位無符號型整數,大約49天。實際上是睡眠,不占用cpu。由於linux是多工的,所以實際延時時間可能會更長。void delaymicrosec...