自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

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

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档。

2023-11-27 21:09:53 47 1

原创 数字温度计

RTC (Real Time Clock):实时时钟RTC是个独立的定时器。RTC模块拥有一个连续计数的计数器,在相应的软件配置下,可以提供时钟日历的功能。修改计数器的值可以重新设置当前时间和日期 RTC还包含用于管理低功耗模式的自动唤醒单元。在断电情况下 RTC仍可以独立运行 只要芯片的备用电源一直供电,RTC上的时间会一直走。RTC实质是一个掉电后还继续运行的定时器,从定时器的角度来看,相对于通用定时器TIM外设,它的功能十分简单,只有计时功能(也可以触发中断)。

2023-11-25 18:55:46 60

原创 汉字点阵与OLED屏显

1、什么是点阵?我们用之前的方法一个IO口只能控制一个led,如果需要用更少的IO口控制更多的led怎么办?于是,就有了点阵。例如:8X8点阵共由64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一行置1电平,某一列置0电平,则相应的二极管就亮;如要将第一个点点亮,则1脚接高电平a脚接低电平,则第一个点就亮了。实物图借助取模软件,即可将我们所需要的文字或字母,以点阵的形式呈现出来。我们知道英文字母数量比较少,我们只要用一个字节(8位)就足以表达。但是汉字非常多。

2023-11-19 13:14:35 67

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

I2C Bus(IIC,inter-intergrated Circuit Bus),是一种在电子通信控制领域常用的通信协议。由时钟线(SCL)和数据线(SDA)两根线构成通信线路,利用上拉电阻将他们拉成高电平,表示总线空闲,其典型的电压准位为+3.3V或+5V,具有电路简单,连接线少,控制简单,通信速率高等优点。

2023-11-15 10:35:01 41

原创 定时器&PWM应用编程

如图,位置1选中定时器2;位置2选择时钟源为“Internal Clock”,通道2选择“PWM Generation CH2”设置项目名称、路径等,勾选下图的选项,然后点击创建项目。建立工程,选择stm32f103c8t6芯片。使用Keil虚拟示波器,观察 PWM输出波形。修改一下main.c文件。

2023-11-04 19:17:36 28 1

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

1)STM32系统给上位机(win10)连续发送“hello windows!win10采用“串口助手”工具接收。可以使用Keil的软件仿真逻辑分析仪功能观察串口输出波形,并分析时序状态正确与否,计算波特率实际为多少。打开stm32CubeMX,创建新工程,选择STM32F103C8T6芯片。具体参考:http://t.csdnimg.cn/OfjK0。main函数中的while循环里面添加传输代码。设置USART1,选择异步通信,参数选择默认。修改代码,修改main函数。设置完成后保存并打开工程。

2023-11-02 14:43:34 27 1

原创 STM32串口通信入门

串口协议是计算机与外部设备通信时所遵循的一种通信协议,其实现需要硬件支持。RS-232是一种串行通信标准,定义了连接计算机和外围设备之间的物理和电气特性,主要用于传输数据和控制信号。RS-232标准规定了数据信号和控制信号的传输模式、数据格式、电气参数等。RS-232标准定义了一组信号电平,包括正、负和地三种电平。其中,正电平信号表示逻辑0,负电平信号表示逻辑1。RS-232标准电平范围为±3至±15V,通常使用的电平为±12V。

2023-10-26 19:09:23 127 1

原创 基于HAL库的LED流水灯

中断是STM32微控制器中一种常用的事件驱动机制,用于处理紧急和实时的外部或内部事件。它允许微控制器在执行主程序的同时响应和处理中断事件,提高了系统的实时性和效率。

2023-10-24 16:17:21 33 1

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

下载地址:链接:: https://www.st.com/en/embedded-software/stm32-standard-peripheral-libraries.html。

2023-10-16 10:49:28 40 1

原创 在Ubuntu系统和STM32(Keil)中分别进行编程显示分配地址并进行比较

堆和栈空间分配栈:向低地址扩展堆:向高地址扩展显然如果依次定义变量,先定义的栈变量的内存地址比后定义的栈变量的内存地址要大。先定义的堆变量的内存地址比后定义的堆变量的内存地址要小堆和栈变量栈:临时变量,退出该作用域就会自动释放。堆:malloc变量,通过free函数释放。堆和栈的区别:stack的空间由操作系统自动分配/释放,heap上的空间手动分配/释放。stack的空间有限,heap是很大的自由存储区。

2023-10-06 18:15:52 306 1

原创 理解和学习Linux GCC常用命令和GCC编译器背后的故事

(1)gcc编译工具1、GCC是编译工具。本文所要介绍的将 C/C++语言编写的程序 转换成为处理器能够执行的二进制代码的过程即由编译器完成。2、Binutils: 一组二进制程序处理工具,包括:addr2line、ar、objcopy、objdump、as、ld、 ldd、readelf、 size 等。这 一组工具是开发和调试不可缺少的工具。3、C运行库C 语言标准主要由两部分组成:一部分描述C的语法,另一部分描述C标准库。

2023-10-06 17:45:53 36 1

原创 用gcc生成静态库和动态库和静态库.a与.so库文件的生成与使用

1 文件准备创建文件夹test1,进入并写入以下几个程序A1.cA2.cA.htest.c2、静态库的生成和编译生成静态库文件 ar crv libafile.a A1.o A2.o使用静态库文件libafile.a 编译生成程序gcc -o test test.c libafile.a3、动态库的生成和编译生成对象文件(添加命令"-fpic",否则在生成.so文件时会出错)gcc -c -fpic A1.c A2.c。

2023-10-06 17:17:20 84 1

原创 STM32F103C8T6的流水灯实验

1.新建工程,添加元器件2.元件连线:3.导入keil5编译生成的.hex文件代码在下方。

2023-10-06 14:07:16 69 1

原创 MDK编译stm32简单程序(LED闪烁)

因为没有接入硬件设施,所以只能先进行程序的编译和仿真测试,而没有办法下载到硬件上运行,这个LED灯闪烁的代码不用深入了解,只是进行一个简单的程序编译调试,这篇文章的重点是学会如何安装MDK软件、建立工程、编写代码、编译程序、仿真调试,希望能帮到你。

2023-09-24 20:02:13 49 1

原创 Proteus使用教程和LED流水灯的仿真

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档。

2023-09-24 17:39:18 533 1

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

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档。

2023-09-17 17:37:56 79 2

空空如也

空空如也

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

TA关注的人

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