51/STM32单片机
文章平均质量分 79
栏目主要记录自己学习单片机的过程中一些问题,以及如何解决问题的思路。
woainizhongguo.
稳浮萍,清躁心,勿想一步千里,列位看官,且将新火试新茶,诗酒趁年华
展开
-
通用型蜂鸣器驱动函数
通过传入重复次数(原创 2024-11-07 10:58:08 · 294 阅读 · 0 评论 -
51单片机 定时器详解
在 51 单片机中,定时器/计数器可以被配置为计时或计数定时模式:单片机内部的振荡器(通常由外部晶振提供时钟信号)驱动定时器按固定频率计数。计数模式:定时器由外部输入信号触发,每检测到一个上升或下降沿时,计数器的值会增加1。定时器 0和定时器 1,它们各自都有独立的寄存器和控制方式。在部分改进版 51 单片机中(如 8052),还增加了定时器 2,功能更为丰富。51 单片机的定时器功能强大且灵活,支持多种模式和应用场景。合理配置定时器,不仅可以实现精准的定时操作,还可以用于事件计数和外部触发事件。原创 2024-11-06 09:13:48 · 653 阅读 · 0 评论 -
nop() 指令详解
nop()nop()虽然是一条“无操作”指令,但在 51 单片机中有着独特的应用价值。它可以用于精确延时、时序调整、指令对齐、硬件兼容等场景,辅助开发人员实现更加可靠、稳定的嵌入式系统。合理运用nop指令可以使程序运行更符合预期,但在大多数情况下,应结合其他更为高效的方式(如定时器、外设中断)来实现精确的时间控制。原创 2024-11-06 09:06:34 · 969 阅读 · 0 评论 -
C语言入坑 ---- 不要轻易忽略volatile的用处
C语言入坑 ---- 不要轻易忽略volatile的用处原创 2024-07-21 13:26:36 · 274 阅读 · 0 评论 -
51 | data | idata | xdata | code
51单片机的运行内存分前128字节和后128字节。前面128个字节好像cpu里的寄存器,读写非常快。后面的128字节只能用指针访问。单片机可以外扩运行内存条,外扩的这部分内存叫xdata。转载 2024-09-25 09:23:32 · 133 阅读 · 0 评论 -
bin | hex
纯粹的程序数据,不包含:长度、地址、数据等信息可以直接把数据赋值到单片机程序地址(STM32 一般时0x8000 0000)原创 2024-09-15 17:56:44 · 266 阅读 · 0 评论 -
单片机中断 | 中断向量表
是的,您的理解是正确的。在51单片机中,中断向量表的作用是提供一个跳转地址,当中断发生时,单片机会通过这些地址跳转到相应的中断服务函数(ISR)去执行。这些跳转地址通常存储的是中断服务函数的入口地址,而不是中断服务函数的代码本身。因此,中断向量表和中断服务函数的代码是分开存储的,中断向量表只是存储了跳转到ISR的地址,而ISR的代码则存放在Flash的其他位置。在汇编语言中,中断服务函数的代码会直接写在中断向量地址指向的地方,或者通过跳转指令(如LJMP)指向实际的中断服务代码位置。原创 2024-09-13 00:12:36 · 1415 阅读 · 0 评论 -
单片机组成原理
单片机应该是你开发的工具,而不应该成为阻碍你前进 - 开发效率的难关。就是说你可以快速上手不同的单片机。原创 2024-09-09 23:03:40 · 473 阅读 · 0 评论 -
编译器关键字解析
在一些特定的编译器中,特别是在嵌入式系统的开发中,__root 可以用来指示编译器将变量存放在特定的存储区域中,例如 Flash 存储器中,而不是默认的存储区域。在你提供的代码中,__IO 可能被用来告诉编译器 UniqueID[i] 是一个与硬件相关的状态或配置信息,它的值是从地址 0x4925+i 处的外部设备或寄存器中读取得到的。这个关键字通常在嵌入式系统的开发中使用。__root 是一个编译器特定的关键字,通常用于告诉编译器将变量放置在代码的根部(Root),以确保该变量的全局可见性和可访问性。原创 2024-04-25 23:47:49 · 320 阅读 · 0 评论 -
单片机开发常见算法
11.图形处理算法在需要显示或处理图像的单片机应用中,可能会用到点阵显示、图形变换、颜色处理等算法,在一些点阵屏,TFT屏的应用比较多,这个一般根据实际的图形或者屏尺寸制定算法。如遗传算法、模拟退火算法等,用于寻找问题的最优解或近似最优解,像遗传算法一般用来做机器人的路径规划,以找到最优的移动路径,避开障碍物,做过智障小车的小伙伴,应该比较熟悉了。涉及字符串的比较、复制、连接、查找、替换等操作,这些算法在单片机上面也会用到,比如屏显示,json、物联网模块的指令数据处理。原创 2024-04-22 18:05:51 · 945 阅读 · 0 评论 -
开源项目-CSDN专栏
单片机毕业设计物联网嵌入式原创 2024-04-04 21:11:08 · 250 阅读 · 0 评论 -
单片机工作原理篇
单片机运行工作原理介绍原创 2024-01-17 17:41:47 · 812 阅读 · 0 评论 -
ESP8266 接入阿里云物联网云平台
esp8266 如何链接到阿里云平台原创 2024-01-14 22:03:35 · 3378 阅读 · 1 评论 -
STM32系统时钟树
stm32 单片机的时钟比较复杂,不过通过主线一步步拆解,就可以学会它。系统的时钟源,第一个源头无非就是的(1)MCU内部高速时钟源HSI(2)外部高速时钟源HSI(3)PLLCLK ( 由HSI\HSI 通过PLL倍频得来 ) 【目的:是用于对HSI / HSE 进行倍频】上述3个时钟源选择其一作为 ( SYSCLK 系统时钟 )紧接着就是通过AHB Prescaler 对SYSCLK系统时钟进行预分频( /2 ~ /512 ) 操作,得到 HCLK AHB1( 高速时钟 )原创 2024-01-18 14:27:18 · 1615 阅读 · 0 评论 -
STM32F407 IIC通信协议驱动代码
IIc总线是单片机与外部模块进行通讯常用的协议,由两根线组成,分别是SCL,SDA组成,主机驱动SCL时钟信号的发生,在SCL的时钟脉冲下,通过SDA的时序,即可与外部模块通讯。IIC(Inter-Integrated Circuit)总线是一种由NXP(原PHILIPS)公司开发的两线式串行总线,用于连接微控制器及其外围设备。多用于主控制器和从器件间的主从通信,在小数据量场合使用,传输距离短,任意时刻只能有一个主机等特性。IIC是为了低速设备通信而发明、V(IIC) < V ( spi )原创 2024-02-22 17:09:13 · 545 阅读 · 0 评论 -
STM32与W25Q64通讯(SPI)
SPI(Serial Peripheral Interface)是由Motorola公司开发的一种通用数据总线四根通信线:SCK(Serial Clock)、MOSI(Master Output Slave Input)、MISO(Master同步,全双工支持总线挂载多设备(一主多从)W25Qxx系列是一种低成本、小型化、使用简单的非易失性存储器,常应用于数据存储、字库存储、固件程序存储等场景存储介质:Nor Flash(闪存)原创 2024-02-23 22:56:11 · 1254 阅读 · 1 评论 -
stm32f407与dht11通信,读取温湿度数据
stm32单片机要通过dht11模块,获取温湿度数据,改模块支持单总线通信,使用一根数据线,按照模块厂商规定通信时序,即可获取是温湿度数据,我们打算2s 采集一次温湿度数据,然后通过串口输出到上位机。原创 2024-02-21 16:35:40 · 1376 阅读 · 0 评论 -
UCOS-II 在单片机中的应用
假设我们正在开发一个智能家居控制系统,该系统需要同时处理多个任务,如温度监控、照明控制和安全检测。在这个系统中,μC/OS-II的多任务处理能力可以帮助我们高效地管理这些不同的功能。原创 2024-01-20 16:49:43 · 1395 阅读 · 0 评论