- 博客(46)
- 收藏
- 关注
原创 STM32定时器原理及应用
定时器原理定时器本质上是一个计数器。如果输入的是一个恒定的脉冲信号源(时钟信号)就可以根据定时器的计数(脉冲个数)和时钟频率计算出时间。2. 定时器分类大容量的STM32F103xx增强型系列产品包含最多2个高级控制定时器,4个通用定时器,2个基本定时器,1个实时时钟,2个看门狗定时器和1个系统滴答定时器。高级定时器、通用定时器、基本定时器都是由一个可编程的驱动的16位构成。定时器通常按计时方式和功能特点进行分类:(1)按功能特点分类。
2024-11-24 22:28:25
1279
原创 STM32中断原理及应用
对于单片机来说,中断是指CPU正在处理某个事件A,发生了另一件事件B请求CPU迅速去处理(中断发生),CPU暂时停止当前的工作(中断响应),转去处理事件B(中断服务),待CPU处理事件B完成后,再回到原来的事件A继续执行(中断返回),这一过程称之为中断。从编号7开始的为外部中断,,这些中断的优先级都是可以自行设置的。关于中断服务函数的函数名必须跟启动文件里面预先设置的一样,如果写错,系统就在中断向量表中找不到中断服务函数的入口,直接跳转到启动文件里面预先写好的空函数,并且在里面无限循环,实现不了中断。
2024-11-16 14:56:24
1370
1
原创 STM32系统的GPIO原理与结构
原理概述:GPIO是通用输入输出接口,是单片机的一些引脚,可以控制LED灯、蜂鸣器,也可用于按键输入、ADC采样等,从而实现STM32单片机与外部硬件之间的连接与数据交互。输入参数2:GPIO_InitStruc,指向结构体GPIO_InitTypeDef的指针,包含了外设GPIO的配置信息,GPIO_InitTypeDef 定义于文件"stm32f10x_gpio.h"中;输入参数2:GPIO_Pin,待设定的端口位,该参数可以取GPIO_Pin_x(x可以是0~15)的任意组合;
2024-11-11 21:28:19
1385
原创 基于Linux中Qt开发的广告机
在项目开发中,我们设计了一个多功能的广告机,该广告机可以实现海报的切换、视频的播放功能,以及快进快退,上一首下一首,天气时间的获取等基本广告机功能。(3)新建工程完毕后,点击Forms下的widget.ui进行广告机的界面设计,左侧添加需要用到的部件,然后进行统一布局,设置好区域,包括日期、按键等功能位置,更改文本显示框;播放过程中实时更新进度条以及播放时间,当视频未播放时,时间显示为00:00,当视频开始播放时,时间进度条随着播放进度显示当前时间进度,显示视频的总时间和当前播放进度;
2024-11-04 21:26:21
1105
原创 嵌入式开发与应用实验四——通过串口通信实现收发功能
串行通信中的波特率和比特率:波特率指数据信号对载波的调制速率,波特率的单位是波特(baud),比特率指单位时间内传输的比特数,单位bit/s(bps),而对于USART来说,波特率和比特率是相等的。总之,波特率越大传输速率越快,通过控制时钟可以改变波特率。配置其波特率,数据长度,停止位长度,工作方式,有无校验位,硬件流的控制等。(6) 最后调用USART_Cmd()函数使能USART,这个函数最终配置的是USART_CR1的DE位,具体的作用是开启USART1的工作时钟,没有时钟USART1就工作不了.
2024-09-16 18:19:16
2776
原创 嵌入式开发与应用实验三——定时器实现一秒闪烁一次
它随着计数器的输入脉冲进行自加1,也就是每来一个脉冲,计数器就自加1,当加到计数器为全1时,再输入一个脉冲就使计数器回零,且计数器的溢出使相应的中断标志位置1,向CPU发出中断请求(中断允许时)。定时器中断一次的时间是1s,定义一个全局变量Cnt,每当进一次中断的时候,由Cnt来记录进入中断次数。设置自动重装载寄存器ARR的值为10000,设置时钟预分频器为72,则驱动计数器的时钟CK_CNT=CK_INT/(71+1)=1MHz,则计数器计数一次的时间为1/CK_CNT=1s。
2024-09-08 20:45:20
2255
2
原创 Linux中使用C语言编写冒泡排序算法的实现
以从小到大排序为例,第一轮比较后,所有数中最大的那个数就会浮到最右边;第二轮比较后,所有数中第二大的那个数就会浮到倒数第二个位置……就这样一轮一轮地比较,最后实现从小到大排序。一直重复这个过程,直到没有任何两个相邻元素可以交换,就表明完成了排序。冒泡排序的原理是:重复扫描待排序序列,从左到右,比较每一对相邻的元素。每次比较一轮,就会找到序列中最大的一个或最小的一个元素,并对顺序不正确的元素进行交换。这个数就会从序列的最右边冒出来。,它也是一种稳定排序算法。冒泡排序是一种简单的。1. 冒泡排序原理说明。
2024-09-04 20:15:30
616
原创 [keil].\Objects\LED.axf: Error: L6200E: Symbol EXTI9_5_IRQHandler multiply defined .O...错误解决方法
解决出现.\Objects\LED.axf: Error: L6200E: Symbol EXTI9_5_IRQHandler multiply defined .O...的方法。通过搜索可以发现 EXTI9_5IRQHander在两个文件中被重复定义,我们可以注释或者删除其中一个即可;3. 如果变量是在头文件定义的,那么就需要将其改到 .c 中定义,在头文件定义是不可以的;1. 首先利用(Ctrl+f)搜索这个变量在工程中被定义的位置;2. 在多个文件中都有定义。
2024-09-03 21:39:50
1149
原创 嵌入式开发与应用按键外部中断实验二
利用STM32的外部中断输入功能,在外部设备触发中断信号时,中断模块会将中断信号转换为STM32的中断信号,从而触发LED灯亮灭。根据实验要求通过按键点亮LED灯,通过原理图了解硬件电路结构,实现初始化GPIO,并配置中断,编写中断处理程序,处理一个键盘中断,并在串口打印中断及按键显示信息。(3)配置按键EXTI中断\事件线,配置中断产生的条件,PB5、PD6、PD3这三个口采用的是上拉输入模式,当有按键按下时,该IO口是低电平,所以要配置成下降沿触发,对应的就是GPIO mode;
2024-09-03 21:14:20
1471
2
原创 Linux新建虚拟机Ubuntu详解
5. 给虚拟机命名以及新建文件夹存放虚拟机位置,最好单独放一个盘;20. 重新点击编辑虚拟机进入,勾选使用物理驱动器后点击完成即可;18. 这时候会出现黑屏无法进入现象,所以需要重新设置虚拟机;3. 点击稍后安装操作系统后,点击下一步;17. 等待下载完成后点击现在重启即可;14. 点击现在安装后点击继续即可;21. 重新开启虚拟机,选择否选项;1. 打开软件,点击新建虚拟机;13. 后面直接点击继续即可;15. 后面直接点击继续即可;7. 直接点击完成即可;10. 重新启动虚拟机;8. 点击编辑虚拟机;
2024-09-02 21:05:02
511
2
原创 C语言入门基础知识(持续更新中)
C语言作为面向过程的计算机编程语言,属于高级语言范畴,它既有高级语言的特点,又有汇编语言特点。设计目标是提供一种能以简易方式编译、处理低级储存器的编程语言。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算硬件的应用程序,代码精简,十分灵活。
2024-08-29 13:55:46
2023
1
原创 嵌入式操作系统Linux期末复习题
嵌入式操作系统Linux期末复习题,文章主要涉及选择题、判断题、以及上机题,包含详细上机题步骤过程。覆盖了嵌入式系统的基本概念、特点、重点指令以及shell编程题型
2024-08-17 21:17:05
992
2
原创 数字信号处理第一章重点复习笔记
(1)定义:系统某时刻的输出y(n)只取决于此时刻x(n)和以前的输入x(n-1),x(n-2)…而和以后的n时刻无关;y(n)=T[x(n)] y(n-m)=T[x(n-m)] m位任意常数。两公式结合起来:y(n)=T[ax1(n)+bx2(n)]=ay1(n)+ay2(n)设序列为x(n),则序列y(n)=x(n-m)表示将序列x(n)进行移位。(3)x(mn)和x(n/m)定义为对x(n)的时间尺度变换;设序列为x(n),则序列y(n)=x(-n)表示以n=0的。
2024-06-25 23:08:59
2071
原创 通信原理第十章复习笔记
PAM是脉冲序列的幅度随m(t)变化的一种模拟脉冲调制方式;(1)抽样定理:设带通模拟信号m(t)的频率范围限制在。抽样定理——模拟信号数字化和时分多路复用的理论基础;(2)抽样的结果就是一个脉冲幅度调制(PAM)信号;特点:样值脉冲的幅度随原始信号m(t)的幅度而变;3. 波形编码的三个步骤——抽样、量化、编码;进行抽样时,m(t)将可由这些抽样值完全决定;1. 信源编码的作用:压缩编码、模/数转换;(1)特点:每个样值脉冲的顶部是平坦的。4. 实际抽样1——平顶抽样的PAM。
2024-06-20 12:04:18
1814
原创 通信原理第九章复习笔记
通信原理第九章 数字信号的最佳接收一、数字信号的最佳接收准则“最佳”准则——使错误概率最小;码元产生错误判决的原因是噪声和系统特性引起的信号失真;1. 似然函数的意义似然函数是一个在统计学和机器学习中经常出现的概念,它用于描述给定参数下,观察到某一数据样本的"可能性"。似然函数通常被记作 ( L(\theta \mid x) ),其中 ( \theta ) 是模型参数,( x ) 是观察到的数据。2. 最大似然准则(1)求总误码率Pe。
2024-06-18 00:56:29
1280
原创 通信原理第八章复习笔记
由于16QAM信号的16个信号点在水平轴和垂直轴上投影的电平数均有4个(+3、+1、-1、-3),对应低通滤波器输出的4电平基带信号,因而4电平判决器应有3个判决电平:+2、0、-2。大圆上的四个红点表示第一个QPSK信号适量的位置,在这4个位置上可以叠加第二个QPSK矢量,后者的位置用虚线小圆上的4个小黑点表示;每个码元周期内含有1/4载波周期的整数倍,且两种码元包含的正弦波数相差1/2个周期,功率谱衰减快。在多径衰落信道中,信号振幅和相位取值越多,收到的影响越大,因而星型比方型更具有吸引力;
2024-06-17 10:05:28
1325
原创 Keil5新建工程详细讲解
单击工具栏中的魔术棒,在弹出的选项窗口中选择“C/C++”标签页,然后单击“Include Paths”右边的“...”按钮,弹出“Folder Setup”对话框,然后将图上的四个文件夹路径(目录)添加进去(实际上不包含“startup”路径亦可)。给drivers组添加文件,需要添加drivers\src下的全部源文件(.c),实际工程中只选择需要的驱动模块以提快编译速度,但misc.c,(一)对四个文件夹内的源文件(.c文件)进行分组管理(“四个分组”)(三)配置宏定义标号(“一处宏定义”)
2024-06-16 01:35:52
6901
1
原创 自然抽样和平顶抽样
在理想情况下,自然抽样是指将连续时间信号在某个特定频率下(通常称为奈奎斯特频率的两倍)进行离散化。平顶抽样的优点在于其线性相位特性,这意味着信号的相位在整个频域内是均匀的,这对于某些应用(如音频回放)来说非常重要,因为它减少了失真的可能性。自然抽样和平顶抽样是两种信号处理和采样技术,它们在音频信号处理、信号重建以及数字信号处理中有着不同的应用。(也称为理想抽样或无失真抽样):样值脉冲的幅度随原始信号m(t)的幅度而变;(也称为线性相位抽样或阶梯滤波器抽样):每个样值脉冲的顶部是平坦的;
2024-06-15 17:49:12
3097
原创 通信原理抽样定理和PAM调制解调硬件实验
在抽样脉冲的时间内,自然抽样的抽样信号的顶部是“曲形”的,其形成的包络面与原信号完全契合,由此可知自然抽样的顶部保持了原信号的变化规律。(2)将信号源上S1、S2、S3依次设为10000000、10000000、10000000,将S5拨为1000,使NRZ(抽样脉冲)输出速率为128K,抽样频率为16K:NRZ频率/8(实验中的电路NRZ为1时抽样,为0时保持),在平顶抽样中,抽样脉冲为窄脉冲;
2024-06-14 14:02:44
3932
原创 通信原理第七章复习笔记
通信原理第七章 数字带通传输系统 数字调制:用数字基带信号控制载波,把数字基带信号变换为数字带通信号(已调信号)的过程;数字带通传输系统:包括调制和解调过程的数字传输系统;
2024-06-13 17:27:30
2779
3
原创 通信原理第六章复习笔记
通信原理第六章 数字基带传输系统 数字基带信号:数字信号所占的频谱是从零谱或很低频率开始;数字基带传输系统:在某些低通有限信道中,基带信号可以不经过载波调制直接传输;数字带通传输系统:需要经过调制和解调过程的传输系统;
2024-06-11 15:03:53
2542
2
原创 通信原理第五章重点笔记
通信原理第五章 模拟调制系统:把调制信弓搭载到载波上,使载波的某些参数按照调制信号的规律而变化某种高频周期振荡信号,如正弦波。受调载波称为已调信号,含有消息信号特征。:调制的逆过程,从已调信号中恢复消息信号。调制目的:把基带信号转换成适合在信道中传输的已调信号,匹配信道特性,;进行频谱搬移,;扩展系统带宽,提高系统抗下扰能力;模拟调制是以正弦信号作为载波幅度调制(线性)AM DSB SSB VSB角度调制(非线性)FM PM一、幅度调制(线性调制原理)
2024-06-10 18:30:00
2304
原创 通信原理第四章重点笔记
通信原理第四章 信道一、信道以传输媒质为基础的通信通信,其功能是将信号从发送端传送到接收端;二、信道的定义及分类(传输媒质)有线信道——明线、电缆、光纤无线信道——可以传输电磁波空间调制信号——研究调制、解调问题编码信道——研究编码、译码问题3. 按不同:分为恒定参量信道、随机参量信道(1)(无形的、自由空间、水域)——指电磁场在自由空间所经历的传播路径;电磁波的传播分为:地波、天波(电离层反射波)和视线传播;
2024-06-09 16:09:24
1453
2
原创 进入sudo的不同方法与区别
2. sudo -i: 为了频繁的执行某些只有超级用户才能执行的权限,而不用每次输入密码,可以使用该命令。提示输入密码时该密码为当前账户的密码。3. sudo命令:暂时切换到超级用户模式以执行超级用户权限,是当前用户切换到root,然后以root身份执行命令,执行完成后,直接退回到当前用户,通过sudo的配置件/etc/sudoers来进行授权。1. su 用户名: 切换到某用户模式,提示输入密码时该密码为切换后账户的密码, 不加用户名默认是切换为root用户,切当前目录不改变,其他。
2024-06-06 23:34:18
837
原创 通信技术振幅键控(ASK)调制与解调硬件实验
(2)模块7的S2设置为ASK-NRZ频率的16倍,如ASK-NRZ为8K时,S2为128K,即拨为1000,观察模块4的ASK-OUT处的波形,把电位器W3顺时针拧到最大,并调节电位器W1(改变判决门限),直到ASK-DOUT处观察到稳定的PN码,观察并记录ASK-DOUT处波形,并与信号源产生PN码进行比较;数据分析:1.由(1)和(3)对比可知,改变载波的频率,输出波形保持一致,ASK信号的解调与产生基本保持一致,并且ASK信号的解调存在一定的时延性,顶部和底部还保留着低通滤波输出形状。
2024-06-05 21:13:13
3776
原创 正则表达式
正则表达式含义:正则表达式是由一些具有特殊含义的字符组成的字符串,多用于查找、替换符合规则的通俗来讲就是按照某种规则来匹配符合条件的字符串。
2024-06-02 20:49:04
1110
原创 嵌入式Linux复制剪切删除指令详解
c. 通常情况下,复制的都不是空文件夹,所以直接使用 cp 复制空文件会失败,如果想把该目录下的子文件及子文件夹都复制过去,则需要加上 -r 选项,用法。上述命令指新建 why 目录,并且在 why 目录下新建一个 my.sh 的脚本文件,使用 rm -r -i + 目录名 删除目录。此时目标文件必须为一个目录名。(2)退出 tmp 目录,在家目录下新建 she2 目录,然后将 she1 目录剪贴到 she2 目录下;上述命令指新建文件 test1,新建目录 my,将文件 test1 移动至目录 my;
2024-05-31 22:35:31
1554
原创 数字信号处理实验五:FIR数字滤波器设计与软件实现
两种方法设计的滤波器都能有效地从噪声中提取信号,但等波纹最佳逼近法设计的滤波器阶数低得多,当然滤波实现的运算量以及时延也小得多,从图可以直观地看出时延差别。3、根据滤波器指标选择合适的窗函数,计算窗函数的长度N,调用MATLAB函数fir1设计一个FIR低通滤波器。4、重复第2步,滤波器指标不变,但改用等波纹最佳逼近法,调用MATLAB函数 remezord和remez设计FIR数字滤波器。本实验为综合性实验项目,要求通过利用MATLAB软件编写程序,设计FIR数字滤波器,并绘制波形。
2024-05-29 18:37:21
2410
2
原创 数字信号处理实验四:IIR数字滤波器设计及软件实现
3、用脉冲响应不变法设计一个巴特沃斯低通数字滤波器,指标要求采样频率80 kHz,通带边界频率为4 kHz,通带最大衰减为0.5 dB,阻带边界频率为20 kHz,阻带最小衰减为45 dB。、设计一个工作于采样频率80 kHz的巴特沃斯低通数字滤波器,要求通带边界频率为4 kHz,通带最大衰减为0.5 dB,阻带边界频率为20 kHz,阻带最小衰减为45 dB。3.掌握MATLAB的工具箱中提供的模拟滤波器转数字滤波器的相关的设计函数的应用。
2024-05-28 19:06:49
3856
原创 通信电路基础高频小信号放大实验
1.掌握小信号调谐放大器的基本工作原理;. 掌握谐振放大器电压增益、通频带及选择性的定义、测试及计算;. 了解高频小信号放大器动态范围的测试方法;4. 熟练掌握multisim软件的使用方法,并能够通过仿真了解到电路的一些特性以及各电路元件的作用。5. 了解双调谐谐振放大器的电压增益、通频带及选择性。
2024-05-27 19:57:56
3597
原创 Vim安装与配置教程(解决软件包Vim没有安装可候选)
在Linux系统中,当我们使用apt-get install vim命令安装Vim 编辑器时,如果系统中不存在该软件包或者仓库中没有可用的候选版本,就会出现类似上述的错误提示信息。(4)将安装包进行卸载,如果需要彻底删除,可执行sudo apt-get --purge remove删除该软件包及其所依赖的,不再使用的软件包。点击我的虚拟机,右键选择设置,点击网络适配器,对网络进行设置,选择NAT模式,在NAT模式下可实现IP共享,实现联网功能。2. 输入Y/y,回车确定,显示安装包无法下载;
2024-05-26 12:52:31
5131
6
原创 信息论与编码技术线性分组码的实现
1. 掌握使用matlab利用线性分组码的生成矩阵生成码字2. 掌握使用matlab利用线性分组码的校验矩阵验证一个接收码字是否是许用集的码字3. 掌握使用matlab由生成矩阵快速得到校验矩阵1. 已知生成矩阵信息序列m=[0101],求编码后的码字C;要求:将最后编码结果C显示出来,具体显示内容如下:该[n,k]线性分组码的输出码字为:C(文字内容不能修改,其中n,k,C 3处需显示具体的值);
2024-05-23 20:59:16
1608
1
原创 嵌入式操作系统shell编程
1. 了解和熟悉创建并使用脚本的步骤;2. 熟悉bash的控制结构;3. 掌握shell编程的基本方法;4. 掌握Shell脚本的变量和参数;5. 掌握Shell脚本的分支和循环控制流程。
2024-05-21 20:40:03
1011
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人