BeagleBone Black板第六课:C++编程控制GPIO基础

BBB板第六课:C++编程控制GPIO基础

        在一上课我们通过Shell脚本编程实现了对GPIO端口的简单输出控制,实现对两个LED指示灯的交替点亮和关闭,接下来的一两节课,将通过C++程序来实现Shell脚本的功能。为了实现对应的程序控制,我查阅了好多资料,测试过程中发觉网上的一些程序套用过来总是出现各种各样的编译错误,压根就控制不了BBB板,不知是我的BBB板太新,还是以前的程序太旧。最后还是从头开始,重新研究BBB板的文件系统,找出头文件,找出所有相关的函数,终于实现GPIO的C++程序控制。

先不急于写程序,在这一节课先把一些基础讲解下,是非常重要的,当然C语言高手就不用看了。

一、IO读写函数

输入输出的函数基本上全在头文件stdio.h中定义,具体在/usr/include目录中,这个目录还包括其他头文件,最好仔细看下提供了哪些有效的函数,再结合百度到的知识掌握这些经常用的函数。

1、打开文件fopen()和写入数据fwrite()

Fopen(文件名,打开模式),其中文件名必须是完整路径,使用双引号;打开模式比较多,比较常用就是只读r、读写r+,只写w,函数返回值为文件指针(也叫文件描述符);

fwrite(数据,字节数,写入个数,文件指针),有四个参数,少写一个编译都会出错,其中字节数固定为sizeof(char)或sizeof(int),都是4个字节,对应32位系统,BBB板就是32位系统,我就当做常数来用,这个参数理解了很久,反复实验才编译及实验成功;写入个数,就是实际需要的字符数,比如高低电平1或0就是1个字符,out和in分别为3个和2个字符,长度比数据大才能完整写入,如果写小了,就只能写入前面的几个字符,这个得慢慢理解;文件指针就是打开文件获得的文件指针变量。

 

2、sleep()延时函数

这个延时函数定义在

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值