自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 51单片机中的串口通信

中断系统:当定时器1(UART的专用定时器)的计数值溢出时,单片机系统内部就会进入到中断环节,不过如果是发送数据的话,只需要定时器即可(调值波特率需要用到定时器),不需要进入到中断函数,如果是接收的话,需要不断的扫描是否有数据接收,所以需要中断函数,如果判定有数据被接收,就会进入到接收函数。SBUF:串口数据缓存寄存器,理论上来说接受和发送是两个独立的寄存器,但是可能是因为板子在设计的时候io口不够用,所以该寄存器的地址是同一个,写操作时,写入的是发送寄存器,读操作时,读出的是接收寄存器。

2024-03-28 21:25:28 463

原创 关于函数递归以及迭代

那么为什么出现这种错误的,是因为在main函数中调用main函数,这样子的无限调用(类似套娃)的情况下,栈区一直在开辟空间,当开辟的空间到达一定的时候就会产生栈溢出,所以在使用函数递归的时候最好设定一个条件,每一次递归都能逐渐去接近那个条件。以上代码中我们可以看到代码的每次递归,都会逐渐的去接近那个设定的条件,当推递到满足了特定条件了以后就开始回归,每一次的回归都会带回来一个返回值,并且会把申请的空间再次还给操作系统,避免出现栈溢出以及别的错误,如果使用递归的话,数字小的很快就能算出来,

2024-03-24 18:12:43 294 1

原创 关于函数栈帧的创建和销毁

形参跟实参的区别在哪里呢,根据vs2013的编译器中,我们可以看到,创建子函数要对数据进行压栈,每进行一次压栈,(esp)栈顶就会向低地址移动四个字节,在压栈的时候,会把传参的数据进行拷贝一份放在栈区中,注意:拷贝的数据只是数字相同,地址是不同的,所以就是为什么即使改变了形参实参也不会进行改变。

2024-03-23 17:01:09 305 2

原创 关于二分运算的个人理解

二分运算是用于有序的数字组合也就是数组当中,先定义数组,判断数组的数量,在取数组的中间的下标,运营数组的中间数去判断是否等于这个数,如果中间数大于这个数,则数组从中间值到最右边的值全部作废,要重新定义最右边的值,若是中间数小于这个数,则把最初始的值到中间数全部作废重新定义初始数。

2023-12-05 22:20:42 294

空空如也

空空如也

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

TA关注的人

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