天天看點

pcDuino點亮LED

從買到闆子, 到真正把LED點亮, 前會用了差不多一周的時間。 原諒我的效率之低吧, 我也是受害者。

首先聲明一下, 大部分代碼是從網上找的, 我隻是負責整理。 我是一個有節操的人, 如有侵權, 請告之。

好, 下面開始從零開始到點亮LED。

硬體環境: pcDuinoV2、 杜邦線、 LED、序列槽線、以太網絡等。

軟體環境: pcDuinoV2自帶的作業系統。

軟體環境搭建:

sudo apt-get update
sudo apt-get install pcduino-linux-headers-3.4.29+
           

硬體環境搭建:

調試序列槽、網絡什麼的就不說了, 下面主要說下LED的接法。 還是上圖吧。

pcDuino點亮LED

1接的是GPIO4和LED的負極, 2接的是3.3V電源和LED和正極(連我這個文科生都知道腳長的那個是正極, 你會不知道麼?)。 這裡我要特别吐槽下, 誰都别攔我!

這個圖熟悉麼? 官網下的诶, 但是, 它标注的GPIO接是有錯誤的!!!

pcDuino點亮LED

正确定的在這裡:

pcDuino點亮LED

(圖檔截自原理圖, 下面那個連結有下載下傳位址)

下面這篇文章會很詳細的介紹如果點亮闆載的LED:http://www.arduino.cn/thread-4824-1-1.html, 現在主要介紹一下如果點亮接在GPIO4上的LED。

pcDuino點亮LED

(圖檔截自原理圖)

pcDuino點亮LED

(圖檔截自A10手冊, 上面那個連結有下載下傳位址)

現需要在“手把手教你用pcDuino的A10點燈”的驅動代碼中添加如下代碼。

#define GPH16_CFG         (1 << 0)
           

的下面添加

#define GPHLED_CFG       (1 << 4)
           

*gph_cfg1 &= ~(GPH15_CFG);
/*将PH15_CFG位置1,即設定為輸出模式*/
*gph_cfg1 |= GPH15_CFG;
           

的下面添加

*gph_cfg1 &= ~(GPHLED_CFG);
*gph_cfg1 |= GPHLED_CFG;
           

/*置0,相當pin_write寫0*/
*gph_date &= ~(0x03<<15);
           

的下面添加

*gph_date &= ~(0x01<<9);
           

最後在

/*置1,相當pin_write寫1*/
*gph_date |= (0x03<<15);
           

的下面添加

*gph_date |= (0x01<<9);
           

繼續閱讀