erlang下 BeagleBone的GPIO控制实验、以及自带led点亮方法

原创 2013年12月04日 13:29:03

发现erlang控制gpio也是很容易的。

做了个实验

一、控制BeagleBone自带led灯

1、获取led路径下led名字列表

-define(LED_SYSFS_DIR, "/sys/class/leds/").
list() ->
    case file:list_dir(?LED_SYSFS_DIR) of
	{ok, LedNames} ->
	    {ok, LedNames};
	{error, enoent} ->
	    {ok, []}
    end.
2、发送命令

BrightnessFile = ?LED_SYSFS_DIR ++ Name ++ "/" ++ "brightness",
{ok, Brightness} = file:open(BrightnessFile, [read, write]),
file:pwrite(Brightness, 0, integer_to_list(1)),
timer:sleep(10000),
file:pwrite(Brightness, 0, integer_to_list(0)),
file:close(Brightness).

二、控制BeagleBone的GPIO点亮led

1、找出需要测试的引脚,我以GPIO3_21实验。

{ok, D} = file:open("export",[read,write]).      
** exception error: no match of right hand side value {error,eacces}
17> pwd().
/sys/class/gpio
ok
18> {ok, D} = file:open("export",[read,write]).
** exception error: no match of right hand side value {error,eacces}
19> {ok, D} = file:open("export",[write]).     
{ok,<0.81.0>}
20> file:pwrite(D, 0,117).                     
{error,einval}
21> file:pwrite(D, 0,"117").
ok
22> {ok, E} = file:open("gpio117/direction",[read,write]).
{ok,<0.85.0>}
23> file:close(D).
ok
24> file:pwrite(E, 0,"out").                              
ok
25> file:close(E).          
ok
26> {ok, F} = file:open("gpio117/value",[read,write]).    
{ok,<0.90.0>}
27> file:pwrite(F,0 ,"1").                            
ok
28> 
28> 
28> file:pwrite(F,0 ,"1").
ok
29> file:pwrite(F,0 ,"0").

此处需要对引脚进行确认gpio

/sys/class/gpio中可以看见export文件

GPIOn_x 所对应的编号为32 * n + x  此处GPIO3_21

细节请参考

http://blog.sina.com.cn/s/blog_9e16dc4d01012x7z.html

TI CC2530基础实验(普通GPIO操作——点亮led灯)

IO端口 CC2530有21个数字输入/输出引脚,可以配置为通用数字I/O或外设I/O信号,配置为连接到ADC、定时器或USART外伤。这些I/O的用途可以通过一系列寄存器配置,由软件加以实现。 ...

控制GPIO, 点亮led,实现跑马灯

ads下编译调试运行成功,然后烧写到nand flash,从nand flash启动但是烧写的到nand flash运行时,led4一直都不亮,问题还没解决,我想是不是堆栈指针设置有问题;******...

6410寄存器控制GPIO点亮LED

1.      确定LED连接的GPIO 根据电路图可知,两个LED灯,D1、D2分别通过GPE1、GPE2进行控制。 2     GPE1、GPE2相关的寄存器 a. GP...

STM32学习笔记——控制GPIO输出点亮LED灯(直接操作存储器)

控制GPIO输出点亮LED灯——直接操作存储器 一.预备知识 使用51单片机控制IO口相对来说要简单得多,最小系统搭建完毕后直接通过软件往各IO口写“1”或者写“0”即可。但使用STM32控制IO...
  • SahPah
  • SahPah
  • 2014年08月13日 12:04
  • 3756

[转载]STM32学习笔记——控制GPIO输出点亮LED灯(直接操作存储器)

原文地址:STM32学习笔记——控制GPIO输出点亮LED灯(直接操作存储器)作者:Nao2Mo2 控制GPIO输出点亮LED灯——直接操作存储器 一.预备知识 使用51单片...

【蓝牙低功耗BLE】控制GPIO来点亮LED

这节讲一下最简单的,也是最基础的东西,CC2540的IO操作,把PORT口当做GPIO来用,废话不多说,往下看。 1、硬件电路 硬件电路时最简单的,用一根GPIO去控制LED灯,由于GPIO作为o...

Arduino教程 初体验之点亮自带LED灯(含管脚图)

1、IDE安装 2、驱动安装 3、打开闪灯案例 4、原理图找到LED引脚 5、IDE设置(串口选择、开发板型号选择、编译器选择、打开、保存文件、下载) 6、引脚图...
  • Leytton
  • Leytton
  • 2017年06月19日 12:34
  • 826

GPIO工程-点亮led.rar

  • 2012年08月12日 21:30
  • 782KB
  • 下载

jz2440裸板开发之GPIO:点亮一个led灯(1)

实验目的:点亮一个led灯。
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:erlang下 BeagleBone的GPIO控制实验、以及自带led点亮方法
举报原因:
原因补充:

(最多只允许输入30个字)