电子工程师技术服务社区
- 社区首页
- 下载
- 附件
资料描述
上一讲已经能在虚拟机上的linux系统中编写程序,并且在目标平台上运行了,这一讲将通过编写c代码的方式让aworks平台的led闪烁和蜂鸣器响起。
在linux中,所有的外设都被当成文件来看待,所以led和蜂鸣器也不例外。
led和蜂鸣器的接口位于/sys/class/leds目录下:
其中beep为蜂鸣器的接口,led-err和led-run为aworks平台的主板上的两个可编程控制的led的接口。
这几个文件的作用如下:
要在c程序中操作led,首先需要设置trigger文件中的内容。然后修改brightness文件中的内容,设置led点亮或熄灭。对于蜂鸣器也是一样的。
在nfs共享文件目录下新建led-err目录,然后进入该目录,新建led-err.c文件:
打开编辑器,输入以下代码:
然后新建makefile文件,输入以下内容:
同样的原理,可以编写一个控制蜂鸣器发声的c程序。
在终端输入make,编译程序,暂时忽略这些警告。
将开发板用网线和串口线连接pc,打开串口终端,输入用户名和密码后,挂载nfs共享文件夹,然后就可以看到刚才写好的两个程序。
进入led-err文件夹,输入命令执行程序,可以看到开发板上led灯每隔1s钟闪烁一次。
同理,可以执行蜂鸣器的程序,按下ctrl+c可以退出程序。
源代码: