- 博客(21)
- 收藏
- 关注
原创 【STM32】中断编程入门
在STM32微控制器中,中断是一种重要的事件驱动机制,用于响应外部事件或内部状态变化,而无需持续轮询。1. 中断控制器STM32微控制器内置了灵活且功能强大的中断控制器(Nested Vectored Interrupt Controller,NVIC),它负责管理和分配中断请求(IRQ)的优先级、处理程序的执行顺序以及中断处理过程的调度。2. 中断向量表STM32的中断处理是通过中断向量表(Interrupt Vector Table,IVT)来实现的。
2024-07-01 23:04:02 759
原创 【单片机与嵌入式】stm32串口通信入门
串口通信是一种通过串行传输方式在电子设备之间进行数据交换的通信方式。它通常涉及两条线(一条用于发送数据,一条用于接收数据),适用于各种设备,从微控制器到计算机等。数据位按照顺序一个接一个地传输,与并行传输相比,节省了引脚和线缆。串口通信可以是异步的(通过单独的时钟信号进行数据同步)或同步的(通过时钟信号直接同步数据传输)。串口通信的速率通常以波特率(bps,每秒传输的位数)来衡量,典型的速率有9600、19200、38400、115200等。
2024-07-01 22:46:53 1217
原创 【STM32】温湿度采集与OLED显示
I2C总线协议是一种串行通信协议,由Philips公司(现在的NXP半导体)于1982年开发,用于微控制器与外部设备(如传感器、存储器等)之间的通信,没有严格的波特率要求,实现简单,可扩展性强。2.设备角色在I2C通信中,设备可以扮演两种角色:(1)主设备(Master):控制总线上的所有通信,发起数据传输的设备。(2)从设备(Slave):响应主设备的指令,接收或发送数据的设备。
2024-07-01 21:57:18 1234
原创 【stm32单片机应用】基于I2C协议的OLED显示(利用U82G库)
U8g2是一个用于单色和彩色显示的嵌入式图形库,特别适用于单色OLED、LCD显示屏的驱动。它是对早期U8g库的扩展和改进,提供了更多功能和更广泛的硬件支持。U8g2作为一款强大而灵活的嵌入式图形库,提供了丰富的功能和广泛的硬件支持,使得开发者可以方便地实现各种显示需求。它的设计目标是尽可能简化开发过程,同时提供高效和可靠的显示解决方案,非常适合于需要显示图形和文字的嵌入式应用程序开发。
2024-06-16 22:28:51 1719
原创 【单片机与嵌入式】uc/OS-III多任务程序
嵌入式实时操作系统(RTOS)是设计用于嵌入式系统的一种特殊操作系统。它们专注于处理实时任务,即需要在严格的时间限制内完成的任务。RTOS在嵌入式系统中扮演重要角色,通过提供高效的任务调度和实时响应能力,使得嵌入式设备可以在各种应用中可靠运行。选择适合的RTOS取决于具体的应用需求,包括实时性要求、系统资源限制以及开发团队的经验等因素。以下是关于RTOS的一些基本信息:特点和设计考虑因素:1.实时性:RTOS的核心特征是能够处理实时任务。
2024-06-14 23:13:00 1074
原创 【STM32定时器原理】定位器与PWM的LED控制
TIM2、TIM3、TIM4、TIM5为STM32的4个独立的16位通用定时器,具有定时、测量输入信号的脉冲长度(输入捕获)、输出所需波形(输出比较、产生PWM、单脉冲输出等)等功能。这是通用定时器内部结构框图:PWM(Pulse Width Modulation,脉冲宽度调制)是一种利用脉冲宽度即占空比实现对模拟信号进行控制的技术,即是对模拟信号电平进行数字表示的方法。
2024-06-01 19:52:19 818
原创 【STM32CubeMX】HAL库LED点灯
中断配置可选用上升沿和下降沿,这里我们默认选择上升沿,即:按下开关灯亮,松开开关灯灭。(注: 在点击Install之后,会弹出一个注册界面,未注册则需要先进行注册)(注:在点击下载之后,会弹出一个Oracle账户登录,没有注册需要先注册)点击Java SE,选择8u202 and earlier这个版本的。中输入代码,然后点击编译生成Hex文件,进行烧录。点击NVIC配置中断,勾选如图两个选项。下载完成后,找到文件,双击安装。勾选同意选项 ,点击Next。自行选择下载目录,点击Next。
2024-05-26 18:47:29 1029
原创 【STM32】stm32F103的LED亮灭之版本1(寄存器地址版)
STM32F103C8T6是一款由STMicroelectronics开发的基于ARM Cortex-M3内核的32位微控制器。a.STM32F103C8T6采用了ARM Cortex-M3内核,这是一种高性能、低功耗的32位处理器。Cortex-M3内核具有较高的运算性能和低功耗特性,适合于嵌入式应用。b.此微控制器还集成了丰富的外设,包括通用串行总线(USART)、SPI(串行外设接口)、I2C(I²C总线)、定时器、模拟至数字转换器(ADC)等,以满足各种应用的需求。
2024-05-06 23:05:06 966
原创 【51单片机】单总线温度采集
a.DS18B20基于热敏电阻原理工作,它的内部包含一个温度传感器和一个数字转换器,能够将温度转换为数字信号输出。b.DS18B20通过单总线接口与微控制器通信,可以在单一总线上同时连接多个传感器,并且只需要一个引脚进行数据传输。
2024-04-25 22:41:23 2508 1
原创 【51单片机】单片机定时器与串口通信
数码管是一种能够显示数字的电子元件,常见于数字时钟、计时器、温度计、电子秤等设备中。它通常由多个发光二极管(LED)或荧光显示管(VFD)组成,能够显示从0到9的数字。a.数码管由多个数字或字符的显示单元组成,每个显示单元可以显示一个数字或字符。b.每个显示单元内部包含多个LED或者VFD,排列成特定的数字或字符形状,以便显示。a.数码管通过控制各个LED或VFD的点亮状态来显示数字。b.当所需数字被显示时,控制电路会向相应的LED或VFD施加电压,使其发光,从而形成数字的形状。
2024-04-22 22:23:01 835
原创 【单片机与嵌入式】中断与定时计数
中断技术主要用于实时监测与控制,要求单片机能及时地响应中断请求源提出的服务请求,并快速响应与及时处理。当中断请求源发出中断请求时,如中断请求被允许,单片机暂时中止当前正在执行的主程序,转到中断服务处理程序处理中断服务请求,处理完中断服务请求后,再回到原来被中止的程序之处(断点),继续执行被中断的主程序。编辑图1 单片机对外设中断服务请求整个中断响应和处理过程。
2024-04-07 23:47:06 993 1
原创 【51单片机】汇编程序与周期性任务设计
DJNZ的指令周期为两个机器周期,在12MHz的晶振单片机中,机器周期为1us,即执行DJNZ指令需要2us,每执行一次循环计数器递减,即R0的值减1,不断重复直至R7减到0,指令结束。在51单片机的延时汇编函数中,涉及到指令周期、机器周期和时钟周期,它们之间存在一定的关系。普中开发板将我们的虚拟仿真实验投影到实物上,在正式操作之前可以先去了解和学习一下其原理和操作:--------------------------------------------------------------------
2024-04-02 22:54:57 1354 1
原创 【单片机与嵌入式】基于SDCC和Edsim51的代码仿真
这三次实验主要运用了SDCC编译软件、edsim51仿真软件以及我们熟知的Proteus仿真软件,特别是最后一个实验,充分的运用了三者之间的关系,以点亮led灯为媒介为我们展示了这三个软件之间的联系以及运用。
2024-03-17 17:51:28 1065 1
原创 【Proteus8软件仿真】使用AT89C51单片机的外部引脚,点亮1个LED灯(采用汇编指令完成);采用多个LED,设计一个LED流水灯电路,分别用51汇编语言和C语言编程,实现流水灯正常工作
(在操作步骤上,流水灯与单个灯的步骤一致,因此省略详细的操作步骤,只保留了电路图、代码和仿真结果)1、无论是使用汇编语言点亮单个LED灯还是用汇编+C语言点亮流水灯,两次仿真的结果都与预期所想一致2、通过本次使用keil和Proteus软件对LED灯进行点亮,我基本掌握了两个软件的基本操作用法。知道了怎么用Proteus去创建电路原理图,明白如何用keil去生成 .hex 文件,然后添加到电路图中。两个软件都十分方便,在以后的使用中也能更加熟练的去掌握他们的操作方法。
2024-03-10 20:19:31 3635 1
原创 触发器电路仿真与硬件实现
RS触发器(Reset-Set触发器)是一种基本的数字电路元件,常用于存储和传递二进制信息。它由两个互补的交叉耦合反馈回路组成,通常使用两个非门(NOR门)实现。RS触发器有两个输入端,一个是复位(Reset)端,另一个是设置(Set)端。其输出表示触发器的状态,即"R"(复位)或"S"(设置)。S=0, R=0: 保持状态,不发生变化。S=0, R=1: 复位状态,输出为逻辑低。S=1, R=0: 设置状态,输出为逻辑高。S=1, R=1: 不允许状态,输出未定义。
2023-11-26 22:46:27 863 1
原创 编码器-解码器电路设计及Multisim软件仿真
(一)编码器原理编码器的基本原理是将输入的信息转换成特定的编码形式,以便在传输或存储中更有效地表示。编码过程通常包括压缩和转换步骤。(二)编码器功能编码器通常会使用不同的算法来压缩输入数据,以减小数据体积。这有助于更高效地利用存储空间或网络带宽。将输入数据转换成适合传输或存储的格式,以提高传输速率和降低存储成本。一些编码器可以添加冗余信息,以帮助检测和纠正在传输过程中可能发生的错误。在某些情况下,编码器还可以对数据进行加密,以确保安全传输。(三)编码器的分类-------普通编码器和优先编码器。
2023-11-17 21:57:53 1132
原创 实验:组合逻辑电路的分析与设计
第二题小结:第二题在进行一次操作的时候,我们选择只用四个输入端口进行A、B、C、D的排列组合,结果在验证的时候发现此方法行不通,因为端口之间会出现重合排斥,无法读出真值表上的数值(消隐),于是我们重新进行连线,选用12个输入端口分别对应ABC、BCD、ACD、ABD,这样就不会出现重合的情况了,虽然看起来比较复杂没有第一个实验的简洁,但是按照真值表可以很清晰的演算出结果。用“ 与非”门设计一个表决电路:当四个输入端A、B、C、D中有三个或四个为“1” 时,输出端才为“ 1”。掌握组合逻辑电路的分析与设计。
2023-11-02 17:09:47 122
原创 实验:基本逻辑门电路硬件验证与仿真分析,logsim构建模拟电路得到理论结果,并进行控制板接线验证
与门(AND gate)(1)与门有两个或更多输入端口和一个输出端口。(2)输出为1(高电平)仅当所有输入端口都为1时,否则输出为0(低电平)。(3)逻辑符号通常是 "∧",代表逻辑乘法。(1)或门也有两个或更多输入端口和一个输出端口。(2)输出为1(高电平)只要任何一个或多个输入端口为1,否则输出为0(低电平)。(3)逻辑符号通常是 "∨",代表逻辑加法。非门(NOT gate)
2023-10-25 23:05:51 474
原创 logsim与二进制数原码-反码和补码的数字电路
logsim,逻辑电路模拟器(Logical Circuit Simulator),是一种计算机程序或工具,用于模拟数字电路中的逻辑运算和元件行为。这类模拟器允许工程师、电子学家和学生在计算机上设计、分析和测试数字电路,而无需实际构建物理电路。半加器(Half Adder)是数字电路中用于执行两个二进制位相加操作的基本逻辑电路。它接受两个输入位(A和B),执行二进制相加,并产生两个输出:和(Sum)和进位(Carry)。A:第一个二进制位,可以是0或1。B:第二个二进制位,同样可以是0或1。
2023-10-22 21:51:14 503 1
原创 常见的Ubuntu命令学习及其作用介绍;Ubuntu系统c语言编写helloworld代码;Devc++基于“辗转相除法”的10进制数转2进制的程序。
vi 是一款强大的文本编辑器,它具有不同的模式,允许用户在文本编辑过程中执行各种操作。vi 主要有三种基本模式:正常模式(Normal Mode)、插入模式(Insert Mode)和命令模式(Command Mode)。以下是对这些模式的详细介绍:1.正常模式(Normal Mode):正常模式是 的默认模式,也是用户进入编辑器后的初始模式。vi在正常模式下,你可以执行诸如导航、复制、粘贴、删除和查找等操作,而不直接输入文本。h、j、k、l:分别向左、下、上、右移动光标。x:删除光标下的字符。dd。
2023-10-22 20:44:16 388
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人