若是你不知道什麼是Cubieboard,點這裏。 linux
GPIO是幹嗎的?你能看到的就是那96個pin針腳,能夠用來:外接其餘外設或傳感器,好比LED燈,步進電機,繼電器,溫度傳感器,紅外傳感器,超聲波傳感器等。 shell
理論上,51開發板上的針腳能實現的,cubieboard都能實現。 測試
我折騰了不少天、不少個內核以後,終於邁出了第一步,成功點亮了一個LED燈。 spa
正面 .net
看看引腳 code
控制輸出電平 blog
簡單的說一下步驟:
首先要編譯與你內核版本對應的sun4i-gpio.ko驅動(我同時也編譯了uImage),個人內核版本是3.0.57+
將編譯好的驅動放到SD卡上rootfs分區的/lib/modules/3.0.57+(換爲你的內核版本)/kernel/drivers/misc/sun4i-gpio.ko
而後修改script.bin,轉爲script.fex,添加gpio_para配置段,而後轉回script.bin,放到SD卡第一個分區,覆蓋script.bin(我同時也將uImage給替換了,應該不改uImage也能夠)
gpio_para配置以下(只是測試,沒把全部的針腳都加進來):
ip
[gpio_para] gpio_used = 1 gpio_num = 4 gpio_pin_1 = port:PG00<1><default><default><default> gpio_pin_2 = port:PB19<1><default><default><default> gpio_pin_3 = port:PG02<1><default><default><default> gpio_pin_4 = port:PG04<1><default><default><default>
我用的PG0引腳來作測試的,根據wiki,PG0位於U15(即USB和以太網卡之間的那兩排)的5號引腳,因此我接的這裏,而後把led另外一頭接地(我用的U15的19號針腳)
而後經過 echo 1 > /sys/devices/virtual/misc/sun4i-gpio/pin/***來向對應的針腳輸出高電平(***表明對應的針腳,echo 0則爲低電平),固然也能夠用C語言來實現。 開發