- 博客(9)
- 收藏
- 关注
原创 STM32F103C8移植uCOSIII
ifdef CPU_CFG_INT_DIS_MEAS_EN //如果使能了测量中断关闭时间。#if OS_CFG_SCHED_ROUND_ROBIN_EN //当使用时间片轮转的时候。//使能时间片轮转调度功能,时间片长度为1个系统时钟节拍,既1*5=5ms。/* 启动多任务系统,控制权交给uC/OS-III *//* 创建LED0任务 *//* 创建LED1任务 *//* 任务堆栈大小 *//* 创建任务 */
2025-11-03 23:35:26
1353
原创 STM32F103 实战:0.96 寸 I2C OLED 屏 U82G 移植与学号姓名显示
在 Demo 例程验证成功后,重点修改显示内容为个人学号和姓名,通过调整字体大小、显示坐标,确保信息在 0.96 寸 OLED 屏(128*64 分辨率)上清晰呈现:。实际效果:OLED 屏单次刷新后,稳定显示学号和姓名,文字清晰无乱码、无重叠,无循环刷新逻辑,持续保持当前显示状态,满足核心需求。// 初始化0.96寸I2C OLED屏,指定旋转方向、通信函数和GPIO/延时函数。// 单次发送数据,完成显示。
2025-11-01 22:21:12
1556
原创 IIC协议采集温湿度
硬件 I2C:依赖 MCU 内部专用硬件,时序可靠、效率高,但引脚固定、灵活性低。软件 I2C:通过 GPIO 和软件模拟,引脚灵活、移植性强,但依赖软件时序、占用 CPU 资源。1.2一、硬件选型与连接1. 核心硬件• 主控芯片:STM32F103C8T6• 传感器:DHT22(AM2302)温湿度传感器• 串口工具:USB转TTL模块(如CH340)• 下载器:ST-Link V22. 硬件连接(关键引脚对应)
2025-10-29 18:38:27
1499
原创 STM32 定时器应用实战:多任务定时与 PWM 呼吸灯
通过本次实验,我掌握了 STM32 定时器的配置方法和 PWM 波形的生成原理,成功实现了多任务并发运行和 LED 呼吸灯效果。对比了查询方式和中断方式实现多任务的差异,深刻理解了定时器在嵌入式系统中对于精准定时和高效任务调度的重要性。同时,通过 STM32CubeMX 工具简化了配置过程,提高了开发效率。
2025-10-20 23:37:04
692
原创 串口通信从基础到实战:双机传输与 STM32 编程全解析
串口通信是一种基于串行通信协议的异步数据传输方式,通过单条数据线逐位传输数据,广泛应用于设备间的短距离通信。RS-232 是串口通信中最经典的标准之一,它定义了信号的电气特性、引脚功能和通信协议参数。在 RS-232 标准中,信号电平采用正负电压表示逻辑状态:逻辑 1 对应 - 3V~-15V 的负电压,逻辑 0 对应 + 3V~+15V 的正电压。该标准通常使用 DB9 接口,包含 TXD(发送端)、RXD(接收端)、GND(地)等关键引脚,支持全双工通信模式,即数据的发送和接收可同时进行。
2025-10-20 22:52:10
497
原创 GCC背后的故事&C程序常量变量的地址分配
一.任务要求1)阅读、理解和学习材料“用gcc生成静态库和动态库.pdf”和“静态库.a与.so库文件的生成与使用.pdf”,请在Linux系统(Ubuntu)下如实仿做一遍。2)在第一次作业的程序代码基础进行改编,除了x2x函数之外,再扩展写一个x2y函数(功能自定),main函数代码将调用x2x和x2y;将这3个函数分别写成单独的3个 .c文件,并用gcc分别编译为3个.o 目标文件;
2025-10-11 21:40:12
565
原创 运用STM32CubeMX,配合Keil完成流水灯,并再运用中断原理
2.在keil中找到int main()中while(1),并在里面输入我们的代码。三..完成两个任务的代码,运用ST--LINK把他们导入stm32芯片中。(因为图片大于5MB上传不了所以只有上传这种图片了)1.第一个任务的proteus图片和实际视频。2.第二个任务的proteus图片和实际视频。视频后续补发,优快云里面还在审核中上传不了。1.配置STM32CubeMX。main()前面加一个全局变量。1.加入PA3作为中断。再在后面写一个新的函数。一.完成周期性流水灯。
2025-10-09 23:44:43
169
原创 STM32 GPIO 控制 LED 流水灯实验
2.添加已有的文件 Start Library User ,右键Target,点击add,然后更改名字为Start Library User。这个代码与上面的相呼应,规定了是运用A8引脚。每个 LED 串联一个 220Ω 限流电阻,防止电流过大损坏 LED 和 STM32 引脚,连接图如下。最下面绿色注释的代码是为了方便理解我们所编写的程序,下面解释一下部分重要代码。3.在user里面编写main.c,程序如下。
2025-09-26 23:48:44
540
原创 1.Ubuntu系统下打出hello world2.编写一个主程序文件3.在ubuntu系统下用Makefile方式编程主程序4.在我们习惯用的Visual studio下编译
二.编写一个主程序文件 main1.c 和一个子程序文件 sub1.c, 要求:子程序sub1.c 包含一个算术运算函数 float x2x(int a,int b),此函数功能为对两个输入整型参数做某个运算,将结果做浮点数返回;主程序main1.c,定义并赋值两整型变量,然后调用函数 x2x,将x2x的返回结果printf出来。一.Ubuntu系统下打出hello world。1.编写主程序main.c和子程序sub.c。三.运用Makefile编译。2.运用gcc运行编译。2.编译源代码并运行。
2025-09-21 23:45:07
210
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅