自定义博客皮肤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)
  • 收藏
  • 关注

原创 【嵌入式】

本实验旨在基于HAL库的STM32F103C8T6单片机上移植uCOS(微型实时操作系统),通过实践掌握嵌入式开发中操作系统的移植和应用。在现代嵌入式系统中,应用程序往往需要同时处理多个任务,并且需要实时性能和可靠性,这就需要使用实时操作系统来管理任务和资源。STM32F103C8T6是一款基于ARM Cortex-M3内核的高性能单片机,具有丰富的外设资源和较大的存储空间。HAL库是ST公司为STM32系列单片机提供的一套硬件抽象层库,可以方便地进行外设驱动和功能开发。

2023-11-27 21:47:44 61

原创 汉字点阵与OLED屏显

实验前言:在当今的嵌入式系统开发领域,STM32微控制器因其强大的性能和广泛的应用范围而受到广泛应用。为了进一步扩展其应用范围,我们常常需要与各种外部设备进行交互。其中,OLED屏幕模块作为一种高分辨率、低功耗的显示设备,能够为我们提供丰富的图形和文本信息。在本实验中,我们将探讨如何将OLED屏幕模块与STM32微控制器进行连接,并实现基本的信息显示。通过这个实验,我们期望能够更深入地理解OLED屏幕的工作原理,掌握其与STM32的接口技术,为今后的项目开发提供实践经验。

2023-11-27 18:12:34 116

原创 STM32进阶-OLED显示时间+温度和湿度

在本次实验中,我们将学习如何使用STM32微控制器和OLED显示屏,实现显示时间、温度和湿度的功能。这个应用场景在很多项目中都非常常见,例如室内温湿度监测、气象站等。在现代生活中,对时间、温度和湿度的监测和显示具有重要的意义。无论是在家庭、办公室还是工业环境中,了解当前的时间和环境条件都是必要的。通过将这些信息实时显示在OLED屏幕上,我们可以方便地获取这些数据,从而更好地管理和调整我们的生活和工作。在过去,通常需要使用多个独立的设备来获取这些信息,例如时钟、温度计和湿度计等。

2023-11-25 17:48:46 2216

原创 【无标题】

在嵌入式系统中实现点阵汉字的字模读取与显示是一项重要的技术,它可以实现汉字的动态显示和交互功能。随着智能化应用的不断发展,汉字显示在各个领域中扮演着重要的角色,从工业控制到智能家居,从智能手表到智能车载系统,汉字显示都在为用户提供更加友好和直观的信息交互体验。过去,通过硬件方式实现点阵汉字的显示需要使用大量的存储空间和复杂的电路设计。然而,现在的嵌入式系统已经具备了足够的计算能力和存储资源,可以通过读取字模数据并进行适当的处理,实现简洁高效的点阵汉字显示。

2023-11-19 20:29:20 56

原创 串口发送文件简单示例

实验前言:本实验旨在演示如何通过串口发送文件。串口通信是一种常见的数据传输方式,可以用于将文件从一个设备发送到另一个设备。在本实验中,我们将使用一个发送端和一个接收端来实现文件的传输。发送端的任务是读取文件内容,并通过串口将数据发送给接收端。接收端则负责接收串口数据,并将接收到的数据写入到目标文件中。

2023-11-19 17:36:27 565

原创 基于I2C协议的AHT20温湿度传感器的数据采集

通过本次实战,我们了解了如何使用STM32微控制器通过I2C协议与AHT20温湿度传感器进行通信,并实现了数据的采集。在实际应用中,需要注意传感器的安装方式、连接线长度及布局、电源的稳定性等因素对测量精度的影响。同时,对于数据的处理也需要根据实际需求进行相应的算法设计和优化。

2023-11-15 12:20:51 105

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

接着,采用定时器的PWM模式,通过配置定时器的参数和相关寄存器,可以实现LED以呼吸灯方式渐亮渐灭。首先,使用定时器的计数方式,通过配置定时器的参数和中断处理函数,可以实现LED以2秒的频率周期性地亮-灭。使用STM32F103的 Tim2~Tim5其一定时器的某一个通道pin(与GPIOx管脚复用,见下图),连接一个LED,用定时器计数方式,控制LED以2s的频率周期性地亮-灭。在实验过程中,我们需要仔细阅读相关的STM32定时器和PWM模式的文档,理解其寄存器的配置方法和中断处理函数的编写。

2023-11-05 22:05:04 65

原创 GCC背后的故事;C程序常量变量的分配

动态分配内存:是在程序加载、调入、执行的时候分配 回收的内存,栈的地址是向下增长,堆的地址是向上增长 静态变量是地址向下增长 全局常量是地址向上增长\n函数的地址向上增长 而由函数,一直到栈区,地址总体是从低地址到高地址,逐步递增的。(一)stm32的堆、栈、全局变量的分配地址编程显示\n在一个STM32程序代码中,从内存高地址到内存低地址,依次分布着栈区、堆区、全局区(静态区)、常量区、代码区,其中全局区中高地址分布着.bss段,低地址分布着data段。(3)使用.so 库文件,创建可执行程序。

2023-11-01 17:09:31 48 1

原创 STM32F103的流水灯点亮版本1(寄存器地址操作)

对于如何控制LED灯的亮灭,我们用到的是BIT_ADDR(GPIOX_ODR_Addr,n)函数来控制输出口的电平,从而达到控制LED的亮灭的功能。stm32的点灯则是,通过使能外设GPIO时钟,发出指令给外设GPIO,外设GPIO收到指令后,着手配置自己的寄存器,然后给IO口模式,让其实现各种功能。点亮LED需要输出低电平,地址的偏移是0x0C,所以这个数据寄存器的地址就是0x4001 0C0C,把第8位写为0就行。3、通过寄存器起始地址表,查询RCC地址范围,控制的寄存器位于APB2中。

2023-10-31 21:53:22 72 1

原创 嵌入式系统

举例,当你选择“ 元件 ”后,单击“ P ”按钮会打开挑选元件对话框,选择了一个元件后(单击了“ OK ”后),该元件会在元件列表中显示,以后要用到该元件时,只需在元件列表中选择即可。(3)复制粘贴完后,点击左上角保存按钮,在弹出的窗口内,输入文件名main.c(如果不加后缀,就不会是.c文件),点击保存,而后Text1文件就变成了main.c文件。(2)51单片机的资源占用更少,所需要的内存、存储空间和低级硬件资源更少,因此开发者可以更加专注于程序状态的处理,编写更加高效、简洁的代码;

2023-10-31 21:42:33 41 1

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

在进行STM32基于中断/DMA方式的串口通信实验时,我们需要选择合适的串口通信协议:根据应用需求选择合适的串口通信协议,在实验中,需要正确配置串口的波特率、数据位、停止位、校验位等通信参数。确保发送端和接收端的通信参数一致,以确保数据的正确传输。DMA方式则通过配置DMA通道,实现数据的直接传输,减轻CPU的负担,提高通信效率。其中,9针的连接器常用于较新的设备,而25针的连接器则常用于较旧的设备。以上就是RS-232标准的介绍,该标准定义了串行通信的电气特性、信号传输方式和接口连接等方面的规范。

2023-10-30 22:18:37 193

原创 STM32串口通信入门

它通常用于将计算机(PC、Mac、Raspberry Pi等)的USB接口连接到其他设备(如微控制器、传感器、模块等)的串口接口,以便进行通信和数据交换。4.信号电平转换:USB转TTL设备将USB接口的电压(通常为5V)转换为TTL串口接口的逻辑电平(通常为3.3V或5V,具体取决于设备)。我们将通过配置STM32的串口模块,并编写相应的程序,实现STM32与计算机之间的数据传输。5.LED指示灯:通常,USB转TTL设备会配备一些LED指示灯,用于显示设备的工作状态,如电源指示灯、发送/接收指示灯等。

2023-10-26 20:40:52 49

原创 STM32基于HAL库流水灯实验

电路连接方面,需要将LED灯珠的正极连接到单片机I/O口,负极接地,同时串联适当的电阻以保护LED灯珠。此外,LED流水灯在教育、科研等领域也有着广泛的应用,可以帮助人们理解单片机的工作原理和电路设计。通过这次实验,在实践中理解了STM32cubemx的基础原理知识,通过stm32cubeMX的开发环境,直接运用了HAL库编程实现了实验要求让LED灯亮起让我受益良多。本实验的主要目的是探究LED流水灯的控制方式,了解单片机的内部资源和外设库的使用方法。分析实验结果,理解电路连接和程序执行的效果。

2023-10-24 18:04:14 73

原创 STM32F103下,通过电路搭建实现LED灯轮流闪烁的实验操作

寄存器的功能是存储二进制代码,它是由具有存储功能的触发器组合起来构成的。输入模式:上拉和下拉输入的电平由上拉或者下拉,浮空输入的电平是不确定的,完全由外部的输入决定,一般接按键的时候用的是这个模式。根据题目要求,使用GPIOA-5、GPIOB-9、GPIOC-14 这3个引脚来控制LED灯,在查询C8T6数据手册后,管脚分别连接红绿蓝三种颜色的LED灯。在新建的工程中添加启动文件(startup_stm32f10x_hd.s),该文件可以先到固件库中复制到此处startup_stm32f10x_hd.s。

2023-10-16 20:45:51 349 1

原创 GCC背后的故事;C程序常量变量的分配

动态分配内存:是在程序加载、调入、执行的时候分配 回收的内存,栈的地址是向下增长,堆的地址是向上增长 静态变量是地址向下增长 全局常量是地址向上增长\n函数的地址向上增长 而由函数,一直到栈区,地址总体是从低地址到高地址,逐步递增的。(一)stm32的堆、栈、全局变量的分配地址编程显示\n在一个STM32程序代码中,从内存高地址到内存低地址,依次分布着栈区、堆区、全局区(静态区)、常量区、代码区,其中全局区中高地址分布着.bss段,低地址分布着data段。(3)使用.so 库文件,创建可执行程序。

2023-10-06 14:01:38 42 1

原创 STM32F103的流水灯点亮版本1(寄存器地址操作)

对于如何控制LED灯的亮灭,我们用到的是BIT_ADDR(GPIOX_ODR_Addr,n)函数来控制输出口的电平,从而达到控制LED的亮灭的功能。stm32的点灯则是,通过使能外设GPIO时钟,发出指令给外设GPIO,外设GPIO收到指令后,着手配置自己的寄存器,然后给IO口模式,让其实现各种功能。点亮LED需要输出低电平,地址的偏移是0x0C,所以这个数据寄存器的地址就是0x4001 0C0C,把第8位写为0就行。3、通过寄存器起始地址表,查询RCC地址范围,控制的寄存器位于APB2中。

2023-10-04 17:38:36 190 1

原创 嵌入式系统

Proteus使用教程并仿真51程序——LED流水灯一、Proteus简介Proteus是英国著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。它是目前比较好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。

2023-09-24 21:28:48 41 1

原创 Ubuntu系统使用gcc和Makefile编译C程序

本次实验使用gcc对c语言进行编译,我更加了解了gcc对c语言程序的编译过程,并发现了在window下编译过程的差别。还学习使用了makefile与make来完成了c语言程序的编译,在面对多个程序的链接编译时makefile是一个好用的工具,能达到快速编译的目的。一、使用gcc命令完成编译c语言程序。3.在window下编译运行。2.编译运行上述c语言程序。1.编写makefile。在gedit中编写效果。目标文件:[相依文件]<tab>命令[注释]<tab>命令[注释]

2023-09-15 21:44:29 45

空空如也

空空如也

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

TA关注的人

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