- 博客(31)
- 收藏
- 关注
原创 VScode SSH远程连接Ubuntu(通过SSH密钥对的方式)
我们都知道在VScode上通过SSH插件的方式可以远程连接到虚拟机的Ubuntu系统,这样开发者就可以在Windows下的Vscode编译器下直接远程连接Ubuntu,这种方式是 “用 Windows 的便捷性操作 Linux 的专业性”—— 既保留了Windows系统的易用性和VS Code的强大功能,又能充分利用 Ubuntu(Linux)在开发、部署场景中的优势,是跨系统开发的高效解决方案。打开Windows下的VScode,使用快捷键Ctrl+Shift+P打开上面的搜索框,输入SSH,选择。
2025-07-09 17:37:19
967
原创 VirsualBox虚拟机超级用户组问题
超级用户下输入visudo命令即可编辑sudoer文件(输入nano /etc/sudoers效果是一样的)添加此行:kevin ALL=(ALL:ALL) ALL,表示为kevin用户添加sudo权限。4. ctrl+s保存,ctrl+x退出即可。终端输入su root切换为超级用户。将当前用户添加到超级用户组即可。
2025-06-26 13:54:57
130
原创 VirtualBox Ubuntu虚拟机与Windows主机之间复制粘贴问题
virtualbox与windows主机之间无法相互复制粘贴,比如我想从博客中拷贝一条命令到虚拟机中执行,这在virtualbox的默认配置下是不允许的。那有什么解决办法吗?2. 同样是设置页->存储->点击控制器:SATA,勾选上“使用主机输入输出(I/O)缓存”ubuntu的快捷键:ctrl+shift+c复制,ctrl+shift+v粘贴。虚拟机设置页->常规->高级,将共享粘贴板和拖放两项均修改为双向。windows的快捷键:ctrl+c复制,ctrl+v粘贴。
2025-06-26 13:53:42
300
原创 ESP32移植Openharmony外设篇(11) mfrc522射频读卡器
基于MFRC522 IC的RC522 RFID模块是最便宜的RFID选项之一,它通常带有一个具有1KB内存的RFID卡标签和密钥卡标签。最棒的是,它可以编写标签,因此您可以在其中存储某种秘密消息。RC522 RFID阅读器模块旨在创建13.56MHz的电磁场,用于与RFID标签(ISO 14443A标准标签)进行通信。阅读器可以通过4引脚串行外围接口(SPI)与微控制器进行通信,最大数据速率为10Mbps。它还支持通过I2C和UART协议进行通信。该模块带有一个中断引脚。
2025-03-31 15:57:44
915
原创 ESP32移植Openharmony外设篇(10)inmp441麦克风
INMP441是一款高性能、低功耗的微型电容式MEMS麦克风,采用数字输出,广泛应用于智能手机、平板电脑、智能家居、可穿戴设备等场景。高信噪比(SNR):61 dBA,适合远场和近场语音采集。数字接口:支持24位I²S输出,可直接连接微控制器或DSP,无需额外编解码器。低功耗:工作电流仅1.4 mA,适用于电池供电设备。宽频率响应:60 Hz至15 kHz,覆盖人耳可听范围,音质自然清晰。小型封装:4.72 mm × 3.76 mm × 1 mm,适合高密度集成。引脚名称符号功能描述电源输入。
2025-03-13 17:35:53
2107
原创 ESP32移植Openharmony外设篇(9)NB-IOT
NB-IoT(Narrowband Internet of Things)是一种低功耗广域物联网(LPWAN)技术,专为低功耗、低数据速率和大规模连接的物联网应用而设计。它采用窄带宽信道和低复杂度的调制方案,以实现长距离传输、室内外覆盖范围广和强鲁棒性等特点。
2025-02-27 16:00:16
1265
原创 ESP32移植Openharmony外设篇(8)MQ-3酒精检测传感器
MQ3是MQ传感器系列中最常用的传感器之一。它是金属氧化物半导体(MOS)类型的传感器。金属氧化物传感器也被称为化学电阻在暴露于醇,因为感测基于所述感测材料的电阻的变化。因此,通过将其放置在简单的分压器网络中,可以检测到酒精浓度。MQ3酒精传感器可在5V直流电压下工作,功耗约800mW。它可以检测25至500 ppm范围内的酒精浓度。1 ppm等于多少?在测量气体时,术语“浓度”用来描述空气中气体的体积含量。两种最常见的度量单位是百万分之一和浓度百分比。
2025-02-25 12:01:10
1034
原创 ESP32移植Openharmony外设篇(7)土壤湿度传感器YL-69
YL-69土壤湿度传感器是一种用于测量土壤湿度的传感器,其工作原理为电阻式。传感器的主体为一个具有两个接头的金属探头,可以将其插入到土壤中,接头内部包含有两个金属探针,通过探针与土壤接触来测量土壤的湿度。当土壤干燥时,土壤的电阻变大,传感器的输出电压也随之增加,反之,当土壤湿度增加时,土壤的电阻变小,传感器的输出电压也随之降低。通过测量传感器输出电压的大小,就能获得土壤湿度的信息。YL-69土壤湿度传感器的优点是结构简单,成本低廉,易于使用和安装,可以广泛应用于农业、园艺、环境监测等领域。
2024-12-31 11:38:34
2783
原创 ESP32移植Openharmony物联网实战 - LwIP+巴法云TCP服务器
TCP 是一种面向连接的、可靠的、基于字节流的传输层通信协议,传输层协议常用的有TCP和UDP,像常见的http协议或mqtt协议,都是在TCP上传输的,TCP用途广泛,一般可以联网的设备,都支持TCP协议传输。订阅、发布简介通俗的来讲,订阅、发布是两种不同的信号订阅:订阅某一个主题,订阅之后,就可以收到发往该主题的消息。发布:向某个主题发送消息。例如:当某个设备订阅了主题“X”,这时向主题“X”发送的任何消息,设备都可以收到,因为设备已经订阅上了该主题。直接上干货!
2024-12-02 15:11:58
1620
1
原创 LwIP协议栈 基础知识介绍
物联网(Internet of Things,简称IoT)是一种基于互联网的新型网络体系结构,它是一种将传感器、智能设备、云计算、大数据、人工智能等信息技术相结合的新型技术模式。物联网可以将物理世界中的任何物体与互联网连接起来。实现实时监测、智能控制、远程操作等功能,从而实现物与物、人与物之间的互联互通。互联网的基础就是TCP/IP ,它是一个非常复杂的协议簇互联网对人类社会产生的巨大变革,大家是有目共睹的,它几乎改变了人类生活的方方面面。
2024-12-01 16:54:51
876
原创 ESP32移植Openharmony外设篇(6)光敏电阻ADC读取
光敏电阻(photoresistor orlight-dependent resistor,后者缩写为LDR)是一种基于内光电效应的半导体元件,它的阻值依赖于入射光强的变化。入射光强增加,光敏电阻的阻值减小,入射光减弱,光敏电阻阻值增大。光敏电阻没有极性,使用时在其两端施加一个任意方向的外加电压,通过测量回路中的电流大小就可以反映入射光的强弱。
2024-11-20 16:39:38
1904
原创 ESP32移植Openharmony外设篇(5)aht20温湿度传感器
本文详细讲解了aht20通过I2C协议采集温湿度数据的工作原理并成功使用传感器采集到环境数据
2024-11-17 10:25:05
1225
原创 ESP32移植Openharmony外设篇(4)LED灯
LED是发光二极管( Light EmitTIng Diode, LED)的简称,也被称作发光二极管,这种半导体组件发展以来一般是作为指示灯、显示板,但目前随着技术增加,已经能作为光源使用,它不但能够高效率地直接将电能转化为光能,而且拥有最长达数万小时~10 万小时的使用寿命,同时具备不若传统灯泡易碎,并能省电,同时拥有环保无汞、体积小、可应用在低温环境、光源具方向性、造成光害少与色域丰富等优点。
2024-10-21 15:34:57
630
原创 ESP32 I2C详解
资源分配- 包括如何使用正确的配置来分配 I2C 总线,以及如何在完成工作后回收资源。I2C主机控制器- 包括 I2C 主机控制器的行为,介绍了数据发送、数据接收和数据的双向传输。I2C从机控制器- 包括 I2C 从机控制器的行为,涉及数据发送和数据接收。电源管理- 描述了不同时钟源对功耗的影响。IRAM安全- 描述了如何在 cache 被禁用时正常运行 I2C 中断。线程安全- 列出了驱动程序中线程安全的 API。Kconfig选项。
2024-10-16 19:06:14
1986
原创 ESP32移植Openharmony外设篇(2)HCSR501人体感应传感器
HC-SR501是基于红外线技术的自动控制模块,采用德国原装进口 LHI778 探头设计,灵敏度高,可靠性强,超低电压工作模式,广泛应用于各类自动感应电器设备,尤其是干电池供电的自动控制产品。
2024-10-15 16:55:16
1661
原创 ESP32移植Openharmony外设篇(1)MQ-2烟雾传感器
MQ-2烟雾传感器所使用的气敏材料是在清洁空气中电导率较低的二氧化锡(SnO2)。当烟雾传感器所处环境中存在可燃气体时,烟雾传感器的电导率随空气中可燃气体浓度的增加而增大。使用简单的电路即可将电导率的变化转换为与该烟雾传感器气体浓度相对应的输出信号。在使用时,会使用单片机的ADC采集对其进行信号采集该传感器可以输出模拟信号和数字信号,本文使用的是数字信号。MQ-2气体烟雾传感器对液化气、丙烷、氢气的灵敏度高,对天然气和其它可燃蒸汽的检测也很理想。
2024-10-15 14:51:36
1486
原创 ESP32移植Openharmony设备开发---(8)Queue消息队列
任务能够从队列里面读取消息,当队列中的消息为空时,挂起读取任务;可以通过调整读队列和写队列的超时时间来调整读写接口的阻塞模式,如果将读队列和写队列的超时时间设置为0,就不会挂起任务,接口会直接返回,这就是非阻塞模式。反之,如果将读队列和写队列的超时时间设置为大于0的时间,就会以阻塞模式运行。读取消息队列,用于读取指定队列中的数据,并将获取到的数据存储到bufferAddr指定的地址中。删除队列时会释放该控制块。获取消息,用于读取指定队列中的数据地址,并将其存储到由bufferAddr指定的地址中。
2024-10-14 17:14:07
981
原创 ESP32移植Openharmony设备开发---(7)Semp信号量
信号量初始化,为配置的N个信号量申请内存(N值可以由用户自行配置,通过LOSCFG_BASE_IPC_SEM_LIMIT宏实现,按产品实际需要设定),并把所有信号量初始化成未使用,加入到未使用链表中供系统使用。创建二值信号量,从未使用的信号量链表中获取一个二值信号量,并设定初值count,并将新建的信号量ID赋值给semHandle所指向的空间。信号量创建,从未使用的信号量链表中获取一个信号量,并设定初值count,并将新建的信号量ID赋值给semHandle所指向的空间。信号量可用于同步或者互斥。
2024-10-14 15:44:28
1086
原创 ESP32移植Openharmony设备开发---(6)Mutex互斥锁
当有任务持有时,这个任务获得该互斥锁的所有权。当一个任务持有互斥锁时,其他任务将不能再持有该互斥锁。多任务环境下往往存在多个任务竞争同一共享资源的应用场景,互斥锁可被用于对共享资源的保护从而实现独占式访问。用互斥锁处理非共享资源的同步访问时,如果有任务访问该资源,则互斥锁为加锁状态。此时其他任务如果想访问这个公共资源则会被阻塞,直到互斥锁被持有该锁的任务释放后,其他任务才能重新访问该公共资源,此时互斥锁再次上锁,如此确保同一时刻只有一个任务正在访问这个公共资源,保证了公共资源操作的完整性。
2024-10-14 11:18:19
1448
原创 ESP32移植Openharmony设备开发---(4)Timer定时器
ESP32移植Openharmony设备开发---(4)Timer定时器
2024-10-11 09:30:34
687
原创 ESP32移植Openharmony设备开发---(3)任务调度
因此在任务切换时会将切出任务的任务上下文信息,保存在自身的任务栈中,以便任务恢复后,从栈空间中恢复挂起时的上下文信息,从而继续执行挂起时被打断的代码。运行中的任务运行结束,任务状态由运行态变为退出态。正在运行的任务发生阻塞(挂起、延时、读信号量等)时,将该任务插入到对应的阻塞队列中,任务状态由运行态变成阻塞态,然后发生任务切换,运行就绪队列中最高优先级任务。有更高优先级任务创建或者恢复后,会发生任务调度,此刻就绪队列中最高优先级任务变为运行态,那么原先运行的任务由运行态变为就绪态,依然在就绪队列中。
2024-10-10 15:47:42
1841
原创 ESP32移植Openharmony设备开发---(2)Hello world
这一行定义了一个变量 module_name,其值为调用 get_path_info 函数的结果。rebase_path(".") 返回当前目录相对于项目根目录的路径,而 "name" 参数告诉 get_path_info 函数返回该路径的名字部分。这里定义了一个 kernel_module 类型的模块。括号内的 module_name 是前一步定义的变量,这里作为模块的名字传递给 kernel_module 函数。配置软件,如下图,包括升级的镜像,配置,确保COM口是有的点击START。
2024-10-09 16:30:15
1641
原创 ESP32移植Openharmony环境搭建常见问题及解决方案
有个依赖需要build_configs里的一个配置项:inner_kits 但是系统中/home/huang/OpenHarmony-v4.0-Release/OpenHarmony/out/esp32/esp32/build_configs/BUILD.gn文件不存在,这往往是代码拉取不全或者补丁没打好导致。问题产生的原因:配置的子系统名与ohos.build中的子系统名不一致,修改为报错提示中“配置的子系统名”即可解决此BUG。如 sudo pip3 install pycryptodome。
2024-10-09 16:28:49
2218
原创 ArtUi入门: 弹性布局 Flex
线性布局比弹性布局优化更好,单行/单列的场景下,还是优先使用线性布局(线性布局底层是基于Flex实现的)当涉及到布局换行的情况下就可以考虑使用弹性布局。每个子盒子的宽度为80,但父盒子的大小被设定在了300,但是为什么还是能正常显示在同一行?Flex布局又被叫做伸缩布局,当 子盒子的总和溢出父盒子,默认会进行压缩显示。Flex默认主轴水平往右,交叉轴垂直于主轴往下。弹性布局通过属性进行布局。
2024-08-30 11:17:28
411
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人