实验七 LED灯控制实验教材.docx

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验七LED灯控制实验实验目的1、掌握通过文件系统操作 I/O设备的方法;2、学会使用S5PV210 的GPIO设备实现简单的功能。实验设备1)装有Ubuntu系统或装有Ubuntu虚拟机的PC 机一台;2)A8嵌入式实验箱一台;3)本实验用到的实验箱模块有:S5PV210 CPU板模块,LED 模块实验要求循环让led1-led4点亮实验原理在Linux 系统中,所有设备都是以文件的形式被打开并进行读/写操作的,本实验中使用POSIX容的文件操作接口函数对底层设备进行操作。POSIX是Portable Operating System Interface foIX的首字母缩写词,是一套 IEEE 和ISO标准。这个标准定义了应用程序和操作系统之间的一个口。只要保证他们的程序设计的符合 POSIX 标准,开发人员就能确信他们的程序可以和支持SIX 的操作系统互联。这样的操作系统包括大部分版本的 UNIX。POSIX 标准现在由 IEEE 的一分支机构Portable Applications Standards Committee(PASC)维护。本实验需要用到以下几个文件操作函数:【函数原型】int open(const char *pathname, intoflag); int open(const char *pathname, intoflag, mode_t mode); 【功能】打开名为path 的文件或设备,成功打开后返回文件句柄。【参数】pathname : 文件路径或设备名oflag : 打开方式。可选值可以是表 1.1中的一个值或几个值的组合【返回值】成功打开后返回文件句柄,失败返回-1 【头文件】使用本函数需要包含sys/types.h、fcntl.h和sys/stat.h。表 1.1 打开方式对照表打开方式意义O_RDONLY只读方式打开O_WRONLY只写方式打开O_RDWR读写方式打开(等同于O_RDONLY | O_WRONLY)O_CREAT如果文件不存在则首先创建。此时需要mode参数O_EXCL独占方式打开O_NOCTTY禁止取得终端控制O_TRUNC清除文件原有内容O_APPEND追加方式打开O_DSYNCO_NONBLOCK采用非阻塞文件/O方式O_RSYNC当新创建一个文件时,需要指定mode 参数。mode 参数的可选值和意义如表 1.2所示。表 1.2 mode参数对照表mode 意义S_IRWXU文件拥有者具有读写执行权限S_IRUSR(S_IREAD)文件拥有者仅有读权限S_IWUSR(S_IWRITE)文件拥有者仅有写权限S_IXUSR(S_IEXEC)文件拥有者仅具有执行权限S_IRWXG组用户具有读写执行权限S_IRGRP组用户仅有读权限S_IRWGRP组用户仅有写权限S_IXGRP组用户仅有执行权限S_IRWXO其他用户有读写执行权限S_IROTH其他用户仅有读权限S_IWOTH其他用户仅有写权限S_IXOTH其他用户仅有执行权限【函数原型】int close(intfd); 【功能】关闭之前被打开的文件或设备【参数】fd : 文件或设备句柄,通常由 open函数返回【返回值】成功打开后返回 0,失败返回-1 【头文件】使用本函数需要包含unistd.h 【函数原型】ssize_t read(intfd, void *buffer, size_t count); 【功能】从已经打开的文件中读取数据【参数】fd : 文件或设备句柄,通常由 open函数返回buffer : 数据缓冲区count : 要读取的字节数【返回值】成功读取后返回读取的字节数,失败返回-1 【头文件】使用本函数需要包含unistd.h 【函数原型】ssize_t write(intfd, void *buffer, size_t count); 【功能】向已经打开的文件中写入数据【参数】fd : 文件或设备句柄,通常由 open函数返回buffer : 数据缓冲区count : 要写入的字节数【返回值】成功写入后返回写入的字节数,失败返回-1 【头文件】使用本函数需要包含unistd.h 【函数原型】intioctl(intfd, unsigned long intcmd, …); 【功能】控制 I/O 设备【参数】fd : 文件或设备句柄,通常由 open函数返回cmd : 驱动程序控制命令【返回值】成功返回 0,失败返回错误码【头文件】使用本函数需要包含unistd.h在本实验中,需要使用1个设备文件:“/dev/leds”对实验箱的4个LED 进行控制。LED原理图图7-1 led原理图在原理图中有哪些信誉好的足球投注网站引脚“LED1”,可得:图7-2 led引脚连接图2) LED 控制由上面原理图和引

您可能关注的文档

文档评论(0)

xiaofei2001128 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档