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

小米粥声控音箱总体计划

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

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

    树莓派基础实验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灯。 ? 运行程序测试时,屏幕打印情况 #!

    2.1K20

    全志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 通道 返回值: 无 模块使用范例

    14210

    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:修改变量的值 把指定变量直接修改为目标值

    17110

    Linux Deploy:使用Repository部署Linux系统

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

    6.2K20

    Linux终端的使用

    也就是说终端就是为主机提供了人机接口,每个人都通过终端使用主机的资源。 终端有字符终端和图形终端两种模式。...在linux的图形环境下,我们可以通过鼠标点击来完成所有的管理任务,这是图形界面终端,另外一种就是文本界面的终端,在这个界面的终端下我们可以使用linux命令来控制系统完成响应的工作,而这个文本终端也是服务器常用的模式...命令控制系统的工具,我们点击屏幕左上角的“活动”就可以找到这个它 打开之后我们会看到linux的命令行,在这里面我们可以输入linux命令来进行操作 第二种 打开文本终端,这个需要键盘上的组合键[Ctrl...] + [Alt] + [F1] - [F6] ,其中F1和F2是两个可供登录的图形终端,F3-F6为文本终端,现在我们使用[Ctrl] + [Alt] + [F3]打开文本终端,然后使用root用户登录...以上的快捷键都是在工作中可能会经常用到的,不论是在图形界面打开的终端还是字符界面的终端都可以使用,在这里面就不挨个演示了,各位可以在终端中使用任意字幕和空格模拟命令输入然后多多熟悉,尽快掌握。

    11.8K20

    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.9K20

    linux shell快速使用

    (1) who是查看当前谁登录了linux系统 |是在两个程序之间建立一个管道, who | wc -l who的输出成为了wc 的输入 当然也可以自己创建linux的命令,创建一个文件,赋值给其执行的权限...x ,当然也可以直接在脚本中使用set -x 来打开执行跟踪的功能,使用set +x 来关闭执行跟踪功能 ctrl +a 快速切换命令到行首 ctrl + e 快速切换命令到行尾 (2)查找与替换...sed 命令进行替换 's;被替换值;要替换的值;'使用s后紧跟的界定符分割; 如果末尾是以g结尾则会进行全局替代,当然在后面添加数字代表替代哪一个,使用p结尾代表是否打印 当然可以将替换的命令放入脚本中使用...; anonuid/anongid :要和root_squash 以及 all_squash一同使用,用于指定使用NFS的用户限定后的uid和gid,前提是本机的/etc/passwd中存在这个uid...启动完NFS后,就该使用NFS服务了。

    1.3K10

    Linux终端使用总结

    基础常识 ---- 使用 ls 命令显示文件或目录时的不同颜色:(一般情况下) 白色 —— 普通文件 蓝色 —— 目录 绿色 —— 可执行文件(相当于 Windows .EXE) 红色 ——...压缩文件 青色 —— 链接文件(相当于 Windows 快捷方式) 黄色 —— 设备文件 灰色 —— 其他文件 Linux 下的文件类型: 普通文件类型 (-) Linux 中最多的一种文件类型...引自 Linux 下的 7 种文件类型 - CYYZ 古月 ls -a 显示路径下全部文件(包括隐藏的) ls -l 查看路径下文件的详细信息 tip:在 Linux 下文件夹(目录...)所占用的磁盘空间都是 4096byte,目录大小不包括目录内的文件大小 目录必须有执行权限才能进入 Linux 下隐藏文件以。...gzip 和 bzip2 默认都不保留源文件,只有 bzip2 可以加 - k 参数保留源文件 # 进阶工具 tar —— 不使用 z/j 参数,该命令只能对文件或目录打包 参数: c —— 创建

    11.3K30

    Alpine Linux使用入门

    Docker使用Alpine Linux 使用命令docker run -it alpine /bin/sh可运行Alpine Linux,由于Alpine Linux没有内置bash,所以这里使用的sh...作为伪终端,在为Alpine Linux编写shell脚本的时候也需要注意,使用sh而不是bash Alpine Linux镜像非常小巧,不到6M的大小,所以特别适合容器打包。...Alpine Linux软件管理 Alpine Linux使用apk指令来管理软件,类似CentOS的yum或Debian的apt-get,首次使用建议用apk update更新下软件,以免无法正常使用...默认没有bash,需要使用sh Alpine Linux使用apk作为包管理器 首次使用建议更新软件apk update以免出现一些异常 Alpine Linux体积非常小巧,但功能不输其它Linux发行版...此文部分内容参考了: Alpine修改时区 Alpine Linux 配置使用技巧

    1.9K30

    Linux 了解内存使用

    注意:实际上,内核完全控制着内存的使用情况,linux会在需要内存的时候,或在系统运行逐步推进时,将buffers和cached状态的内存变为free状态的内存,以供系统使用。...2.从应用层的角度来看系统内存的使用状态 也就是linux上运行的应用程序可以使用的内存大小,即free命令第三行“(-/+ buffers/cached)”的输出,可以看到,此系统已经使用的内存才...Linux操作系统的内存运行原理,很大程度上是根据服务器的需求来设计的,例如系统的缓冲机制会把经常使用到的文件和数据缓存在cached中,linux总是在力求缓存更多的数据和信息,这样再次需要这些数据时可以直接从内存中取...3)、如何回收cached Linux内核会在内存将要耗尽的时候,触发内存回收的工作,以便释放出内存给急需内存的进程使用。...Linux SWAP使用情况 ---- 如果系统的物理内存用光了,则会用到swap。系统就会跑得很慢,但仍能运行;如果Swap空间用光了,那么系统就会发生错误。

    3.6K30
    领券