单片机技术网|技术阅读
登录|注册

您现在的位置是:单片机技术网 > 技术阅读

技术阅读

  • Arduino 开发 野火ESP8266模块的串口通信

    2024-05-20

    一、硬件连接Arduino ESP8266 串口通信是一个常见的任务,允许通过串行接口与其他设备或计算机进行通信。连接硬件:将野火ESP8266模块通过USB连接到电脑。注意电源为3.3V。选择开发板和端口:在Arduino IDE中,选择ESP8266开发板和串口端口。二、代码编写常用函数:编写代码步骤如下:1.初始化串行通信,设置波特率。2.在setup()函数中设置串行通信。3.在loop()函数中发送和/或接收数据。4.上传代码,点击Arduino IDE的上传按钮,将代码上传到ESP8266。5.测试,打开串行监视器,查看发送和接收的数据。测试代码:以下是一个简单的示例,演示了如何在...

  • 野火ESP8266模块开发-基于Arduino IDE

    2024-05-19

    一、野火ESP8266模块介绍  ESP8266 拥有高性能无线 SOC,给移动平台设计师带来福音,它以最低成本提供最大实用性,为 WiFi 功能嵌入其他系统提供无限可能。ESP8266 是一个完整且自成体系的 WiFi 网络解决方案,能够独立运行,也可以作为 slave 搭载于其他 Host 运行。ESP8266 在搭载应用并作为设备中唯一的应用处理器时,能够直接从外接闪存中启动。内置的高速缓冲存储器有利于提高系统性能,并减少内存需求。ESP8266 高度片内集成,包括天线开关 balun、电源管理转换器,因此仅需极少的外部电路,且包括前端模块在内的整个解决方案在设计时将所占...

  • Arduino IDE配置ESP8266开发环境

    2024-05-19

    配置步骤在Arduino IDE中配置ESP8266开发环境的详细步骤如下:1.打开Arduino IDE,依次点击“文件”->“首选项”,在“附加开发板管理器网址”一栏添加ESP8266开发板的网址。常用的网址是:http://arduino.esp8266.com/stable/package_esp8266com_index.json。http://arduino.esp8266.com/stable/package_esp8266com_index.json添加完网址后,重启Arduino IDE。2.重启后,在IDE的顶部菜单中选择“工具”->“开发板”->“开发板管理器”。在开发板管理器中,等待下载完成,然后搜索“esp8266”,找到对应的开发板并安装最新版本。因为某些原因,大概...

  • OpenHarmony 鸿蒙操作系统初体验

    2024-05-19

    一、测试环境硬件:野火开发板 RK3568 ,LubanCat2-N系统:OpenHarmony_3.2.3二、驱动安装下载驱动 Rockchip_DriverAssitant_v5.1.1,并安装。安装完成三、镜像烧录准备工作 注:仅支持烧录镜像到EMMC,不支持TF1.USB Type-A to Type-C 数据线,用于在PC和LubanCan2之间传输数据;2.电脑环境:支持Win7,Win10,Win11环境下使用;3.RKDevTool软件。下载软件版本 RKDevTool_Release_v2.96。先将LubanCat2通过USB线缆连接至电脑,后按住MASKROM不动,等待烧录软件识别, 当提示发现一个 Maskrom 设备时,即可松开按键。右键空白位置,选择导入配置修...

  • Arduino IDE的下载和安装

    2024-05-19

    一、Arduino的介绍  Arduino是一款开源电子原型平台,主要包含两部分:硬件(各种型号的Arduino板)和软件(Arduino IDE)。这个平台由意大利的Massimo Banzi、David Cuartielles等人共同开发设计,并于2005年面世。  Arduino的硬件部分是可以用来做电路连接的Arduino电路板,而软件部分则是用于编写和上传程序到Arduino板上的开发环境。其编程语言基于Wiring,并且具有使用类似Java、C语言的Processing开发环境,但实用性要远高于C语言,主要是由于它将一些常用语句组合函数化,使得使用者可以快速入门学习使用。  Arduino平台的主要特点在于...

  • buildroot构建生成根文件系统

    2024-05-19

    一、buildroot构建生成根文件系统的一般步骤  Buildroot是一个用于构建嵌入式Linux系统的框架,它可以自动化地配置、编译内核、u-boot以及根文件系统。以下是一个基本的步骤指南,用于使用buildroot生成根文件系统:1.安装Buildroot:首先,需要在主机系统上安装buildroot。这通常涉及到从buildroot的官方网站或源代码仓库下载源代码,然后解压并配置Makefile以进行安装。2.配置Buildroot:在buildroot的源代码目录中,运行make menuconfig命令来配置构建选项。这个命令会启动一个文本界面的配置工具,选择目标架构、内核版本、软件包等。根据嵌入...

  • buildroot制作的嵌入式Linux根文件系统启动后不是root用户,提示没有权限

    2024-05-19

    一、问题描述  如果在使用buildroot制作的嵌入式Linux根文件系统启动后,发现不是以root用户身份登录,这可能是由于文件系统权限设置不当或用户配置问题导致的。二、解决办法以下是一些可能的解决办法:1.检查busybox权限正如您提到的日志中的信息,busybox的权限可能存在问题。busybox是一个集成了许多常用Linux命令和工具的单个可执行文件,它在嵌入式系统中非常常见。使用ls -l命令检查busybox的权限。如果看到类似-rwsr-xr-x的权限,其中的s表示设置了SUID(Set User ID)位,这可能导致非root用户以root权限执行该命令。如果busybox的权限设...

  • 嵌入式Linux串口和 poll() 函数的使用

    2024-05-19

    一、poll() 函数的介绍  poll() 函数用于监控多个文件描述符的变化的函数。它可以用来检查一个或多个文件描述符的状态是否改变,比如是否可读、可写或有错误发生。它常用于处理 I/O 多路复用,这在需要同时处理多个网络连接或文件操作时非常有用。头文件#include <poll.h>函数原型int poll(struct pollfd *fds, nfds_t nfds, int timeout);fds:一个指向 pollfd 结构数组的指针,每个 pollfd 结构代表一个要监控的文件描述符。nfds:fds 数组中的元素数量。timeout:等待的超时时间(毫秒)。如果设置为 -1,则 poll() 会一直等待,直到某个文件描...

  • C# winform 重启电脑

    2024-05-19

    一、重启电脑指令  电脑重启可以在cmd窗口中使用指令进行电脑重启。在C# WinForms应用程序中,则可以使用Process类来运行一个具有足够权限的命令,如shutdown命令。//cmd 指令立即重启shutdown -r -t 0二、测试代码以下是一个简单的示例,展示如何使用C# WinForms来请求重启计算机。using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Diagnostics;using System.Drawing;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;namespace reStar...

  • NUC980开发板CAN开发笔记

    2024-05-19

    一、内核开启CANCAN 设置NUC980 系列带有2个CAN(Controller Area Network), 可以分别独立设置。 请按以下的说明来使能CAN功能. 每个CAN可以单独的开关. CAN0有多组管脚可以选择, 需要一并设置。使用者也可以设置CAN的唤醒功能。步骤如下:进入 NUC980-linux-4.4.y-master打开终端,输入make menuconfig选择 Networking support选择 CAN bus subsystem support选择 CAN Device Drivers选择 NUC980 CAN0~CAN3 devices根据电路选择对应的引脚保存,退出。重新编译镜像,下载到开发板即可。注意:内核配置中,查看使用的CAN引脚是否和其它功能比如...

  • 周立功USBCAN-E-mini分析仪的安装测试笔记

    2024-05-19

    一、介绍  USBCAN-E-mini 智能 CAN 接口卡是系列 USBCAN 便携版本,与 USBCAN—E-U 单路智能 CAN 接口卡完全兼容。USBCAN-E-mini 智能 CAN 接口卡与 USB1.1 总线兼容的,集成 1 路 CAN 接口的智能型 CAN-bus 总线通讯接口卡。采用 USBCAN-E-mini 智能 CAN 接口卡,PC 可以通过 USB 总线连接至 CAN-bus 网络,构成现场总线实验室、工业控制、智能小区、汽车电子网络等 CAN-bus 网络领域中数据处理、数据采集的 CAN-bus 网络控制节点。  USBCAN-E-mini 智能 CAN 接口卡是 CAN-bus 产品开发、CAN-bus 数据分析的强大工具;同时,USBCAN-E-mini 接口...

  • CAN总线及通讯的工作原理

    2024-05-19

    一、CAN总线  CAN是控制器局域网络(Controller Area Network)的简称, 它是由研发和生产汽车电子产品著称的德国BOSCH公司开发的, 并最终成为国际标准(ISO11519),是国际上应用最广泛的现场总线之一。二、工作原理CAN通讯的工作原理可以概括为以下几点:报文传输:CAN总线以报文的方式发送数据。每组报文的前十一位是标识符,用于标识消息的类型和优先级,不包括详细发送数据。CAN总线通过标识符的逐位仲裁解决总线访问碰撞问题,确保了报文和时间均不损失。帧结构:CAN总线中的数据传输是通过帧(Frame)的方式进行的。帧可以分为数据帧、远程...

  • 嵌入式Linux开发板测试esp8266模块

    2024-05-19

    一、介绍  ESP8266是一款流行的Wi-Fi微控制器,通常用于物联网项目中。在嵌入式Linux开发板上使用C语言开发ESP8266,意味着我们将通过串口或其他通信方式,从Linux系统上发送AT指令来控制ESP8266。AT指令集是一种用于控制调制解调器和其他设备的标准命令集,ESP8266也支持AT指令集。二、测试环境硬件:嵌入式Linux开发板ESP8266开发板三、测试代码  以下是一个简单的C语言测试代码示例,用于在嵌入式Linux开发板上通过串口发送AT指令来控制ESP8266,并测试其Wi-Fi连接功能。#include <stdio.h> #include <stdlib.h> #include <string.h> #inc...

  • Linux开发板移植rz、sz指令实现串口传输文件

    2024-05-19

    一、开发环境实现开发板和电脑通过串口来收发互传文件。开发板:NUC980开发板环境:Ubuntu 22.04.3 LTS 64-bitlrzsz的源码包:下载地址 https://ohse.de/uwe/software/lrzsz.html二、移植步骤在开发板上移植rz指令,可以按照以下步骤进行:下载rz/sz源码:在官网下载lrzsz的源码包,例如 lrzsz-0.12.20.tar.gz,下载地址https://ohse.de/uwe/software/lrzsz.html解压源码包:将下载的源码包放到宿主机下,并解压该压缩包。可以使用命令tar -xvf lrzsz-0.12.20.tar.gz进行解压。进入解压后的目录:使用cd命令进入解压后的目录。配置和编译:使用指...

  • 嵌入式Linux中GPIO设置的一些基本指令和步骤

    2024-05-19

    一、GPIO的介绍  嵌入式Linux中的GPIO(General Purpose Input/Output,通用输入/输出)是一种常用的接口,允许开发者直接控制硬件设备的某些引脚,进行诸如LED控制、传感器读取、设备状态监测等任务。二、设置步骤和示例在嵌入式Linux系统中,GPIO的设置和管理通常涉及以下几个方面:GPIO的导出和配置:首先,需要将GPIO引脚导出到用户空间,以便用户空间的程序可以访问和控制它。这通常通过 /sys/class/gpio接口完成。例如,要将GPIO引脚79导出,可以使用以下命令:echo 79 > /sys/class/gpio/export导出后,可以使用以下命令查看已导出的GPIO...

  • RFID(Radio Frequency Identification)技术笔记

    2024-05-19

    一、RFID的介绍  RFID,全称为Radio Frequency Identification,即射频识别技术,也常被称为电子标签或无线射频识别。它是一种非接触式的自动识别技术,通过射频信号自动识别目标对象并获取相关数据,识别过程无需人工干预,且能在各种恶劣环境中工作。二、RFID系统的组成  RFID系统主要由三部分组成:电子标签(Tag)、读写器(Reader)和天线(Antenna)。  电子标签,也被称为射频卡,由耦合元件及芯片组成。每个标签具有唯一的电子编码,附着在物体上标识目标对象。标签内含有内置天线,用于和射频天线间进行通信。此外,标签的芯片具有数...

  • MTR(My Traceroute)网络链路路由测试工具

    2024-05-19

    一、MTR的介绍  MTR是一款网络诊断工具,它将ping和traceroute的功能结合到一个程序中。这个工具可以提供关于网络链路的详细信息,显示数据包在网络上的传输路径,并提供有关每个节点的详细信息,如丢包率、延迟等。与传统的traceroute工具相比,MTR在默认情况下使用ICMP报文进行探测,这使得它在某些路由节点上的优先级可能较低,但这并不影响它作为一款优秀的网络监测工具,并成为网络管理员和故障排除人员的有力工具,帮助他们识别和解决网络问题。  使用MTR工具,用户可以通过访问指定的IP或域名,列出其完整访问链路,并向链路节点发送ICMP...

  • Type-C连接器笔记

    2024-05-19

    一、Type-C的介绍  Type-C是一种全新的USB接口形式,由USB Implementers Forum(USB-IF)制定,并在2014年获得苹果、谷歌、英特尔、微软等厂商支持后开始普及。它是一种通用串行总线(USB)的硬件接口规范,伴随最新的USB 3.1标准而推出。  Type-C接口最大的特点是支持正反两个方向插入,解决了“USB永远插不准”的世界性难题,使得插拔变得更加方便。此外,Type-C接口还具备高速数据传输、大电流充电、视频输出等功能,可以满足多种设备的需求。二、引脚定义  Type-C连接器共有24个引脚,其中12个是正面引脚,另外12个是背面引脚。这些引脚分...

  • bat脚本检测进程程序的方法

    2024-05-19

    一、脚本检测进程程序  使用批处理脚本检测程序是否在运行,可以使用tasklist命令来列出当前运行的所有进程,并通过findstr命令来搜索特定的进程名。下面是一个简单的批处理脚本示例,它会检测指定的程序是否在运行,并给出相应的信息:@echo off setlocal :: 设置要检测的程序名称 set "program_name=your_program_name.exe" :: 使用tasklist命令查找程序 tasklist /FI "IMAGENAME eq %program_name%" | findstr /I /C:"%program_name%">nul :: 检查findstr命令的退出码来确定是否找到了程序 if %errorlevel% equ 0 ( echo 程...

  • bat脚本进程停止与启动

    2024-05-19

    在Windows操作系统中,批处理(Batch)脚本是一种常见的自动化脚本工具,通过BAT文件来执行一系列DOS命令。通过BAT脚本,我们可以轻松地控制进程的启动和停止。一、进程停止  在BAT脚本中,要停止一个进程,我们通常使用taskkill命令。以下是一个示例:@echo off taskkill /F /IM process_name.exe在这个示例中:@echo off 用于关闭命令的回显,使得输出更加清晰。taskkill 是用于终止进程的命令。/F 参数表示强制终止进程。/IM 参数后面跟的是要终止的进程的映像名称。在这个例子中,我们要终止名为process_name.exe的进程。二、 进程启动  要...

  • C#--KUKA库卡机械臂通讯测试Demo

    2024-05-19

    一、介绍  解决方案名称为 KUKA_TCP_Demo.sln 解决方案下包含三个项目:TCPServer、TCPClient 和 KUKA_TCP_Server,其中前两个项目为基于 BytesIO TCP 通讯库的测试项目,可以用于测试 KUKA 机械臂通讯 Demo;而 KUKA_TCP_Server 是基于 TCP/IP 协议簇、使用 Socket 接口、采用 XML 结构传输数据的库卡机械臂通讯测试项目。注意事项 按照 XPath 架构配置使用 XML 进行数据交换时,交换的 XML 文件必须按照相同架构构建。Ethernet KRL 使用 XPath 语言描述和读取 XML 文件。对于 EKI 来说,用于发送和接收数据的 XML 结构必须拥有根元素:✔️ 您...

  • Visual Studio 如何同时运行多个项目

    2024-05-19

    方法一直接打开多个 Visual Studio 运行即可方法二在解决方案资源管理器中,右击解决方案节点,然后选择“属性”;展开“通用属性”节点,然后选择“启动项目”,选择“多个启动项目”选项并设置适当的操作。然后点击应用;效果

  • stm32单片机的智能手环-心率-步数-距离-体温-蓝牙监控

    2024-05-19

    一.硬件方案               随着社会的发展,人们的物质生活水平日渐提高,人们也越来越关注自己的健康。智能手环作为一种测量仪器,可以计算行走的步数和消耗的能量,所以人们可以定量的制定运动方案来健身,并根据运行情况来分析人体的健康状况,因而越发流行。便携式智能手环是适应市场需求的设计,使用起来简单方便。       主要由STM32F103C8T6单片机最小系统板+LCD1602液晶显示模块+ADXL345计步器模块+心率监测模块+DS18B20温度传感器+HC-05蓝牙模块+电源开关构成;二.设计功能(1)LCD1602液晶显示屏显示当前测量步数...

  • 51单片机程序烧录教程

    2024-05-19

    1.常用的51单片机51单片机即传统的兼容8051指令代码的8位单片机,对于新手来说,刚接触单片机主要已AT单片机和STC单片机。其两种单片机主要区别为不同的厂家生成,但代码基本可以通用。常用的AT89C51、AT89C52、AT89S51、AT89S52、STC89C51、STC89C52单片机代码均可通用。但在使用52单片机时需要注意,52是51单片机的更新版本,相比51单片机,52多了一个T2定时器、128B只读存储器、4K只读存储器、2个中断和一个看门狗。AT与STC单片机的主要区别是程序的下载方式,AT中的S51、S52系列的下载方式是ISP下载方式,而C51、C52与STC都是串口下载方式;其他...

  • 51单片机-keil工程创建

    2024-05-19

    1. 什么是Keil软件Keil软件是一款专为嵌入式系统开发而设计的集成开发环境(IDE),常用于51、STM32单片机软件开发的编程软件。Keil编程软件不仅支持多种工具和扩展程序,还能够处理多种文件格式和数据交换方式;可支持单片机程序的在线仿真,或通过仿真器进行实物仿真,大大方便开发人员的工作。其中,我们常用的Keil软件有两种,分别为Keil C51以及Keil MDK,前者主要用于51单片机等8051内核单片机的开发工具(不支持32位单片机),Keil MDK主要用于ARM架构单片机的开发工具,主要用于STM32单片机等32单片机。所以在使用Keil软件时需要主要这一点...

  • 如何给Keil软件导入STC数据包

    2024-05-18

    1. 为什么需要添加数据包Keil的设备数据包是一个可搜索的数据库,包含Keil软件开发工具支持的各种微控制器的信息。该数据库包括器件号、头文件、数据手册、芯片供应商信息和每个器件的简要描述。用户可按芯片家族或供应商进行搜索。Keil软件自带的设备数据包,其中列出了多种最流行的微控制器,从而简化了项目开发。Keil开发工具支持数据包列出的每个芯片。从数据包中选择具体设备时,Keil软件会设置默认的汇编器、编译器和链接器选项。用户只需要定义目标硬件的内存映射。对于许多设备,Keil还具有外设对话框、系统查看器窗口和设备仿真,包括指令...

  • 51单片机最小系统详解

    2024-05-18

    1.什么是51单片机51 内核单片机是 指兼容Intel 的8051指令系统的单片机统称;从诞生到现在的几十年时间,已成为一款经过市场考验、成熟的芯片产品。目前国内也众多51单片机厂家,且还有众多带51内核,用于各种不同场景的专用类单片机。51单片机内部框架:以下以STC89C52单片机为例,其内部总体结构其基本特性如下:8位CPU、4-8k 字节 ROM、128 字节 RAM、21 个特殊功能寄存器32根I/0线、可寻址的 64 字节外部数据、程序存贮空间、2个 16 位定时器计数器中断结构:具有二个优先级、五个中断源、一个全双工串行口、位寻址(即可对寄存器进行位操作)功能...

  • 基于51单片机的射频密码锁

    2024-05-18

    一.硬件方案               本设计以STC89C52为主控芯片的单片机密码锁,其硬件部分由单片机主控器电路,液晶显示电路, 矩阵按键电路,继电器驱动电路,射频IC卡电路,蜂鸣器报警电路组成;软件部分由程序主函数,各硬件模块初始化函数,显示屏驱动函数,4*4矩阵按键处理函数,EEPROM存储函数组成。整体通过识别用户输入的密码实现密码锁的。        整体电路主要由51单片机+最小系统+LCD1602液晶显示模块+RFID射频模块+按键+蜂鸣器电路+继电器驱动电路+电源接口构成;       二.设计功能(1)在用户输入密码时,在...

  • 基于51单片机的电机调速(PID调速)

    2024-05-18

    一.硬件方案               本设计以单片机STC89C51和三极管控制的直流电机脉宽调制调速系统。利用STC89C51芯片进行低成本直流电动机控制系统的设计,能够简化系统构成、降低系统成本、增强系统性能、满足更多应用场合的需要。系统实现对电机的正转、反转、急停、加速、减速的控制,以及PWM的占空比在液晶上的实时显示。同时显示实时的电机转速。        整体电路主要由51单片机+最小系统+LCD1602液晶显示模块+直流电机驱动电路+霍尔检测电路+按键模块;如图:二.设计功能(1)本设计采用51单片机作为主控制器(STC89C51/52,...

  • 基于51单片机的蓝牙温度控制系统

    2024-05-18

    一.硬件方案               该设计以单片机STC89C52为核心,作为控制器件,控制一定空间内的温度稳定在预设值,当温度低于预设温度时加热片通电加热,当温度回升到设定温度停止加热;当温度高于设定温度时风扇开始工作当温度处于设定温度是风扇停止运行;空间温度值可根据需要设定。增加蓝牙通信功能,可将温度温度数据通过蓝牙模块传输中至手机APP上显示,同时可以通过App设置温度的上下限。        整体主要由51单片机+最小系统+LCD1602液晶显示模块+DS18B20温度传感器+蓝牙模块电路+蜂鸣器模块+双路继电器电路+按键模块;...