自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

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

通过本次实验,首先对嵌入式系统的RTOS系统有了更多了解,特别是uc/OS-III。在完成实验任务时,发现本次实验在移植文件,修改代码时尤为繁琐,但是锻炼效果极佳。

2023-11-27 14:12:25 37

原创 STM32日历读取以及数字温度计

RTC (Real Time Clock):实时时钟实时时钟是一个独立的定时器。RTC模块拥有一组连续计数的计数器,在相应软件配置下,可提供时钟日历的功能。修改计数器的值可以重新设置系统当前的时间和日期。RTC模块和时钟配置系统(RCC_BDCR寄存器)处于后备区域,即在系统复位或从待机模式唤醒后, RTC的设置和时间维持不变。系统复位后,对后备寄存器和RTC的访问被禁止,这是为了防止对后备区域(BKP)的意外写操作。

2023-11-25 20:17:56 216

原创 汉字点阵与OLED屏显

汉字在计算机中的表示方式,也称为字符编码。其中,ASCII码只能表示128个字符,GB2312是中国国家标准,可以表示包括汉字在内的所有字符,GBK是GB2312的扩展,Unicode是国际标准,可以表示全球范围内的所有字符。汉字点阵的实现原理是将一个汉字转换为16×16的点阵,每个点的值为0或1,表示该点是否需要显示。具体实现方法是将汉字的区位码转换为字模在HZK16字库中的偏移地址,然后读取该地址开始的32个字节,将其转换为16×16的点阵。其中,区号表示汉字所在的区,位号表示汉字在该区中的位置。

2023-11-19 22:36:51 62

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

I2C 总线广泛应用在 OLED 显示器、气压传感器或陀螺仪/加速度计模块的项目。I2C结合了SPI和UART的最佳功能。使用I2C,可以将多个从机连接到单个主机(如SPI),并且可以让多个主机控制单个或多个从机。当希望有多个微控制器将数据记录到单个存储卡或将文本显示到单个LCD时,这非常有用。与UART通信一样,I2C仅使用两根线在设备之间传输数据:SDA(串行数据):主机和从机发送和接收数据的线路。SCL(串行时钟):传输时钟信号的线路。

2023-11-08 21:13:40 56 1

原创 定时器&PWM应用编程

STM32定时器是STM32系列微控制器中的一个重要外设,用于实现定时、计数和产生特定的时序信号。STM32定时器的原理是基于一个可编程的预分频器(PSC)和一个自动重装载计数器(CNT)构成的。STM32定时器分为三类:基本定时器、通用定时器和高级定时器。基本定时器(TIM6和TIM7)只能向上计数,适用于简单的定时功能。通用定时器(TIM2-TIM5)具有更多的功能,包括向上、向下和向上/下计数模式,以及输入捕获、输出比较和PWM生成等功能。

2023-11-03 21:50:49 71

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

串口是显控设备与信号处理板之间通信的主要接口,也是显控设备与其他设备、设备与设备之间的协议数据帧通信传输的重要接口。串口通讯 (Serial Communication)是一种设备间非常常用的串行通讯方式,电子工程师在调试设备时也经常使用该通讯方式输出调试信息。通讯协议,我们以分层的方式来理解,最基本的是把它分为物理层和协议层。物理层规定通讯系统中具有机械、电子功能部分的特性,确保原始数据在物理媒体的传输。协议层主要规定通讯逻辑,统一收发双方的数据打包、解包标准。

2023-10-31 16:02:39 46 1

原创 STM32串口通信入门

通过本次实验,我了解了串口协议和RS-232标准,以及RS232电平与TTL电平的区别;对于"USB/TTL转232"模块(以CH340芯片模块为例)的工作原理也初步了解;并且成功通过STM32CubeMX建立了简易的串口通信工程,在主函数中修改相关函数,实现了STM32芯片与windows之间的串口通信。虽然过程中也遇见诸多问题,诸如烧录时无法成功,串口调试的连接等等,但成功解决问题后,对相关知识的掌握也更加牢固。

2023-10-25 20:45:19 99 1

原创 STM32CubeMX使用HAL库点亮LED流水灯与外部中断控制

STM32CubeMX 是 ST 意法半导体近几年来大力推荐的STM32 芯片图形化配置工具,目的就是为了方便开发者, 允许用户使用图形化向导生成C 初始化代码,可以大大减轻开发工作,时间和费用,提高开发效率。STM32CubeMX几乎覆盖了STM32 全系列芯片。在CubeMX上,通过傻瓜化的操作便能实现相关配置,最终能够生成C语言代码,支持多种工具链,比如MDK、IAR For ARM、TrueStudio等 省去了我们配置各种外设的时间,大大的节省了时间。

2023-10-23 20:54:22 224 1

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

与寄存器方式实现流水灯相比,标准库函数方式更加便捷。寄存器方式需要不断地寻址,步骤繁琐,相比之下,标准库函数只需要把标准库加入到工程之中,并加入每一个头文件路径即可。而通过本次实验,我也掌握了如何使用标准库函数来控制LED灯的亮灭。

2023-10-15 13:46:05 42 1

原创 程序常量变量的地址分配

1.定义说明1.定义说明全局定义变量 global_temp静态变量 global_temp_static常量 global_const静态常量 global_const_static局部定义变量 local_temp静态变量 local_temp_static常量 local_const静态常量 local_const_static此次实验中重温了全局变量、局部变量、堆与栈等的概念,并且也在Ubuntu系统和STM32中分别进行了验证。可以发现二者地址的分配不同。

2023-10-06 00:42:17 58 1

原创 gcc命令解析及应用

我们通常把一些公用函数制作成函数库,供其它程序使用。函数库分为静态库和动态库两种。静态库在程序编译时会被连接到目标代码中,程序运行时将不再需要该静态库。动态库在程序编译时并不会被连接到目标代码中,而是在程序运行是才被载入,因此在程序运行时还需要动态库存在。本文主要通过举例来说明在Linux 中如何创建静态库和动态库,以及使用它们。通过本次实验,在ubuntu中进行各种命令操作,了解了gcc命令并非一个人在战斗,它同样需要其他工具进行辅助。

2023-10-05 23:36:01 168

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

F1XX片上资源/外设:最小系统电路:系统结构:点击project,选择new μvision project,创建工程,点击保存,点击保存。芯片选择STM32F103C8;确定相关设置,点击OK;编写程序,进行编译生成hex文件;创建新工程,搭建电路;导入hex文件,进行仿真调试:宏定义用来存放STM寄存器映射:程序代码如下:编译,生成hex文件:成功到达预期效果。

2023-10-04 20:20:09 56 1

原创 STM32/51单片机

在此次实验中,由于是第一次进行STM32相关的程序编译,因此遇到了许多困难。软件方面,添加文件等等较为繁琐,编译调试时也会出现其他问题,无法调试等等。总之,我也学到了许多知识,包括项目创建,下载调试代码,以及芯片中各个管脚等等的连接。

2023-09-24 17:04:01 105 1

原创 嵌入式Linux开发基础

编写一个主程序文件 main1.c 和一个子程序文件 sub1.c, 要求:子程序sub1.c 包含一个算术运算函数 float x2x(int a,int b),此函数功能为对两个输入整型参数做某个运算,将结果做浮点数返回;主程序main1.c,定义并赋值两整型变量,然后调用函数 x2x,将x2x的返回结果printf出来。在以前曾对虚拟机,ubuntu等等有懵懂的了解,对于其中的许多知识都不曾了解,因此,在本次实验初期遇到诸多困难,包括安装,以及许多命令不会使用。

2023-09-12 21:49:25 70 1

空空如也

空空如也

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

TA关注的人

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