首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

树莓派基础实验22:红外遥控传感器实验

RGB LED灯   在本实验中,我们将使用PWM脉宽调制技术来控制RGB的亮度。详情可以查看前面的实验:树莓派基础实验2:RGB-LED实验。   ...我们使用lirc库读取遥控器按钮返回的红外信号,并将它们转换为按钮值,然后使用pylirc来简化从远程控制中读取值的过程。在本实验中,使用遥控器顶部的9个按钮来控制RGB LED模块的颜色。...ls /dev/li*   然后使用“irw”命令测试,按遥控器上的按钮,看屏幕上是否打印按钮名称,如下图所示: ?...检查lirc模块是否已加载及测试 python lirc模块,有关LIRC的更多信息,请参见http://www.lirc.org lirc模块的函数及功能介绍如下: Initialization...你可以使用遥控器共生产27种颜色,包括关闭所有led灯。 ? 运行程序测试时,屏幕打印情况 #!

2K20

全志R128 SDK HAL 模块开发指南——IR红外无线传输

红外电磁波信号一般使用一体化接收头接收,同时完成信号的解调和放大,其输出信号就是红外的基带脉冲信号。解调后的信号可直接送入信号处理单元,由处理单元对脉冲波形进行解码,典型红外接收电路如下图所示。...其中 IMS(Internal Modulation Select),为选择使用内部调制或不调制。软件需设置使用IMS。...hal_cir_tx_xmit(unsigned int *txbuf, unsigned int count); 参数: txbuf: 代表数据 buf count: 代表数据长度 返回值: 无 模块使用范例..._MASK 0xFF000000 #define LIRC_PULSE(val) (((val)&LIRC_VALUE_MASK) | LIRC_MODE2_PULSE) #define LIRC_SPACE...callback:应用层回调接口 返回值: 无 IR 去初始化接口 函数原型: void sunxi_cir_deinit(cir_port_t port); 参数: port :CIR 通道 返回值: 无 模块使用范例

9010
您找到你想要的搜索结果了吗?
是的
没有找到

小米粥声控音箱总体计划

AD 教程 AD 使用与硬件电路图画图和PCB图设计使用的。主要是看了B站的一个入门视频教程,然后再不断搜搜改改来实现的。...红外接收图,这里直接使用已经简单封装的传感器 IR的收发是主要调试的功能: 红外录入功能使用: 安装 Linux 下的红外控制库: sudo apt-get update sudo apt-get install...lirc 更新 /boot/config.txt 文件来开启红外收发接口: # Uncomment this to enable the lirc-rpi module dtoverlay=lirc-rpi...,gpio_out_pin=17,gpio_in_pin=18,gpio_in_pull=up 更新 /etc/lirc/lirc_options.conf 文件来控制当前是接收模式还是发射模式,修改完重启服务生效...: device=/dev/lirc0 测试能否正常接收到红外信号: mode2 -d /dev/lirc0 space 16777215 pulse 8999 space 4457 pulse 680

65520

LinuxLinux调试器-gdb使用

前言 在前面的博客【Linux】编译器-gcc/g++使用已经分享了关于编译器的使用,而编译器的使用离不开调试,这次就来分享一下Linux调试器-gdb使用。 2....使用 3.1 进入gdb 默认系统中会安装gdb,使用方法就是gdb后面直接加上调试的可执行程序名: gdb myprocess-debug 就会默认进入到调试模式 想要退出就直接输入quit或者...如果想要从程序第一行开始查就用命令: l 0 还可以使用l加程序名再加0的方式 l myprocess.c:0 不可以直接查文件,但是加上行号就可以查。...进入到函数体里面就退不出来 如果想要跳转到某一行,就用到命令: until 试一下跳转到12行: 总结一下gdb使用就是: set var:修改变量的值 把指定变量直接修改为目标值

9810

Linux Deploy:使用Repository部署Linux系统

文章更新   20170408 初次成文 问题提出:   在之前的文章中,小苏为大家介绍过使用常规方式和使用镜像方式部署Linux系统的方法,但是这两种方法各有利弊:   使用常规方式部署时,镜像大小可以灵活调节...使用镜像方式部署Linux系统时,虽然可以免去部署时下载大量数据的麻烦,但是使用别人部署好的镜像,初始实现的功能依别人部署好的镜像而定,不能个性化定制系统,也不能调整镜像大小。   ...那就是先在Linux Deploy中部署和安装所需要的环境和软件包,然后使用Linux Deploy的导出功能,将Rootfs打包为tar.gz文件,之后,我们只需要将此tar.gz文件导入Linux...Deploy,就可以完整还原打包时的Linux系统了。...因为在Repository中,作者使用各发行版的官方软件源作为软件源,这样一来,一是服务器节点远离中国,软件包下载速度一般都很慢,二是在我国ipv6还未普及,使用官方软件源在部署过程中有一定几率解析到ipv6

6.1K20

Linux的fork使用

Linux的fork使用 fork函数可以算是Linux里有点不好明白的函数了,调用一次,返回两次,虽然在平时的写法中,有基本固定的写法,但是有时候看起来还是有些让人头疼的。...因此,使用 fork()函数的代价是很大的。 ? 日常使用fork 简单来说, 一个进程调用 fork() 函数后,系统先给新的进程分配资源,例如存储数据和代码的空间。...实际上,更准确来说,Linux 的 fork() 使用是通过写时拷贝 (copy- on-write) 实现。写时拷贝是一种可以推迟甚至避免拷贝数据的技术。...这取决于内核所使用的调度算法。 因此,在实际的使用过程中,一般都需要对fork()的返回值进行判断,看我们操作的是父进程还是子进程。...Linux中的用fork()由一个父进程创建同时多个子进程 的格式如下: int main(){ pid_t p1,p2; int i; int N=100; for(

3.6K41

Linux find命令使用

最近在工作中学习了不少Linux方面的命令,比如vim的使用命令、find命令、rpm打包spec配置文件等等。 鸟哥私房才基础版给了我不少帮助,在这里感谢鸟哥。     ...遇到的其中一个问题是使用ubuntu12.04往公司的SVN上传一个目录,不过之前这个目录是从SVN下载下来的,更改了目录后需要删除原来的所有.svn目录。...上网找了一下Linux下删除目录下所有.svn的方法,方法如下: Linux下删除这些目录是很简单的,主要是使用了find工具,命令如下 find ....-type d -iname ".svn" -exec rm -rf {} \;      感觉Linux下的subersion客户端速度蛮快的,5.8G的目录花10多分钟就能下载到本地,但是使用Windows...可以在终端下使用man find来查询find命令的相关参数。

4K30

Linux系统使用基础

Linux基本使用 交互接口,前面简单介绍了shell的使用,通过shell用户就可以和系统进行交互,也可以称shell为命令解释器,我们通过shell来实现Linux系统操作功能。...我们可以通过echo $SHELL来看当前所使用的shell [09:16:55 root@centos7 ~]#echo $SHELL /bin/bash Linux命令执行过程和命令类型 命令到底是如何执行的呢...encoding是charset endcoding的简写,即字符集编码,简称编码,实现如何将字符转化为实际的二进制进行存储或相反,编码决定了空间的使用的大小。...root@centos7 ~]#echo '$PASH' $PASH 转义符\,如果输出\\需要两个转义符 [01:30:45 root@centos7 ~]#echo \\\\ \\ 或者使用单引号输出...,使用方法为: export [-fnp][变量名称]=[变量设置值] -f  代表[变量名称]中为函数名称。

1.9K00

Linux 之 crontab 使用

定时任务 任务调度的crond常驻命令 crond 是linux用来定期执行程序的命令。当安装完成操作系统之后,默认便会启动此任务调度命令。...而linux任务调度的工作主要分为以下两类: 1、系统执行的工作:系统周期性所要执行的工作,如备份系统数据、清理缓存 2、个人执行的工作:某个用户定期要做的工作,例如每隔10分钟检查邮件服务器是否有新信...Day 每月的第几天执行该任务 Month 每年的第几个月执行该任务 DayOfWeek 每周的第几天执行该任务 对于程序员来说最关注的莫过于使用示例...,通过示例可以一目了然的掌握如何使用定时任务 注意:在 crontab 命令中只有 “绝对路径”,不存在相对路径,故执行任何命令都需要写绝对路径 1、每小时的第5分钟执行 ls 命令 5 * * * *...对应的 mdd.toml 和 mdd.log 都是在 cd 到的目录下,此时就不需要全部写全目录了,如果不使用 cd 命令,最终的写法如下: 0 * * * * /data/GoProjects/bin

3.5K20

Linux 之 crontab 使用

定时任务 任务调度的crond常驻命令 crond 是linux用来定期执行程序的命令。当安装完成操作系统之后,默认便会启动此任务调度命令。...而linux任务调度的工作主要分为以下两类: 1、系统执行的工作:系统周期性所要执行的工作,如备份系统数据、清理缓存 2、个人执行的工作:某个用户定期要做的工作,例如每隔10分钟检查邮件服务器是否有新信...Day 每月的第几天执行该任务 Month 每年的第几个月执行该任务 DayOfWeek 每周的第几天执行该任务 对于程序员来说最关注的莫过于使用示例...,通过示例可以一目了然的掌握如何使用定时任务 注意:在 crontab 命令中只有 “绝对路径”,不存在相对路径,故执行任何命令都需要写绝对路径 1、每小时的第5分钟执行 ls 命令 5 * * * *...对应的 mdd.toml 和 mdd.log 都是在 cd 到的目录下,此时就不需要全部写全目录了,如果不使用 cd 命令,最终的写法如下: 0 * * * * /data/GoProjects/bin

2.8K20
领券