自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 STM32学习——第六章 第二节 代码 定时器定时中断&定时外部中断2 对射式红外传感器

2·对射式红外传感器。

2024-02-28 18:06:23 329

原创 STM32学习——第六章 第二节 代码 定时器定时中断&定时外部中断1

(但是N32G003没有OLED的驱动例程,暂且不连接OLED,使用串口,发送 / 接收数据来验证)触类旁通,用N32G003接线,

2024-01-26 17:58:39 457

转载 usb和串⼝的区别

usb和串⼝的区别。

2024-01-15 18:08:45 51

原创 rs232和ttl区别

RS232和TTL都是协议,但它们之间存在一些区别。

2024-01-15 10:55:19 551

原创 N32G003学习——第六章 第一节 TIM定时中断

学习来源:[6-1] TIM定时中断_哔哩哔哩_bilibili介绍:STM32功能最强大,结构最复杂的外设——定时器本节主要内容:定时器的基本定时功能定一个时间,让定时器每隔一个时间产生一个中断,实现每隔一段时间执行一段程序官方说法:对输入的时钟进行计数,并在计数值达到设定值时触发中断简称:定时触发中断譬如:stm32主频一般72HZ,我们对此计数72次,每次1MHz,实际每次就是1us的时间若对此计数72000,每次1KMHz,实际每次就是1ms的

2023-12-29 12:00:31 1169 1

原创 C语言的详解与运用

这里0x12345678可以分为12、34、34、56、78一共4个字节。这种把小端(78)放在内存地址的低位(0x4000),叫小端小端分配。使用指针:地址间接访问,意思就是把变量的地址拿出来,通过指针,实现:使用指针,可操作数据的地址,实现数据的间接访问。优点:重要知识点,使用灵活,功能强大,C语言的灵魂。平常:定义一个变量,用变量的名字就可以用变量。讲解+运用,目的是听懂为前提,还能拿去用。联系:指针和底层硬件(内存)联系紧密。线性空间,每个区域,以一个字节为单位。如下位置:(简称:跨字节分配)

2023-12-06 15:30:43 357 1

原创 N32G003学习——第九章 第四节 串口数据包

2·使用固定长度的数据包,经过几个数据包,包头包尾都对齐了,剩下的数据包 ,应该就不会出现问题了。意思:要发送的数据,可能和包头、包尾是一样的,可能引起接收方误判。譬如:陀螺仪三维坐标XYZ,如果数据没有格式,分不清东西南北。3·增加包头包尾的数量,并且尽量呈现出载荷数据出现不了的状态。方法:把数据进行分割,成为一种格式,方便接收方进行识别。1·限制载荷数据的范围,范围不包括包头、包尾即可。常见问题:设置的包头、包尾,和数据载荷重复。第二种:可变包长,含包头包尾。第一种:固定包长,含包头包尾。

2023-11-09 08:38:06 88 1

原创 N32G003学习——第九章 第三节2 串口 接收

复制代码(9·1 串口发送),在此基础上继续学习。

2023-11-02 19:10:12 87 1

原创 N32G003学习——第九章 第三节1 串口 发送

经过第九章前2节的学习,基础打下之后,开始敲代码。

2023-09-08 18:35:56 210 1

原创 N32G003学习——第九章 第二节 USART串口外设

通用同步/异步收发器USART是STM32内部集成的硬件外设,可根据数据寄存器的一个字节数据自动生成数据帧时序,TX引脚发送出去,也可自动接收RX引脚的数据帧时序,拼接为一个字节,存放在数据寄存器自带波特率发生器,最高达4.5Mbits/s可配置数据位长度(8/9)停止位长度(0.5 / 1 / 1.5 / 2)可选校验位(无校验 / 奇校验 / 偶校验)支持同步模式、硬件流控制、DMA、智能卡、IrDA、LIN。

2023-09-07 18:28:58 319 1

原创 N32G003学习——第九章 第一节 USART串口协议

将一个设备的数据,传到另外一个设备上,拓展硬件系统。

2023-09-07 02:47:20 184 1

原创 N32G003学习—— 第四章 第二节 OLED显示屏

感兴趣的可以看看驱动函数里面,I2C的时序,或者是I2C的引脚初始化成开漏输出,等等。里面的程序,默认I2C的引脚配置成PB8和PB9,(还是用学习stm的视频,用在N32G003上)使用4脚针OLED,I2C通讯。在如下位置找出要调用的驱动函数。用控制LED的文件编写。使用OLED驱动函数。

2023-08-31 18:22:58 109

原创 N32G003学习—— 第四章 第一节 OLED调试工具

OLED (Organic Light Emitting Diode),手机屏幕有时候hui'yo机发光二极管(oleds)OLED显示屏:具有新型显示屏的性能,具有相应的速度快、功耗低、视角宽、轻薄柔韧等特点。96英寸OLED模块:小巧精致,占用接口少,使用方便,在电子显示模块设计中非常常见。电源:3 ~ 5.5 V,通信协议:I2C/SPI,分辨率:128 * 64如下,左边是I2C通讯协议的屏幕接法,右边是SPI通讯协议的7脚接法(3)OLED驱动函数如下是显示屏的对应位置。

2023-08-30 03:05:50 80 1

原创 STM32学习—— 第五章 第二节 EXTI外部中断 对射性红外传感器计数&旋转编码器

1·对射性红外传感器 接线

2023-08-30 01:13:30 59 1

原创 N32G003学习—— 第五章 第一节 EXTI外部中断

在主程序运行过程中,出现了特定的中断触发条件(中断源)使得CPU暂停当前正在运行的程序,转而去处理中断程序处理完成后又返回原来被暂停的位置继续运行(中断就是停下手头的东西,做另外的事情,完成事情后,回来继续做手头的东西)

2023-08-24 19:45:21 166 1

原创 N32G003学习 第三章 点触按键控制LED

同样在Hardware文件夹,创建KEY.c和KEY.h文件,同样把按键的代码进行模块化。之前提过uint8_t就是 unsigned char ,8位的声明。把驱动的代码,封装起来,单独的放在.C和.H文件里。作用:对模块外部声明,说明这个函数是可以被外部调用。新建Hardware文件夹,专门存放硬件驱动代码。位置(2)是#endif的下一行,一定要空行结尾。回到头文件LED.h声明这个函数。记得要定义,避免重复包含头文件。如果没有按键按下,就返回0。,然后写按键值,建好框架。位置(1)是声明函数。

2023-08-22 21:12:55 99 1

原创 STM32学习_第三章 GPIO 输入

有些数字很长,命名一个字符串或者一个数字,便于理解例:#define ABC 1234567 //不用加分号;int a =ABC;把1234567用ABC代替。

2023-08-22 12:53:37 30 1

原创 STC89C52_第二章 点亮LED 闪烁

要申明P2,直接引用自带的头文件<REGX52.H>,注意右键空白处添加即可。这个在头文件<INTRINS.H>,所以要把这头文件包裹在内。右键打开头文件,看到P2定义的地址,说明已经申明P2。C语言不支持二进制,不能写P2=0000 0000。由于这里延迟函数,用到_nop_();需要延时,这里STC-ISP有延时程序。注意:操作时候要接一个电阻,限流。重复开板子电源键,救恩那个开始烧录。TTL电平控制灯:5V+,0V-复制延迟函数到到主程序中、

2023-08-18 23:39:29 126 1

原创 N32G003学习——第一章:LED

1.RCC AHB外设时钟控制 (使能和失能AHB)3·使用输入和输出函数,控制GPIO。如下:(细分了开、关,所以不止3个,实际只有3种)1·用RCC 打开GPIO时钟。2.RCC APB2外设时钟控制。3.RCC APB1外设时钟控制。2·使用GPIO初始化函数。(2)常用函数:3个。

2023-08-18 19:48:06 280 1

原创 STC89C52_第一章

4·RAM:512字节(可丢失)(相当于工厂的车间,随时撤走)(相当于手机说的内存4g8g)5·ROM:8K(Flash)(只读,不易丢失)(相当于工厂的仓库,一直都在)(相当于硬盘)52:8k程序空间以及512字节RAM(程序空间ROM 以及 RAM空间 的大小)1·电源 : VCC(+) GND(-) (图右上角)3·51单片机系列,inter内核,STC公司(国内)6·工作频率:12MHz(单片机速度)(晶振提供)2·晶振 :单片机心脏,让程序往下走(图左下角)

2023-08-18 01:08:11 108 1

原创 报文格式与串口通讯

关于串口格式与报文格式 - 百度文库

2023-06-07 11:00:25 194 1

转载 单片机之外部时钟与内部时钟

51单片机不需要配置时钟,是因为一个时钟开了之后所有的功能都可以用了,而这个时钟是默认开启的,比如有一个水库,水库有很多个闸,这些闸默认是开启的,因此每个闸都会出水,任意一个闸可以直接用,但存在一个问题,没用到的闸也在出水,即也在耗能。51单片机中一个时钟把所有的都包了,而stm32的时钟是有分工的,并且每类时钟的频率不一样,因为没必要所有的时钟都是最高频率,够用即可,好比一个闸水流大小,我就洗个水,出来洗澡的水,没必要,消耗能源也多,所以不同的时钟也会有频率差别,或者在配置的时候可以配置时钟分频。

2023-02-27 15:34:29 2183

转载 单片机指令 _crol_和左移的区别

/ 1111 1110、1111 1101、1111 1011,如同一条圆形纸带一样循环P1

2023-02-22 08:48:14 2173

空空如也

空空如也

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

TA关注的人

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