- 博客(99)
- 收藏
- 关注
原创 C51 串口通讯
89C52内置1个串口模块(UART)支持异步通信和同步通信模式,常用的是异步通信模式波特率通过定时器1或定时器2产生,常用方式是定时器1工作在模式2(8位自动重载)
2025-07-30 15:11:48
251
原创 C51 中断
摘要: 8051单片机支持外部中断和定时器中断两种中断方式。外部中断由INT0/P3.2(中断号0)和INT1/P3.3(中断号2)触发,可通过TCON寄存器配置电平或边沿触发,并通过IE寄存器开启中断。定时器中断(如T0/中断号1)通过TMOD设置模式,计算初值实现定时,需手动重装初值。文中给出了按键控制LED翻转(外部中断)和1秒LED闪烁(定时器中断)的实例代码,展示了中断配置、初值计算和中断服务函数的编写方法。两种中断均需开启总中断(EA=1)才能正常工作。
2025-07-29 19:23:17
430
原创 C51 IO输入输出
P0(80H):P0 口锁存器,双向 8 位 I/O 口(可复用为地址 / 数据总线)。P1(90H):P1 口锁存器,准双向 8 位 I/O 口。P2(A0H):P2 口锁存器,准双向 8 位 I/O 口(可复用为高 8 位地址线)。P3(B0H):P3 口锁存器,准双向 8 位 I/O 口,每一位有第二功能(如串口、中断、定时器等)
2025-07-29 11:34:15
391
原创 HC32 睡眠
实现正常工作6.8-7.42ma左右 ,睡眠1.58-1.66ma。1.上一个配置了中断 这里用中断配合sleep。pa7是按键,pd14是led灯。
2025-07-25 10:37:46
221
原创 esp8266 固件下载工具
需要长按boot0 进入下载(不确定是不是硬件问题),下载完成后程序并没有跑起来。生成合成的bin在conmbine目录,可以自己重命名。arduino程序需要长按,下载 进去,能跑起来。接下来就可以只选择合成的bin进行烧录。6.固件地址以及模式配置。5.esp8285烧录。
2025-07-23 15:41:01
306
原创 ESP8266 http收发数据
7.效果(连接过的wifi会保存flash,每次发送WiFi账密,会重新连接)(2)串口接收数据http发送云(不要有空格,数据可以自己往后添加)在component config目录下找到log output。6.get线程获取云服务数据(需要修改两个url的token)选中点击空格关掉彩色日志输出,这样正常串口打印就没有乱码了。3.串口接收json,http发送云代码。选择component config。(1)串口接收数据配网(不要有空格)修改波特率为115200。2.修改彩色日志打印的。
2025-07-23 09:24:32
337
原创 玩客云 安装filebrowser
一、filebrower 是一个文件管理工具,可以方便图形化修改文件,浏览视频等,此处用来方便修改远程小服务器的文本数据,编辑脚本。根据对应的分支选择适合自己的架构(玩客云 arm32 )(魔百盒arm64)docker首先挂代理 可以借鉴。节点可以网上查询,有每日更新的。docker拉取镜像。docker安装代码。
2025-06-11 09:34:17
312
原创 HC32L190 定时器3配置us延时函数
本文介绍了如何配置和使用TIM3定时器实现微秒级延时。首先,通过Timer3_Init_ForDelay函数初始化TIM3定时器,设置其工作模式为16位自动重载,并使用PCLK时钟源分频至1MHz,使得每个计数周期为1微秒。接着,delay_us函数通过设置自动重载寄存器(ARR)和计数器初值,启动定时器并等待溢出标志,从而实现精确的微秒级延时。该延时函数支持最大65535微秒的延时,并在延时完成后清除中断标志并停止定时器。代码结构清晰,适用于需要高精度延时的嵌入式应用场景。
2025-05-22 10:29:00
322
原创 HC32L190 实现模拟MDIO协议
MDIO协议是一种用于管理以太网PHY芯片的通信协议,通过两路信号线(MDC时钟线和MDIO数据线)实现双向数据传输。协议帧包括前导码、起始位、操作码、PHY地址、寄存器地址、转向位和数据位。MDIO支持读写操作,数据位为16bit,传输时先传高位。代码部分展示了MDIO接口的初始化、读写操作实现,包括GPIO配置、位读写、数据发送与接收等功能。通过mdio_write和mdio_read函数,可以完成对PHY寄存器的读写操作,例如mdio_write(0x01, 0x03, 0x5555)表示向PHY地址
2025-05-22 10:20:05
477
原创 HC32L190 ADC采集
文章摘要:本文介绍了ADCAIN2驱动的使用,重点描述了如何通过外接3.3V电压进行数据采集。代码部分详细展示了ADC的初始化、单次阻塞式采集以及增量滑动平均滤波器的实现。初始化函数Hd_ADC_Init配置了ADC的工作模式、时钟分频、采样周期和参考电压等参数。Adc_Read函数实现了单次采集并处理超时情况,而Adc_FilteredRead函数则通过滑动平均滤波器对采集数据进行平滑处理。最后,任务框架vAdcTask展示了如何周期性地读取并输出滤波后的电压值。整体代码结构清晰,适用于电压变化缓慢的场景
2025-05-16 16:20:27
209
原创 HC32L190 串口驱动
本文介绍了HC串口0驱动的字节中断接收数据实现方法。代码通过hd_uart0.c文件实现了串口0的初始化、字节发送、字符串发送以及中断处理功能。串口配置为偶校验模式,波特率为115200,使用字节中断接收数据,接收满10字节后触发标志并通知主任务。串口工具需注意不勾选“发送新行”,以避免接收数据覆盖原有数据。任务框架中,串口初始化后进入循环,检测接收标志并打印接收到的10字节数据,随后清空缓冲区并重置索引。通过适当延时减少竞争风险,确保数据接收的稳定性。
2025-05-16 16:09:15
381
原创 HC32L190 开发环境搭建
CMSIS 安装 keil 5.6.0。keil 版本安装 keil V5。pack包 直接安装。此处CMSIS使用5.6.0。3.下载驱动和 示例库。2.keil环境搭建。
2025-05-09 15:38:05
272
原创 电视盒子 刷armbian
使用方法 ,先打开软件 选择烧录包勾选擦除 点击开始 , 盒子短接 双头usb连接电脑和盒子靠近网口的,然后上电(先短接,在上电,重复试几次),听到响声就成功了。链接:https://pan.baidu.com/s/1hz87_ld2lJea0gYjeoHQ8A?选择调试,从U盘启动 等待断开连接后断电,插上U盘(靠近网口的)不启动更换linux版本。将下载的安装包选择,选择对应u盘,点击烧录即可(可以不用解压直接烧录)然后跟着教程选择自己的配置,完成后进入系统。a. 下载安卓线刷包。
2025-04-08 13:47:47
1520
2
原创 Cjson的创建和解析
cJSON是一个用 C 语言编写的轻量级 JSON 解析和生成库,它的主要作用是帮助开发者在 C 语言项目中方便地处理 JSON(JavaScript Object Notation)数据。JSON 是一种轻量级的数据交换格式,具有简洁、易读的特点,广泛应用于网络数据传输、配置文件存储等场景。下面详细介绍cJSON。
2025-04-02 08:53:29
555
原创 玩客云 安装alist
也可以去注意选择“” 上传到root目录下命令 cd /root 进入该文件夹tar zxvfalist-linux-arm-7.tar.gz 解压文件赋予程序执行权限:运行程序。
2025-03-21 09:53:22
476
原创 MQTT 联通物联网平台MqttX连接测试
需从平台获取,C1F81121DAFA2DA897122506)hmac_sha256(拼接字符串, deviceSecret): 关闭TLS(明文传输)1.创建MQTT产品。
2025-03-20 17:10:28
749
原创 STM32CubeMx DRV8833驱动
其中A端(AIN1与AIN2)只能控制AO1与AO2端。B端(BIN1与BIN2)只能控制BO1与BO2端。speed为PWM控制的占空比,通过占空比控制电机速度。DRV8833控制电机速度的方式,是通过将IN1与IN2接入PWM,直接通过调整PWM的占空比进行速度控制。因此要求AIN1/AIN2/BIN1/BIN2都要使用PWM功能。这里将STBY接入5V,让其一直为高电平,后续的电机停止控制通过IN1与IN2进行控制。STBY置1后通过AIN1、AIN2、BIN1、BIN2 来控制正反转。
2025-03-01 23:06:23
715
原创 esp8266 rtos sdk开发环境搭建
安装过程中可保持默认设置,安装完成后,在命令提示符(CMD)或 PowerShell 中输入。烧录过程中,开发板可能需要进入下载模式(一般需要按住开发板上的特定按键,具体操作请参考开发板的说明书)。使用上下箭头键选择选项,回车键进入子菜单或确认选择,将开发板通过 USB 数据线连接到计算机,确定开发板的串口设备名称(在设备管理器中查看,一般为。键返回上一级菜单,配置完成后选择 “Save” 保存配置,然后选择 “Exit” 退出。如果编译成功,会在项目目录下生成相应的固件文件。具有预先准备的环境的目录。
2025-02-26 15:33:18
901
原创 玩客云 烧录
失败处理:若进度卡在7%,检查USB端口是否为USB2.0(部分主板需使用USB2.0口)。正确顺序:短接镊子→插入USB线(靠近HDMI口)→接通电源→听到电脑识别声后。首次登录提示修改密码时,建议设置为高强度密码(后续刷Armbian需复用)。:通过USB Burning Tool导出原始镜像(选择“读取设备”功能)。:短接HDMI接口左侧两个金属触点(无丝印,需参考图示)。绿灯→蓝灯→红蓝交替闪烁(正常刷写中)→蓝灯常亮(完成)。更换USB端口,使用主板原生USB接口(非扩展坞)。
2025-02-24 10:47:12
1383
原创 玩客云 免驱无线网卡 终端配网
将下面的代码粘贴进去(输入i 插入 ctl+v 粘贴 shift+: wq保存推出)1.硬件将免驱网卡插在靠近网口的usb,先插网线进入玩客云后台,ssh连接到终端。
2025-02-19 13:09:59
1185
2
原创 玩客云 IP查找
一、玩客云使用静态IP在不同网段路由器下不能使用,动态不好找IP地址二、使用python3 实现自动获取发送三、设置开机自启动。
2025-02-18 15:50:01
661
原创 GDlink 下载hex固件
选择 Target->connect 连接GDlink(DAP-link),连接后Program下载固件,read data 可以从芯片读出程序read fulll chip(读取全部)read range(选择范围读取)。下载hex点击program后,显示100%完成下载,点击run app 复位程序。选择file->open 打开我们刚找到的hex文件。一、确认hex所在文件夹。二、打开GDlink。
2025-02-13 12:57:02
386
原创 STM32CubeMX W25Q64驱动代码
在 “Pinout & Configuration” 选项卡中,找到 SPI 接口(如 SPI1),将其模式设置为 “Full-Duplex Master”(全双工主模式)。:完成配置后,点击 “Project Manager”,设置项目名称、保存路径和工具链(如 MDK - ARM),然后点击 “Generate Code” 生成代码。:打开 STM32CubeMX,选择你使用的 STM32 芯片型号。:将用于 W25Q64 片选的 GPIO 引脚PA4配置为输出模式。
2025-01-23 14:19:55
621
原创 GD32L233RB 驱动数码管
动态显示(动态扫描)所有的位显示结束要在10ms左右 显示2ms 消光1ms。1.数码管有8段A、B、C、D、E、F、G 和 H小数点 以及片选信号(DIG)DIG用来选择那一位,A-G 用来显示段。静态显示每次只能一次显示单个位。实现动态显示面板数据。
2025-01-22 17:09:54
597
原创 GD32 开发环境搭建
链接: https://pan.baidu.com/s/11Bi2JQXzGA1pE-BbyGzMAg?pwd=6wrk 提取码: 6wrk。2.解压安装激活后,安装上面的Addon里面对应芯片的pack包。点进去之后,下载pack包和示例工程,备用。三、Keil安装最新版5.27以上版本。这里提供Keil v40版本的。一、下载数据手册和用户手册。3.最后打开给的工程编译。二、下载软件和程序包。GD32工程搭建结束。
2025-01-02 17:29:23
967
原创 STM32 Jlink Flash读写固件数据
目录一、从单片机读数据1.创建工程XX.jflash,已经有的工程不需要创建直接打开2.创建完成,连接jlink3.读取整个芯片的数据4.读取完成后保存数据5.选择保存的数据格式,以及位置,读数据完成二、写固件数据到单片机1.创建工程XX.jflash,已经有的工程不需要创建直接打开2.选择接口和速度,以及芯片型号,点击ok3.选择要打开的数据 hex文件或其他格式可执行文件4. 连接jlink5.下载程序6.下载成功后点击ok,复位板子或者重新上
2024-12-05 10:22:39
3182
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人