![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux
文章平均质量分 83
D.•
这个作者很懒,什么都没留下…
展开
-
基于ARM树莓派实现智能家居:语音识别控制,Socket网络控制,火灾报警检测,实时监控
● 语音模块识别语音来控制各个灯的开关,基于串口通信来配置语音命令的内容。● 搭建TCP服务器,用socket网络通信的方式控制各个灯的开关,手机客户端发送指令到电脑服务器端来实现控制功能。● 火灾报警,火焰检测模块结合蜂鸣器开发。接收火焰状态,检测有火源靠近时,蜂鸣器输出低电平发出警报声响,并在终端显示火灾危险提示,检测没有火源时,蜂鸣器输出高电平,停止报警声。原创 2023-04-29 08:12:09 · 3298 阅读 · 42 评论 -
OpenSSL编译说明:Linux结合libcurl库编程实现人脸识别和车牌识别
① wget https://www.openssl.org/source/openssl-1.1.1a.tar.gz //下载② tar xvf openssl-1.1.1a.tar.gz //解压③ cd openssl-1.1.1a //进入解压皓的openssl-1.1.1a目录下④ ./config //配置在系统的默认位置,省的我们调库的时候再去找库的位置⑤ make //编译⑥ sudo make install //最后一步安装完成原创 2023-04-05 21:31:11 · 699 阅读 · 11 评论 -
libcurl库的安装及使用说明
①下载网址,② libcurl库安装步骤,③ libcurl等第三方库的通用编译方法,③ libcurl等第三方库的通用编译方法,①代码说明②编译说明③执行说明。libcurl的使用说明。① curl函数简介● libcurl官网:http://curl.haxx.se/● libcurl库下载:https://github.com/curl/curl/releases/tag/curl-7_71_1原创 2023-04-04 20:57:08 · 3372 阅读 · 5 评论 -
树莓派Linux源码配置,树莓派Linux内核编译,树莓派Linux内核更换
② 编译时报错及解决方案(亲测)● dmesg报错及解决方案(亲测)① 打包zImage文件。打包zImage成树莓派可用的xxx.img② 树莓派断电,拔出树莓派的SD卡,插到读卡器,读卡器插入电脑,映射到虚拟机③ 数据拷贝,挂载U盘④安装modules。含有设备驱动文件:比如HDMI,WIFI,USB,IO等⑤安装更新 kernel.img 文件,镜像名字是kernel7.img⑥ 把kernel_new.img文件,拷贝到data1分区,起名kernel7.img,覆盖原来的kernel7.img原创 2023-03-27 14:53:47 · 1028 阅读 · 13 评论 -
交叉编译说明:工具链安装和环境变量配置
工具链下载网址:https://github.com/raspberrypi/ (3) 解压文件:unzip tools-master.zip (4) 进入解压好的文件目录中,依次进入如下目录直到bin目录(64位计算机就如下选择)(5)ls进入bin目录里,找到arm-linux-gnueabihf-gcc(7)指令arm-linux-gnueabihf-gcc -v 检查交叉工具链(3)export PATH= :配置环境变量= 红线部分 + 当前路径原创 2023-03-25 11:28:40 · 3987 阅读 · 6 评论 -
通过Linux串口实现树莓派与电脑通信
我在基于全志H6实现Linux串口通信这篇文章中也有详解介绍:点击查看详细内容。② 实现串口多机通信的协议设置:串口号,数据格式和波特率。类似于人和人在交流沟通时,都必须使用同一种语言和语速,这样通信双方才能明白对方的内容。头文件:#include 。① cd /boot/ :进入系统根目录中的boot目录;② sudo vim cmdline.tx :用超级用户权限打开cmdline.tx文件,内容如图:原创 2023-03-22 20:27:13 · 1265 阅读 · 5 评论 -
基于树莓派实现超声波测距
怎么算距离:距离=速度(340m/s)*时间/2 (注意速度单位和时间单位的换)● 1秒(s) = 1000毫秒(ms) = 1000000微秒(us)① 代码编写一定要结合时序图分析过程;② 计算波在空气中的时间,要统一把时间单位换算成微妙,不能统一换算成秒来计算(亲测出错)。超声波测距模块是用来测量距离的一种产品,通过发送和接收超声波,利用时间差和声音传播速度, 计算出模块到前方障碍物的距离。原创 2023-03-22 10:14:03 · 938 阅读 · 4 评论 -
树莓派编程控制继电器及继电器组
通俗点讲,可以把继电器理解成是一些功能设备的控制开关。● LOW:给到低电平时,电路接通;● HIGH:给到高电平时,电路断开;● 继电器vcc——树莓3.3v或5v;● 继电器Gnd——树莓0v或Gnd;● 继电器In——树莓GPIO.7(自己设置);控制继电器组其实和控制单个继电器操作一样,只是继电器组要多设置一些控制的io口而已!原创 2023-03-21 16:57:55 · 2155 阅读 · 4 评论 -
Linux分文件编程:静态库与动态库的生成和使用
一般写代码demo时,习惯用一个代码文件进行代码编辑和编译。如果代码工程量大,使用一个代码文件编写代码,就会显得代码冗长,繁杂,也不便后期维护。于是,便出现了分文件编程的方式。通俗点说明:你可以使用我的代码,但是你不能看我的代码;编译时,会链接到我们生成的库文件,程序可以正常编译运行,但如果常规使用vi打开库文件,就是一页乱码。静态库文件的命名方式:“libxxx.a”,库名前加“lib”,后缀用“.a”,“xxx”为静态库名;动态库的命名方式:“libxxx.so”, 库名前加“lib”,后缀用“.so”原创 2023-03-18 15:06:23 · 1863 阅读 · 12 评论 -
基于Linux串口实现语音控制刷抖音
进入语音模块官网 http://www.smartpi.cn/#/,配置词条和识别后的串口输出指令。① 输入指令:dmesg 查看连接USB的设备信息(此处查看手机信息)。② 输入指令:sudo apt-get install adb 安装adb工具。③ 命令查看设备:adb devices可以看到adb检查到的串行设备数字。④ 打开手机开发者选项,允许usb进行调试。⑤ adb shell进入手机,出现以下页面,表示进入手机成功。⑥ 退出命令:exit原创 2023-03-02 21:35:54 · 2633 阅读 · 6 评论 -
嵌入式数据库:SQLite3的安装和使用说明
SQLite函数列表:https://www.sqlite.org/c3ref/funclist.html ●创建一个数据库 ●创建一张表格 ●插入一条记录 ●查看数据库的记录 ●删除一条记录 ●更改一条记录●删除一张表 ●增加一列SQLite3安装网址:https://www.sqlite.org/download.html原创 2023-03-01 20:29:33 · 5179 阅读 · 8 评论 -
全志H616: Linux串口开发
Orange Pi Zero 2可用的串口协议为ttyS5,用作信息交互串口,其中ttyS0为调试串口,也可自行配置。● 是设备间接线通信的一种方式。● 数据一位一位地顺序传送。● 双向通信,全双工。● 传送速度相对较慢。● RXD:数据输入引脚,数据接收;● TXD:数据发送引脚,数据发送;桌面新建.c文件uartTool.c——> 对应wiringPI库自己封装函数 ——> 生成头文件uartTool.h——> 结合uartTool.c和uartTool.h实现代码uartTest.c原创 2023-02-22 12:52:49 · 690 阅读 · 4 评论 -
全志H616:OLED屏应用 — IIC协议
Linux一切皆文件,每个硬件设备“对应”一个文件,由驱动程序提供映射;安装 i2c-tools 命令:sudo apt-get install i2c-tools; 输入命令:sudo i2cdetect -y 3。查看oled官方源码路径:——> wiringOP ——> examples ——> oled_demo.c。● 启动 linux 系统后, 在命令行中输入:ls /dev查看H616是否存在 i2c-3 的设备节点; ● 从命令运行结果能观察到系统支持I2C-3和I2C-5的驱动原创 2023-02-19 21:31:10 · 777 阅读 · 1 评论 -
全志H616:Linux定时器控制SG90舵机的转动角度
● 实现定时器,通过itimerval结构体以及函数setitimer产生的信号,系统随之使用signal信号处理函数来处理产生的定时信号。从而实现定时器。● 这种方法需要注意的是:一个进程只能创建一个定时器。● 向黄色信号线“灌入”PWM信号。黄色为PWM信号控制。红色为VCC,灰色为GND● 不同的PWM波形对应不同的旋转角度,以20ms为周期,50hz为频率的PWM波● 定时器需要定时20ms,关心的单位0.5ms, 20ms = 0.5ms * 40原创 2023-02-19 09:56:36 · 412 阅读 · 2 评论 -
基于全志H616的超声波测距实验
①怎么让它发波:Trig,给Trig端口至少10us的高电平 ;②怎么知道开始发了:Echo信号,由低电平跳转到高电平,表示开始发送波;③怎么知道接收了返回波:Echo,由高电平跳转回低电平,表示波回来了;④怎么算时间:Echo引脚维持高电平的时间! 波发出去的那一下,开始启动定时器,波回来的那一下,我们开始停止定时器,计算出中间经过多少时间。⑤怎么算距离:距离=速度(340m/s)*时间/2 (注意速度单位和时间单位的换)★实现过程可以结合时序图分析波的运动过程原创 2023-02-17 15:07:32 · 231 阅读 · 0 评论 -
Orangepi Zero2 全志H616:蜂鸣器,链接库,shell脚本
①原因:代码中调用官方库函数后,直接gcc编译会出现如下报错,因此在编译的时候需要链接库,②查找库指令:Makefile。在要查找库的路径后加上命令Makefile。③在gcc编译后面加上链接库,编译通过。④shell脚本传参数说明:美元符号就是参数。参数1:$0,参数2:$1,依此类推.....原创 2023-02-15 16:24:50 · 236 阅读 · 5 评论 -
Orangepi Zero2 全志H616(三):引脚图及说明
▶ 1 到 26 号引脚与开发板上的 26 Pin 引脚相对应。▶ 27 号引脚对应开发板上 13pin 的 10 号引脚;▶ 29 号引脚对应开发板上 13pin 的 11 号引脚;▶ 31 号引脚对应开发板上 13pin 的 12 号引脚;▶ 33 号引脚对应开发板上 13pin 的 13 号引脚;▶ 28、30、32、34 号引脚为空,暂先忽略 。原创 2023-02-14 12:37:50 · 1012 阅读 · 1 评论 -
Orangepi Zero2 全志H616(二):wiringPi外设SDK安装
① git clone https://github.com/orangepi-xunlong/wiringOP //下载源码;② cd wiringOP //进入文件夹;③ sudo ./build clean //清除编译信息;④ sudo ./build //编译验证指令: gpio readall原创 2023-02-14 10:39:28 · 325 阅读 · 0 评论