- 博客(36)
- 收藏
- 关注
原创 九、A-D转换器获取温度
AD转换器(Analog-to-Digital Converter,模数转换器)是一种将连续的模拟信号(如电压、电流)转换为离散的数字信号(二进制代码)的电子器件。它是连接现实模拟世界与数字系统的桥梁,广泛应用于数据采集、传感器信号处理、通信系统等领域。
2025-02-19 18:21:09
1022
原创 八、SPI读写XT25数据
SPI(Serial Peripheral Interface,串行外设接口)是一种同步串行通信协议,广泛用于嵌入式系统中连接微控制器与外围设备,如传感器、存储器、显示屏等。主要特点1. 全双工通信:支持同时发送和接收数据。2. 同步通信:依靠时钟信号(SCLK)同步数据传输。3. 主从架构:一个主设备控制一个或多个从设备。4. 高速传输:速度通常高于I2C和UART。优点:高速传输,全双工通信,硬件简单。缺点:需要更多引脚,无内置错误检测,协议复杂度较高。
2025-02-16 22:29:51
667
原创 七、I2C通信读取LM75B温度
I2C(Inter-Integrated Circuit)是一种同步、多主从、串行通信协议,由飞利浦公司开发,主要用于短距离通信,尤其在集成电路之间。
2025-02-12 13:10:05
811
1
原创 六、 通用异步收发器UART
(Universal Asynchronous Receiver/Transmitter,通用异步收发传输器)是一种用于异步串行通信的硬件设备。它通过两根信号线(TX 和 RX)实现通信,广泛应用于微控制器、计算机和外设之间的数据传输,尽管传输速率和距离有限,但在短距离通信中应用广泛。
2025-02-10 23:00:27
883
原创 五、定时器实现呼吸灯
是一种通过对内部时钟脉冲计数来测量时间间隔的模块。它的核心是一个递增或递减的寄存器(计数器值)。如果系统时钟为1 MHz,定时器每1 μs计数一次。是一种对外部事件(如脉冲信号)进行计数的模块,而不是基于固定时钟。外部引脚每收到一个脉冲(如按键按下或传感器触发),计数值加 1 或减 1。LPC1100系列Cortex-M0微控制器有2个32位和2个16位可编程定时器/计数器,都有捕获和匹配输出的功能。捕获功能用于记录外部信号变化时定时器的当前值,常用于测量信号的频率、脉宽或相位差。
2025-02-03 22:55:32
1203
原创 四、GPIO中断实现按键功能
输入输出(I/O)是一个非常重要的概念。I/O泛指所有类型的输入输出端口,包括单向的端口如逻辑门电路的输入输出管脚和双向的GPIO端口。而GPIO(General-Purpose Input/Output)则是一个常见的术语,指的是通用输入输出接口。
2025-02-02 19:54:38
1484
原创 Codeforces Round 1000 (Div. 2) A-C
对于大于两个点的树,我们当然是找度数最大的点去删除,如果两点不相连,那么结果为两点度数相加 - 1, 如果相连,那么两点都去掉后相连的地方就没有连通分量了,结果为两点度数相加 - 2.所以对于左边界为1的情况,如果右边界为1结果就是1,右边界大于1为r,那么结果为r - 1,因为虽然[1, 1]属于,但是[1, 2]却因包含[1, 1]而不属于了。gcd(l, l + 1) = gcd(1, l) = 1,即相邻数组成的区间互质,那么一段区间的互质区间数就为R-L,给定一个数组的一段区间,可以进行且。
2025-01-23 15:32:03
896
原创 三、SysTick系统节拍定时器
系统节拍定时器SysTick是ARMCortex-M0内核提供的一个24位递减定时器,当计数值达到0时产生中断,可以为操作系统和其他管理软件提供固定时间的中断。当系统节拍定时器被被使能时,定时器从重装值递减计数,到0进中断,再继续从重装值递减,循环往复。
2025-01-23 14:57:35
1449
原创 Codeforces Round 998 (Div. 3) A - E
看图1中哪些边是必须要去掉的,遍历图1的边,如果两点在图2中是连着的,那么这个边就可以留下,如果没连着,这个边就一定不能要。A和B玩游戏,黑板上n(n为偶数)个数,A擦掉一个,B擦掉一个,进行n/2轮,每轮若两人擦掉的数的和为k,分数+1,否则分数不变,A想分最小,B想分最大。卡牌游戏,给定n头牛,每头牛m张牌,牛顺序出牌m轮,求是否存在一个顺序,使得每次出的牌都比上次的牌大。而且观察到,(我蒙的,反证蒙的)从前往后依次进行操作,则最后得到的序列如果非递减就非递减,不是就不行。使用并查集实现即可。
2025-01-20 13:53:06
934
原创 二、点灯基础实验
嵌入式基础实验第一个就是点灯,地位相当于编程界的helloworld。如下为LED原理图,要让相应LED发光,需要给I/O口设置输出引脚,低电平,二极管才会导通。
2025-01-18 20:23:21
2406
原创 一、嵌入式系统基础实验平台
如果列表里没有说明没有安装LPC1114对应的支持包,需要在pack installer里面自行下载,如图1.3所示。首先打开Keil uVision5,新建一个工程,工程文件放在一个空文件夹里,文件名可以和文件夹名保持一致,或者直接起一个通用文件名,比如project,便于之后直接复制移植。要给文件分到不同文件夹的话需要添加路径,可以选择Options for Target -> C/C++ -> Include Paths,将需要添加的文件所在路径包含进来,如图1.8。图1.6 Target。
2025-01-16 10:57:41
345
原创 一、1-2 5G-A通感融合基站产品及开通
SF(Sensing Function):核心网感知控制和感知测量数据处理网元,包括处理3GPP感知设备的感知测量数据,以及处理非3GPP感知设备的感知测量数据;
2025-01-16 10:45:36
945
原创 Codeforces Round 987 (Div. 2) ABCD
一个数如果能跳到另一个数上,那么这两个位置的答案会一样。右边的能跳的肯定大于等于左边的能跳到的数。
2024-11-16 22:26:28
842
原创 数位DP学习
AcWing 1086. 恨7不成妻。AcWing 1084. 数字游戏 II。AcWing 1083. Windy数。AcWing 1081. 度的数量。AcWing 1082. 数字游戏。AcWing 1085. 不要62。
2024-11-14 23:50:49
413
原创 Codeforces Round 986 (Div. 2) ABCD补题
【代码】Codeforces Round 986 (Div. 2) ABCD补题。
2024-11-11 10:37:11
1347
原创 Refact.ai Match 1 (Codeforces Round 985) A-D补题
Refact.ai Match 1 (Codeforces Round 985) 找区间内是这个数倍数的数量大于等于k的数的个数 二分找最大符合要求的即可 B:Replacement大意: 第i次将一个01字符串中把一个相邻的01或10换成另一个01字符串的i位,看最后能否消除完 看中途0或者1是否为0C:New Rating大意: n次比赛,每次分低就加,分高就减,可以跳过连续的一段,看最后最高是多少分
2024-11-10 22:12:54
638
原创 学习maxplus2
昨天学的verilog还是没用上,直接图形编辑去做数电课设和数电创新实践好像对没基础的更好一点这里直接用u盘复制的实验室机子上的两个文件(max2work这个文件好像没用到?),然后如果复制到c盘就不用修改了,我是复制到E盘了,如果c盘之外的盘,只需要把license改一下就行首先打开应用,如下然后Options->License Setup将下面目录的前缀改一下就行了还有个小问题就是没法复制粘贴,一用就报错然后闪退,解决方法是重启一下电脑就好了。
2024-11-04 14:53:49
330
原创 verilog环境搭建
后来发现命令行能执行verilog,vscode却执行不了,或者说识别不到,可能是vscode没开管理员权限,看了下面的操作。也可能是每次保存一下就直接显示报错了,都有可能,上边的操作还是设置了一下。关于代码不报错的问题,我看到了以下评论。
2024-11-03 22:46:34
272
原创 verilog学习
Verilog HDL(简称 Verilog )是一种硬件描述语言,用于数字电路的系统设计。可对算法级、门级、开关级等多种抽象设计层次进行建模。Verilog 继承了 C 语言的多种操作符和结构,与另一种硬件描述语言 VHDL 相比,语法不是很严格,代码更加简洁,更容易上手。Verilog 不仅定义了语法,还对语法结构都定义了清晰的仿真语义。因此,Verilog 编写的数字模型就能够使用 Verilog 仿真器进行验证。
2024-11-02 22:08:48
413
原创 Codeforces Round 983 (Div. 2) A~D
【代码】Codeforces Round 983 (Div. 2) A~D。
2024-11-02 17:21:36
1245
原创 CodeForces 2030D - QED‘s Favorite Permutation
一个排列要变为递增状态,在该i位置上有L或者R,L表示可以将这个位置上的数与左边的数互换,R表示可以将这个位置上的数与右边的数互换,可以无限换,还有几次操作,每次操作改变一个位置上的LR,问每次操作后是否能够通过LR的换法换成123...n的排列。
2024-11-01 21:17:10
269
原创 Codeforces Round 981 (Div. 3)
即那么f[i]能被k整除,f[c1 * i]也能被k整除,那么第n个能被k整除的数就在n*i。,斐波那契数列%k最多不超过6k个就会重复,又由一个公式。,令n = i,m=c1*i,则。
2024-10-26 22:00:04
890
原创 Codeforces Round 978 (Div. 2) C - Gerrymandering
要注意的一点就是dp初始化为-INF是因为防止不正确的切割方法,dp[0] 和 dp[1]的转移都必须从dp[2]开始。
2024-10-15 19:02:50
403
原创 Codeforces Educational Codeforces Round 170 (Rated for Div. 2)
当时就先把这堆不同的数用map记录了一下,然后用vector来存连续的数,然后依次求vector内k段长度的最大值,当时能想到的就这了,化繁为简。没做出来,看了jiangly大佬的提交代码。
2024-10-15 11:26:46
2195
原创 CF1988C. Increasing Sequence with Fixed OR
【代码】CF1988C. Increasing Sequence with Fixed OR。
2024-10-12 18:14:53
713
原创 Codeforces A. Substring and Subsequence
找一个字符串的substring子串与另一个字符串的subsequence子序列相等的个数。
2024-10-11 21:55:56
235
原创 Codeforces 1991C Absolute Zero
看了题解发现这道题涉及二进制,对于一个数,从高位到低位依次减去1再取绝对值,那么最后的0位一定会得到1或者0,并且奇数和偶数得到的低位一定不同,最后就是在第零位1 - 0 然后 0 - 1无限循环,减到第零位的一之后偶数为1 奇数为 0,所以最后提供方案的时候如果是偶数就再输出一次操作1就行了。PS:10^9最高位在29, 所以从29开始递减,30,31过不了不知道啥原因。给一组数据,判断该组数据每次都减去一个数再取绝对值,能否在40次内减到零。
2024-10-11 18:50:21
570
1
原创 Codeforces Round 970 (Div. 3) D. Sakurako‘s Hobby
3、有环的说明每个点都能去到环内任意一点,那么直接就记录一个sum,然后递归求环内黑点,最后把sum赋值给环内所有点即可。2、先处理拓扑排序的一些点,依次遍历无父节点的即可,之后就会剩下环。给一堆点和边,并给出点的颜色,输出每个点能遍历到几个黑点。1、这些点边里面有拓扑结构, 也有环。
2024-10-08 19:07:00
628
原创 codeforces C2 - Adjust The Presentation
这里需要注意的就是要防止查询是否相同时超时, 一不小心就会O(qn),优化就是每次记录一下每个成员是否大于上个成员,q次操作每次只需更新变动的成员的贡献。判断幻灯片序列里员工第一次出现的相对位置是否和初始员工位置相同。
2024-10-07 00:19:36
356
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人