- 博客(13)
- 收藏
- 关注
原创 嵌入式八股3
答:1.定义:进程是资源分配的基本单位 线程是进程中的执行单元,也是CPU调度和执行的基本单位 进程>线程。4.调度和切换:进程是一个独立的单位,需要恢复的上下文的内容就比较多,消耗的资源也就比较多,线程消耗的资源是比较少的。答: 1.数据的可靠性:TCP提供的是可靠的数据传输,三次握手, UDP无连接的,不可靠的数据通信。需要借助内核得有:管道,共享内存(在内核空间创建的共享内存),信号量 ,消息队列,套接字。2. 通信方式 :TCP是面向连接的通信方式,UDP是不需要进行连接。
2025-03-18 09:16:47
829
原创 嵌入式八股2
答:数组名就是数组首元素的地址,也可以看做一个常量指针,不能修改指向的,内存访问为4个字节;使用指针访问数组时需要解引用,会使用 * 符号,使用指针访问数组是间接访问,数组名是直接访问;答:创建方式不同,栈是系统创建用于保存局部变量,堆事手动创建和释放,用malloc创建,free销毁;答:常量指针指向常量的指针,意味着这个指针无法修改所指向的数据,但可以修改指向;应用场景:栈:函数调用,表达式求值 ,队列:任务调度,广度优先搜索。栈:只能在栈顶进行操作,队列:在队尾进行插入,在队首进行删除。
2025-03-18 09:16:35
544
原创 嵌入式八股(看视频总结记录学习版)
答:char* int* float*这三个大小多少,其实是一样的,指针的大小只跟操作系统位数有关,在32bit的系统下是4字节,在62bit系统下是8字节。答:数组的地址空间是连续,链表地址不连续;答:《这个括号是从标准库路径去搜索,速度快》,“”双引号是从用户的路径去搜索,自己定义的“”“”使用起来会比较快。答:指存储数据时,将数据按一定的规则放置在内存里,以最大的变量所占据的内存来进行分配。答:作用域不同(全局变量作用在程序块,局部变量作用在当前函数内部);结构体不同的成员在不同的地址;
2025-03-16 19:59:16
322
原创 STM32江科大库函数移植为hal库(4)
在main.c中重新定义HAL_TIM_PeriodElapsedCallback这个回调函数。其余代码如上没有改变,但是这个显示效果为cnt加到10,count加一。显示的代码如上所示,结果就当cnt记到10000-1时count加一。配置好定时器72M采用7200加10000算下来刚好1s秒记一次。
2024-10-22 21:39:56
427
原创 STM32江科大库函数移植为hal库(3)
把这两个外部通道使能也即打开这两个外部通道,然后生成keil文件。将PB0和PB1设置为外部中断模式待会接编码器的A脚和B脚。打开keil点击中断函数,找到上面两个中断函数。最后在main函数写入下面代码即可完成。定义一个计数函数并在.h文件声明。
2024-10-22 21:39:17
512
原创 STM32江科大库函数移植为hal库(2)
接线图使用STM32CUBEMX进行配置可以在红线处配置中断优先级和抢占优先级最后可做直接生成keil文件即可。
2024-10-21 16:03:38
527
原创 STM32江科大库函数移植为hal库
注意左右两个OLED.C文件的区别,左边是hal库,右边库函数,所使用的函数是不一样的,里面的参数也不一样,然后hal库是不需要再对引脚定义,我们已经在STM32CUBEMX定义过了,会自动生成的,所以把江科大的OLED文件中关于引脚定义部分注释掉。打开STM32CUBEMX,选择stm32f103c8t6,按照界面所示进行引脚定义,然后生成keil文件。接下来把main.c的文件复制一下即可,OLED的移植就成功了。把江科大的这三个文件复制粘贴过来。
2024-10-21 16:02:52
1132
2
原创 [GPIO]4种输出模式
1. **定义**:推挽模式是一种GPIO输出配置,其中GPIO既可以输出高电平(推),也可以输出低电平(拉)。2. **输出能力**:推挽模式可以提供较强的驱动能力,因为它可以直接将输出引脚驱动到高电平(通过内部的上拉电阻或外部电源)或低电平(通过内部的下拉电阻或地线)。4. **LED点亮**:在开漏模式下,GPIO输出低电平时,LED点亮(通过外部上拉电阻);电阻越小,LED越亮。2. **输出能力**:开漏模式的驱动能力较弱,因为它不能直接将输出引脚驱动到高电平,而是依赖外部上拉电阻将引脚拉高。
2024-10-18 21:39:55
926
原创 STM32入门教程(江协科技)
蜂鸣器的使用与点亮LED方法相似,找到对应引脚,接上线,然后代码改一下对应的引脚和端口就可以了。然后再端口的初始化位置也要改成相应的端口。在LED点亮的基础上直接复制8次既可,也可以用下面这个函数。GPIO初始化所需要的结构体,其中的模式和速度如上所示。第一种写法(所有代码都应放在while(1)循环内)以上两种都是可以,只不过函数的使用方法不一样。这里假设使用PB12的端口,如下。以上这四个是常用的端口使用函数。用于开启时钟的函数及其函数解释。GPIO初始化所需要的结构体。这是端口初始化和开启时钟。
2024-09-07 10:14:22
773
原创 力扣刷题继续
在数组中找出由三个数组成的最大乘积,并输出这个乘积。414.给你一个非空数组,返回此数组中。如果不存在,则返回数组中最大的数。通过看题解发现代码不完善可以加上这段。628.三个最大数乘积。
2024-09-02 20:42:56
302
原创 C语言力扣刷题
在《英雄联盟》的世界中,有一个叫 “提莫” 的英雄。他的攻击可以让敌方英雄艾希(编者注:寒冰射手)进入中毒状态。开头的两位和最后的三位都是连续 1 ,所以最大连续 1 的个数是 3.秒时对艾希发起攻击,以及一个表示中毒持续时间的整数。当提莫攻击艾希,艾希的中毒状态正好持续。如果提莫在中毒影响结束。,在新的攻击之后,中毒影响将会在。发起攻击意味着艾希在时间区间。再次攻击,中毒状态计时器将会。, 计算其中最大连续。返回艾希处于中毒状态的。
2024-09-02 20:27:24
515
原创 C语言学习,数组与函数学习,练手
二维数组,也是创建矩阵找出最大值,并找到其所在行列位置。使用一维数组来计算两个班级学生成绩的均值最值。第一题是计算学生成绩的平均分,最大最小值。创建一个矩阵,并找出矩阵中的最大值。
2024-07-09 20:44:39
128
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅