![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
嵌入式
文章平均质量分 80
最美的愿望一定最疯狂
总有人间一两风,填我十万八千梦
展开
-
USB通信学习-基础概念理解
1、USB是轮询总线,USB主机发起所有数据交换。数据往返于USB设备中的端点。USB主机输出使用OUT端点,USB主机输入使用IN端点。USB主机中没有端点,数据存储于缓冲区中。从主机的FIFO到设备的端点,中间是Pipes。全速USB传输中,固定的1帧时间为1ms,在高速USB中有将一帧分为了8个微帧,每个125us。USB数据层次从小到大分为域(field),包(packet),事务(transaction),传输(transfer),管道(pipes)。域是USB数据的最小单位,其实域就像我们CAN原创 2023-08-30 21:22:09 · 1392 阅读 · 0 评论 -
任务切换理解
举个例子,当你收到了一个串口中断,进入了中断服务函数,你需要尽快的读出串口数据,但是,这个时候来了系统时钟中断,由于它的优先级比串口高,所以需要先去执行它。将当前SP的指针的值赋给FP,这时的FP就是A的栈底了再重新给SP分配一个地址,这样现在的FP和SP就规划出了函数A的栈帧(栈帧A)。FP中保存的就是栈帧M的基地址或者叫栈底,SP保存的就是栈顶的指针。当函数需要进行跳转的时候,可能在其他的函数中会用到通用寄存器,这样在函数返回的时候通用寄存器的值已经不是原先的值了,所以我们要对其进行备份。原创 2023-04-15 22:21:50 · 421 阅读 · 0 评论 -
Ethercat学习-GD32以太网学习
GD32F4系列以太网模块包含10/100Mbps以太网MAC,数据的收发都通过DMA进行操作,支持MII(媒体独立接口)与RMII(简化的媒体独立接口)两种与物理层(PHY)通讯的标准接口。 以太网需要外接一个PHY(以太网芯片)才可以进行通信。与PHY连接的方式有两种,一种是通过MII直接连接,将MII接口化简为RMII接口,然后再与PHY进行连接。另外与PHY相连的还有一个SMI接口(站点管理接口)用于配置和管理PHY芯片。原创 2023-03-10 21:47:21 · 4006 阅读 · 0 评论 -
C语言回顾(可变参数篇)
它有两个参数,一个参数是va_list类型的,用来存放第一个可选参数的地址。其实在程序的栈中,函数的所有参数都是在内存中连续分布的,所以可以通过强制参数的地址来获取可选参数的地址,然后保存在第一个参数中。该函数有两个参数,第一个参数是当前可变参数的地址,第二个参数是当前可变参数的类型。这个函数调用过后,第一个参数的值会变化,它会指向参数列表中下一个参数。固定参数和可选参数共同构成可变参数函数的参数列表。个可变参数的宏,它使得可以在宏定义中使用可变参数列表,可变参数的个数最少为1,否则编译会出错。......原创 2022-07-26 11:53:00 · 767 阅读 · 0 评论 -
C语言回顾(修饰词篇)
宏定义#define在C程序编译的第一个步骤预处理阶段被编译,其作用就是将宏名替换为替换列表中得内容。#define标识符(也称为宏名)替换列表(替换列表可以是数,字符串字面量,标点符号,运算符,标识符,关键字,字符常量。注意替换列表是可以为空的)//定义常量#defineN100//重定义数据类型#definepin(int*)#defineu32unsignedint//定义一个循环#defineLOOPfor(;;)100(int*)(......原创 2022-07-26 11:51:45 · 1176 阅读 · 0 评论 -
C语言回顾(字节对齐篇)
如果嵌套了结构体的情况,嵌套的结构体对齐到自己的对齐数的整数倍处,嵌套结构体的对齐数=嵌套结构体中的最大对齐数与当前结构体默认对齐数的较小值。总的结构体的整体大小就是所有最大对齐数(含嵌套结构体的对齐数)的整数倍。其他成员变量要对齐到对齐数的整数倍的地址处。对齐数=编译器默认的一个对齐数与该成员大小的较小值。结构体总大小为最大对齐数(每个成员变量都有一个对齐数)的整数倍。第一个成员在与结构体变量偏移量为0的地址处。......原创 2022-07-26 11:50:44 · 818 阅读 · 0 评论 -
C语言回顾(指针篇)
应该在了解数组名即是数组的首地址的同时,也要知道,数组名仅仅是“相当于”指针,而并非真的是指针,数组名是只是个常量(一个值为数组首元素地址的常量),所以不能进行++或者–运算。ptr++,编译器对其增加了sizeof(int),所以ptr此时的值加了4,因为数组a是char类型,每个元素所占的长度为1,且地址连续,所以ptr此时所指的内容就是a[4]指针函数,简单的来说,就是一个返回指针的函数,其本质是一个函数,而该函数的返回值是一个指针。把指针声明语句里的指针名字去掉,剩下的部分就是这个指针的类型。...原创 2022-07-26 11:48:40 · 346 阅读 · 0 评论 -
GD32F407 移植FreeRTOS+Lwip
GD32F407移植freeRTOS和lwip原创 2022-07-21 14:26:35 · 5236 阅读 · 0 评论