自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 嵌入式RTOS多任务程序设计

学习嵌入式实时操作系统(RTOS),以uc/OS-III为例,将其移植到stm32F103上,构建至少3个任务(task):其中两个task分别以1s和3s周期对LED等进行点亮-熄灭的控制;另外一个task以2s周期通过串口发送“hello uc/OS! 欢迎来到RTOS多任务环境!”。记录详细的移植过程。

2023-11-27 20:26:25 60

原创 数字温度计

读取STM32F103C8T6 内部的时钟(年月日时分秒),日历(星期x),1秒周期,通过串口输出到PC上位机;读取AHT20的温度和湿度,通过OLED,把年月份时分秒、日历和实时温度、湿度显示出来,2秒周期。

2023-11-25 22:21:40 63

原创 串口传输文件

将两台笔记本电脑,借助 usb转rs232 模块和杜邦线,建立起串口连接。然后用串口助手等工具软件(带文件传输功能)将一台笔记本上的一个大文件(图片、视频和压缩包软件)传输到另外一台电脑,预算文件大小、波特率和传输时间三者之间的关系,并对比实际传输时间。

2023-11-19 00:06:51 67

原创 汉字点阵与OLED屏显

OLED(Organic Light Emitting Display,中文名有机发光显示器)是指有机半导体材料和发光材料在电场驱动下,通过载流子注入和复合导致发光的现象。其原理是用ITO透明电极和金属电极分别作为器件的阳极和阴极,在一定电压驱动下,电子和空穴分别从阴极和阳极注入到电子和空穴传输层,电子和空穴分别经过电子和空穴传输层迁移到发光层,并在发光层中相遇,形成激子并使发光分子激发,后者经过辐射弛豫而发出可见光。

2023-11-18 23:47:15 139 1

原创 IIC协议读取温湿度数据

学习I2C总线通信协议,使用STM32F103完成基于I2C协议的AHT20温湿度传感器的数据采集,并将采集的温度-湿度值通过串口输出。

2023-11-15 21:24:28 41

原创 STM32定时器&PWM应用编程

STM32定时器是一种重要的外设,可用于实现定时、计数、捕获、比较和脉宽调制(PWM)等功能。它由一个或多个计数器、预分频器和控制寄存器组成,通过配置这些寄存器来实现不同的定时和计数功能。STM32-PWM是STM32系列微控制器上的一种重要外设,用于生成脉宽调制(PWM)信号。脉宽调制技术在许多应用中都起着关键作用,如电机控制、LED亮度调节、音频处理等。STM32PWM模块提供了灵活的配置选项和高精度的PWM输出能力。

2023-11-04 15:44:44 226 1

原创 STM32—基于中断/DMA方式的串口通信

STM32系统给上位机(win10)连续发送“hello windows!”;当上位机给stm32发送字符“stop”后,stm32暂停发送“hello windows!”;发送一个字符“start”后,stm32继续发送。

2023-10-31 13:56:32 224 1

原创 HAL库中断方式进行串口通信

STM32系统给上位机(win10)连续发送“hello windows!”。win10采用“串口助手”工具接收。扩展功能:当上位机给stm32发送一个字符“#”后,stm32暂停发送“hello windows!”;发送一个字符“*”后,stm32继续发送。

2023-10-26 20:08:20 65

原创 基于HAL库的LED流水灯

用stm32F103核心板的GPIOA端某一管脚接一个开关(用杜邦线模拟代替)。采用中断模式编程,当开关接高电平时,LED流水灯工作;接低电平时,LED流水灯停止工作。

2023-10-23 21:54:32 29

原创 基于标准外设库的LED流水灯

用标准外设库方式使用某个端口GPIOx端口管脚控制几个LED灯,轮流闪烁,间隔时长1秒。并在没有示波器条件下,使用Keil的软件仿真逻辑分析仪功能观察管脚的时序波形,更方便动态跟踪调试和定位代码故障点。

2023-10-16 09:34:04 49 1

原创 STM32F103C8T6寄存器方式实现流水灯

STM32F103C8T6是一款由意法半导体公司(ST)推出的基于ARM Cortex-M 内核STM32系列的32位的微控制器,硬件采用LQFP48封装,属于ST公司微控制器中的STM32系列。程序存储器容量是64KB,需要电压2V~3.6V,工作温度为-40°C ~ 85°C。

2023-09-28 21:23:28 261

原创 Ubuntu、stm32下的C程序变量的地址分配

Ubuntu、stm32下的C程序中堆、栈、全局、局部等变量的分配地址。

2023-09-28 19:13:14 45

原创 使用gcc生成静态库.a和动态库.so

关于静态库.a与.so库文件的生成与使用

2023-09-27 23:31:21 132 1

原创 嵌入式C程序中的 register和volatile关键字

一个指令关键字,其作用是确保指令本身不会受到编译器的优化而产生未知的程序bug。用volatile修饰变量或地址,相当于告诉编译器这个值会随时发生变化,每次使用都要去内存中重新读取它的值。在嵌入式开发中对寄存器或I/O端口的操作都要用volatile。

2023-09-19 23:46:41 134

原创 关于STM32F103系列芯片的地址映射和寄存器映射原理的理论概念问题

当STM32不引入时钟的话,就像51一样外设全开,相应耗电就很严重了,所以厂家(st公司)为了解决这个问题,引入了“时钟概念”,即使用哪个外设就给哪个外设时钟(频率),不使用的就关掉(不震荡)。在51单片机中一个时钟把所有的都包了,而STM32的时钟是有分工的,并且每类时钟的频率不一样,因为没必要所有的时钟都是最高频率,只要够用就行。对内存:程序在内存中装载, CPU 从存储器中读取和写入数据,它通过控制总线发送数据请求并进入存储器存储单元,通过。的寄存器,我们可以通过不同的地址区分寄存器。

2023-09-19 22:36:28 62

原创 使用MDK软件进行一个STM32简单程序的编译——LED灯闪烁

此次操作通过安装MDK5软件和STM32进行开发环境的搭建,熟悉了MDK的开发环境,完成了一个STM32的简单的通过寄存器方式点亮LED的程序,并且做了程序的编译和仿真测试进行学习。

2023-09-19 21:21:03 542

原创 51单片机编程入门——流水灯

利用Proteus和Keil软件进行简单的51单片机的程序编写和仿真

2023-09-17 22:54:02 1213 1

原创 Ubuntu系统下分别用gcc和Makefile方式编译C程序

Ubuntu系统下分别用gcc和Makefile方式编译C程序,并用Windows编译工具进行编译从而与其做对比。

2023-09-10 19:38:21 139 3

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除