摘要:
stm32 串口重定义 在usart.c或者urat.c文件末尾添加 int fputc(int ch, FILE *fp) { HAL_USART_Transmit(&husart1, (uint8_t *)&ch, 1, 0xffff); return ch; } 再勾选 魔术棒-> targe 阅读全文
摘要:
当函数执行时,局部变量被分配到函数的栈帧中,也称为栈上分配。栈帧是存储函数调用期间的局部变量、参数、返回地址和其他相关信息的内存区域。 当函数中的局部变量发生值变化时,它们实际上是通过栈上的内存地址来进行赋值的。 传入参数和局部变量被分配到栈帧中的不同位置,根据编译器的实现和函数调用约定,它们在栈上 阅读全文
摘要:
栈是由编译器在需要时分配的,不需要时自动清除的变量存储区。里面的变量通常是局部变量、函数参数等。堆是由malloc()函数(C++语言为new运算符)分配的内存块,内存释放由程序员手动控制,在C语言为free函数完成(C++中为delete)。栈和堆的主要区别有以下几点: (1)管理方式不同。 栈编 阅读全文
摘要:
显示屏接口一般有I2C、SPI、UART、RGB、LVDS、MIPI、EDP和DP等。下面简要总结一下。 01 中小屏接口I2C、SPI、UART 一般3.5寸以下的小尺寸LCD屏,显示数据量比较少,普遍采用低速串口,如 **I2C、SPI、UART** 。 1.1、I2C: I2C总线是半双工,两 阅读全文
摘要:
结构体函数注册使用 知识点 结构体 宏定义 结构体成员的使用 #include <stdio.h> #include <stdio.h> #include <stdlib.h> struct test { void (*test_fun)(void); }; #define register_tes 阅读全文
摘要:
杰理ld文件 一、什么是.ld文件 在嵌入式开发中,.ld文件是一个非常重要的文件,它负责定义了链接器如何将各个目标文件中的部分组合成最终可执行程序。.ld文件中主要包含了各个目标文件的内存分配、代码和数据段的起始地址和长度、程序入口地址等信息。 美中不足的是,.ld文件的语法比较复杂,这也成了很多 阅读全文