樹莓派使用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...