自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 stm32库函数开发--定时器中断/内外时钟源的选择(八)

tips:高级还有一个计数器。cnt_en:低电平无效,高电平计数器有效。预分频控制寄存器0-1突然改变会对一个计数周期有影响(前后部分频率不一样,虽然影响不大),故采用预分频缓冲对其进行间接的控制(真正起作用)当中断事件发生后再改变。计数器计数频率:CK_CNT = CK_PSC / (PSC + 1)计算器流程:uif为1申请中断,后续需要手动恢复。

2025-03-04 16:26:19 183

原创 stm32库函数开发--tim定时器原理(七)

tim定时中断:定个时间,到时间产生中断。tim输出比较:产生pwm波形,驱动电机。tim输入捕获:测量方波频率。tim编码器接口:方便读取正交编码器波形。tips:高级定时器的功能为三相无刷电机驱动设计。

2025-03-04 15:32:28 419

原创 stm32库函数开发--OLED调试\函数使用(六)

tips:1、串口优点是可以借助电脑来显示数据,缺点是连接电脑。2、显示屏调试优点是可以覆盖刷新,提供人机交互界面,缺点是无电脑强大处理功能。

2025-01-08 21:31:07 263

原创 stm32库函数开发gpio输入--按键控制led/光敏蜂鸣器报警(五)

(一)新建文件夹并添加到keil5实验现象:两灯交互闪烁。

2025-01-08 03:43:32 189

原创 stm32库函数开发gpio输入(四)

tips:例如:原名字复杂太麻烦,直接使用简洁描述即可。

2025-01-07 23:38:54 322

原创 stm32库函数开发gpio输出 --点亮led(三)

1、rcc开启gpio时钟2、初始化gpio3、使用函数控制gpio口。

2025-01-05 22:44:29 479

原创 stm32库函数开发gpio输出 (二)

tips:1、容忍5v指可以输入5v,但最大仍输出为3.3v2、5v可以参考stm32的引脚定义(带ft的可以5v):3、高低电平控制可使用gpio实现,驱动电压高可以使用驱动电路实现;同理也可以在输入模式获取高低电平。

2025-01-05 17:02:55 372

原创 stm32新建工程框架tips(一)

stm32基础工程架构分析

2025-01-03 18:14:55 180

原创 2025王道计算机考研线性表操作的时间复杂度分析

问题规模n=L.length插入位置为i=L.length+1,最后一个,for循环执行0次,时间复杂度O(1)插入位置为i=1,第一个,for循环执行n次,时间复杂度O(n)可能得插入位置1、2、3....length+1,假设每个位置插入的概率相等,每点概率插入位置为1 执行n次插入位置为2 执行n-1次......插入位置为n 执行1次插入位置为n+1 执行0次平均执行次数:平均时间复杂度为O(n)

2024-04-26 16:02:39 445

原创 2025计算机考研王道数据结构代码线性表C++实践

【代码】2025计算机考研王道数据结构代码线性表C++实践。

2024-04-26 15:23:30 348 1

原创 C语言动态内存分配

程序结束时要归还空间free(a),free还首地址,P++操作后不可以free。如果输入数据时,先告诉数据个数,再输入数据,记录下每一个数据逆序输出。

2023-09-28 14:15:06 127

原创 数据结构(C语言指针)

不会报错是因为int 为4个字节,用32位编译的时候地址也是4个,scanf会用i的值作为地址去访问,将输入的值写入i那个地址里面,不会报错,但是使用会出错。先定义了一个变量a=1,使用地址传入,外部函数使用指针接收,读*p进行读写输出k=1,再进行了*p的修改,返回主函数时,该值修改为9。*p随机指向一个地址,当赋值的时候,如果该地址的值可以修改,那么代码不会出错,但是不可修改,那么代码就会崩溃。const指针表示p的值不可以改变,p为a的地址,但是*p是可以进行修改的。指向下一个单位元,1+1!

2023-09-27 21:52:31 218

原创 Arduino 快速入门到精通 点亮发光二极管

查询资料:发光二极管压降为2v,电流为20ma,digitalwrite为HIGH时电压为5v,low为0v。计算:5-2=3v,所以电阻上的电压为3v,发光二极管电流为20ma,所以电阻为3v/20ma=150欧姆。实验结果:发光二极管会间隔1s闪烁。

2023-07-03 18:30:26 350 1

原创 Arduino 快速入门到精通 第一个程序:led点亮

setup函数:开发板通电的时候或者按下复位按钮的时候函数执行一次。loop函数:当setup函数执行完后,我们开始执行loop函数,loop函数是反复运行,led灯高电平点亮,低电平熄灭。我们得到两个函数: void setup()和void loop()1.给led_butltin高电平,led得到高电平点亮。3.给led_butltin低电平,led得到低电平熄灭。2.delay(1000):持续上面程序1s.4.delay(1000):持续上面程序1s.修改代码,让led亮5s,灭2s.

2023-07-03 17:40:00 637 1

原创 Arduino 快速入门到精通 初识开发板

数字输入输出 :0-13为数字输入输出,有1/0的控制信号,也就是控制开和关。tx\rx引脚为板子与计算机交互的口(最后用)。模拟输入:我们的控制不可能只有0/1,所以我们增加一个模拟输入。电源:上面的gnd表示板子上电后,该引脚接地,其它为电压引脚。atmel控制器:开发板的核心,旁边的银色是引脚,控制整个版。初学知道这些就ok了。

2023-07-03 17:10:01 477 1

原创 Arduino 快速入门到精通 准备工作

汉化:点击file,再点击preferences,再点击english,选择简体中文,再将display line numbers打上勾(显示行号)。5.我们写一点东西后文件名称就会出现一个符号(表示与上次编辑的内容有所区别),点击保存按钮后,符号就会消失。除了上面的按钮外,我们还有程序区(白色区域)、编译器状态区(保存完成的区域),编译结果区(黑色区域)。(4)打开按钮,点击后显示我们以前保存的程序文件,点击后就可以打开之前的文件。(1)验证按钮,点击后计算机验证我们写的程序有没有问题。

2023-07-03 16:38:20 506 1

原创 PAT(7-93 水仙花数)

PAT(7-93 水仙花数)

2023-01-16 14:31:45 183

原创 PAT(7-99 打印九九口诀表)

本题要求对任意给定的一位正整数N,输出从1*1到N*N的部分口诀表。输出下三角N*N部分口诀表,其中等号右边数字占4位、左对齐。输入在一行中给出一个正整数N(1≤N≤9)。代码长度限制16 KB。时间限制400 ms。

2023-01-16 14:16:00 269

原创 PAT (7-100 逆序的三位数)

程序每次读入一个正3位数,然后输出按位逆序的数字。注意:当输入的数字含有结尾的0时,输出不应带有前导的0。比如输入700,输出应该是7。每个测试是一个3位的正整数。

2023-01-16 14:10:56 89

原创 输入n,输出n行的杨辉三角.

杨辉三角:每个数等于它上方两数之和。

2023-01-16 14:01:13 1514

原创 十二、0基础都能看懂(会打字就会C)--C语言基础--操作符(2)

在我们计算机里面我们一般默认1为真,0为假,假如当我们输入的时候,非0的均为真值,我们通过上面的代码我们知道,我们输入的a为100,为真值,那么!a就是假值,我们计算机默认的假值为0,所以我们输出的就是0.我们输出的数是数组长度除以数组中间一个元素的长度,因为我们元素长度都相同,所以我们输出的是元素的个数,我们阅读上面的代码我们知道有10个元素,所以我们输出的就是10。上面这段代码,我们知道当我们输入是非0的都是真,所以a/b均为真,所以a并b也是真,所以相同默认输出为真,所以输出0。......

2022-07-29 21:26:38 570

原创 十一、0基础都能看懂(会打字就会C)--C语言基础--操作符(1)

例如上面代码,我们计算的是5/2,那么我们输出的结果应该是2.5,但是当我们输出后,我们就会发现我们的结果为2,少了小数的部分,这是因为我们5/2两边数字都是int,所以我们输出的时候我们的结果就默认为int型,假如我们想要输出为2.5,我们可以让5改为5.0或者将2改为2.0(两个都改也是可以的),那么我们的数据就改为浮点型了,我们就可以输出2.5也会就默认为浮点型了。因为我们5与2的公约数为2,我们减去公约的部分也就是5-2*2=1,所以我们输出的结果也就是1。所以我们的结果也就是8。...

2022-07-29 15:18:12 310

原创 十、0基础都能看懂(会打字就会C)--C语言基础--数组与创建函数

我们通过上面的代码,我们可以知道,我们要输出的是arr[1],元素下标是1,我们知道使用元素的下标是从0开始的,所以我们要输出的是我们输入数组里面元素的第二个,也就是b,arr[0]=a,arr[1]=b,arr[2]=v,arr[3]=0,arr[4]=0。上面就是一个简单的数组,int表示的是我们后面要存储的数据类型;当然,我们把元素存储到数组里面,我们当然也要去使用它们的,我们一般直接引用数组名称[下标],我们写数组下标的时候要注意,我们下标的数字是从0开始的,然后看我们输入元素的顺序来确定元素。..

2022-07-28 21:39:25 141

原创 九、0基础都能看懂(会打字就会C)--C语言基础--初识语句

上面的if和else就是一个选择语句,我们先定义一下我们输入变量的值,然后我们通过if与else选择语句进行选择,然后通过printf函数将结果打印出来;在我们的学习中,我们学习一个东西,当我们学习第一遍的时候,我们也许不会,但是当随着我们不断的循环学习,学习到了一定次数的时候,我们将会彻底学会这个东西,我们也将彻底结束学习;初学C语言的我们,为了帮助我们更好的学习,更加方便的去理解别人写的代码,使用我们要先学习一些简单的语句帮助我们去理解;所以,我们这章主要先去认识简单的选择语句和循环语句。...

2022-07-23 22:00:06 253

原创 八、0基础都能看懂(会打字就会C)--C语言基础--转义字符和注释

\,我们观察表格我们知道\"也是一个字符,假如我们想要打印出\来,就会与我们printf后面的,组合产生一个新的转义字符,所以我们要想要单独的打印出\我们就在\的前面加上一个\。在C语言中,我们有的时候写的代码关系有的时候会比较复杂,当我们写完这个代码之后,为了帮助他人可以看懂我们的代码和之后我们后来可以看懂,我们一般在我们写完的复杂代码后面加上注释。我们C语言一般将/*与*/之间的内容作为注释,当我们将这段注释起来,这段话系统就不会识别,例如上面的程序,我们将只输出最后一段。...

2022-07-22 14:25:37 412

原创 七、0基础都能看懂(会打字就会C)--C语言基础--字符串

我们知道在字符串里面我们有结束符(因此,上面的程序我们arr1打印的结果也就是是abcd),但是我们在字符里面,我们是没有结束符的,所以我们在创建字符数组的过程里面,我们就不会主动的去结束(上面程序里,arr2打印的结果将是abcd加上一堆乱码);我们运行程序之后,我们可以得到打印的结果应该是6,我们通过这个结果,我们可以证明字符串后面的结束符是不算长度的,所以我们将其称为隐藏结束符。假如我们arr2想要人为的得出和arr1的一样的结论,我们可以arr2的加上'\0'这个元素。...

2022-07-22 12:59:54 121

原创 六、0基础都能看懂(会打字就会C)--C语言编程基础--C语言中的常量

上面的程序,在inta=10前面加上了const,我们就将a从变量变成了常变量(顾名思义就是数字不变了,但是本质上还是变量),我们在后面对a又进行了赋值(即使赋予了相同的值也是不可以的),这就与前面“const修饰a,a是不变的。枚举在我们生活中也是广泛存在的,例如我们说性别、血型等,我们都是可以一一例举出来的。上面这个程序,我们知道a是一个定值,假如const定义后的a是一个常量,那么我们这个程序是可以执行的,但是当我们执行的时候,我们就会发现a是一个变量,不是常量,也就是前面说的常变量。......

2022-07-20 19:02:57 185

原创 五、0基础都能看懂(会打字就会C)--C语言基础--变量的作用域与生命周期

我们先定义了一个全局变量inta=200,我们在程序的前后使用这个变量,当我们输出结果的时候,我们就可以发现这个工程的全部地方我们都可以使用它的,也就是说全局变量的作用域是在这个程序。从上面的定义中,我们可以知道全局变量作用域就是指整个工程,那么我们在其它程序中使用也是可以的,但是我们是不可以直接引用它的。C语言的变量的生命周期也同我们人的生命周期一样,我们一般将变量的产生到变量的销毁之间的过程称为变量的生命周期。在我们的日常生活中,我们人的生命周期是指我们人的出生到人死亡的整个过程。...........

2022-07-20 16:43:34 143

原创 四、0基础都能看懂(会打字就会C)--C语言编程基础 数据类型及变量的使用

但是未知量也是有区别的。假如有一个整型的数,它所占的空间大小是1字节,我们可以将这个数定义为short、int、long、longlong都是可以的,它们虽然都可以,但是一个longlong的所占空间的大小居然是short的8倍。假如我们在编程中对数据的类型不加区分,假如一个程序中这样的变量有上千个,那么就会导致我们编写的程序比别人的内存大很多,为了节约我们的空间大小我们就人为的将数据分为了很多类型。,所以我们在输出时的大小就以小的输出(节约空间),因此会导致long[int]的大小和int是一样的。...

2022-07-19 11:39:22 142

原创 三、0基础都能看懂(会打字就会C)--C语言编程基础 hello world

但是我们使用prinft函数系统一开始是不知道的,我们要提前告诉系统prinft这个函数是谁的,也就是我们要提前声明,所以我们在写代码前要提前写头文件即include,来告诉系统函数库(include是引用的意思,中间的是文件,也就是函数库)我们以后写的代码中间所使用的函数都要提前说明。int(整形,计算机的一种数据类型,即取整函数,向下舍入)是返回值数据类型,与返回值0是相互呼应的。当我们打出上面的代码时,我们要可以输出我们的结果。当我们完成上面就可以得到我们想要的结果。.................

2022-07-18 15:30:46 148

原创 二、0基础都能看懂(会打字就会C)--写代码前的准备工作

一、我们写代码当然要有软件呀?市面上的编程软件有很多,常见的C语言编译器有Dev-C++、Visual Studio等,我们一般就使用Visual Studio 2019,切勿使用VC6.0(太老了,也太low了)我们就开始我们的保姆教程(Windows10为例)1.点击电脑桌面左小角的2.找到自己电脑下载软件的地方3.打开软件,搜索Visual Studio Community 2019 并下载4.我们下载安装好就会出现以下界面5.在工作负荷中选择勾选使用C....

2022-07-18 14:09:46 428

原创 一、0基础都能看懂(会打字就会C)--初识C语言

“C语言”,我们从名字就可以知道它是一门语言。在我们日常生活人与人之间的交流我们可以使用汉语、英语、日语等那么我们与计算机之间的交流我们用什么呢?我们知道计算机是一个硬件,是一个没有思维的机器,它不知道我们人想要它干什么,所以我们应该如何利用计算机去干一些我们人想要计算机干的事情呢?我们知道,虽然计算机没有思维,但是它可以识别电信号(即电信号的有无),我们可以通过相同的信号去规定计算机干一些我们规定的事情,例如我们可以规定设置01011100的信号去让计算机干一件事情,当我们再次输入这样的信

2022-07-18 11:56:48 257

基于thingsboard规则引擎的实现

基于thingsboard规则引擎的实现 浙江工商大学信电学院物联网技术及应用平时作业

2024-07-10

基于thingsboard的智慧农场项目教程

基于thingsboard的智慧农场项目教程 浙江工商大学信电学院物联网技术及应用平时作业

2024-07-10

浙江工商大学信电学院网络安全开卷资料整理

浙江工商大学信电学院网络安全开卷资料整理 基于老师上课ppt+音频 以及个别平时训练真题构成

2024-07-10

linux基础期末开卷资源快捷命令

期末开卷速查命令

2023-02-27

空空如也

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

TA关注的人

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