- 博客(24)
- 收藏
- 关注
原创 ECE STM32开发 DAC输出正弦波
功能包括打开串口 GPIO 的时钟、打开串口外设的时钟、将 USART Tx 的 GPIO 配置为推挽复用模式、将 USART Rx 的 GPIO 配置为浮空输入模式、配置串口的工作参数、使能串口。功能包括使能 GPIOA 时钟、使能 DAC 时钟、配置 DAC 的 GPIO、配置 DAC 通道 1&2,使能通道 1 由 PA4 输出、使能通道 2 由 PA5 输出、使能 DAC 的 DMA 请求。编写用来触发 DAC 的通用定时器 TIM2 的配置初始化函数 DAC_TIM_Config。
2024-02-29 21:00:32
768
原创 ECE STM32开发 DMA
调用stm32f10x_usart库中的USART_DMACmd函数,令USART1向DMA发出Tx请求,向串口发送存储在FLASH中的数据。1.调用 bsp_usart_dma库中的USART_Config函数。USART_Config 函数进行的操作有:打开串口GPIO的时钟、打开串口外设的时钟、将USART Tx的GPIO配置为推挽复用模式、将USART Rx的GPIO配置为浮空输入模式、配置波特率、配置针数据字长、配置停止位、配置校验位、配置硬件流控制、配置工作模式、使能串口。
2024-02-29 20:56:07
346
原创 ECE STM32开发 定时器
b) 调用SysTick_Config函数,配置reload寄存器的初始值,配置中断优先级为1<<4-1 = 15,优先级为最低,配置counter计数器的值,配置systick的时钟为72M,使能中断,使能systick。e) 使用for循环语句,使蜂鸣器短鸣0.25s,同时红色LED灯亮起,间隔1s后重复以上操作,共4次,然后蜂鸣器长鸣1s,同时红色LED灯亮起,间隔1s后重复e)步所有过程。c) 调用SysTick_Init函数,配置SysTick为10μs中断一次。a) 设置短鸣计数器变量i=4。
2024-02-29 20:53:38
415
原创 ECE STM32开发 时钟
延时函数参数调试过程:从1000000开始每增加500000测试一次,直到增加至4000000时发现平均间隔约为0.94秒,然后每增加100000测试一次,直到增加至4300000时发现平均间隔约为1.01秒,因此取4300000作为最终参数。3)使用HSE时钟源配置系统时钟为56MHz,原理为SYSCLK = 8MHz * RCC_PLLMul_x(x=2,3…使用HSI时钟源配置系统时钟为56MHz, 原理为SYSCLK = 4MHz * RCC_PLLMul_x(x=2,3…
2024-02-29 20:51:14
339
原创 ECE STM32开发 寄存器
1、按照单片机说明书,对外设基地址、总线外设基地址、端口基地址、寄存器地址、外设RCC地址和APB2外设时钟使能寄存器地址进行宏定义。其中,总线外设基地址使用相对外设偏移量定义,端口基地址使用相对总线外设偏移量定义,寄存器地址使用相对端口偏移量定义。让绿灯发光则只调整0-3位,让红灯发光则只调整20-23位,让蓝灯发光则只调整4-7位。c)根据电路原理,使用端口输出数据寄存器配置输出电平为低电平即可让相应灯发光。a)使能GPIO时钟,因使用GPIOB端口,所以令第3位(IOPB)为1。
2024-02-29 20:49:07
901
原创 ECE STM32开发 呼吸灯
7.根据呼吸周期设置决定 TIM3 发出中断周期的各变量值,计算公式为发出中断周期=呼吸周期=(时钟频率/预分频)*计数周期,本实验发出中断周期为(72000000/10000)*12960=1.8s。2.调用bsp_spwm库中的TIMx_Breathing_Init函数,进行GPIO输出初始化,TIM3时基初始化、输出初始化、技术使能,嵌套向量中断控制器(NVIC)设置。5.编写 TIM3_IRQHandler 函数,当 TIM6 发出中断请求时,该函数将 LED 灯颜色按照红绿蓝白的顺序循环设置。
2024-02-29 10:21:22
437
原创 ECE STM32开发 PWM
3.编写TIM6的中断服务函数TIM_IRQHandler,使用TIM_GetITStatus函数判断TIM6是否发生中断请求,若有中断请求则根据LED的当前状态修改CCR值从而改变颜色,七种颜色顺序为赤橙黄绿青蓝紫,最后使用TIM_ClearFlag函数清除待处理请求。1.调用bsp_color_led库中的COLOR_TIMx_LED_Init函数,进行GPIO输出初始化和TIM3时基初始化、输出初始化、计数使能。在bsp_color_led.c中将TIM3的预分频设置为7,周期设置为255。
2024-02-29 10:19:00
360
原创 ECE STM32开发 LED
考虑到循环发光,因此发红光时让绿灯和蓝灯熄灭,红灯亮起;其中灯亮原理为令端口引脚为低电平则有电流通过,灯灭原理为令端口引脚为高电平则无电流通过。若检测到按键按下,则使用while语句持续检测按键状态,直到按键释放,按键释放后该函数返回1;1.对两个按键的时钟、端口和引脚进行定义,对LED的时钟、端口和引脚进行定义。d)初始化GPIO对LED端口的写状态,模式为推挽输出,速率为10MHz。e)初始化GPIO对按键端口的读状态,模式为浮空输入,速率为10MHz。h)按下按键2时,计数器归零,所有灯熄灭。
2024-02-29 10:17:09
381
原创 小学期分组对抗赛WP
Windows系统:版本 Windows 11 专业版版本 23H2安装日期 2023-07-20操作系统版本 22631.2271体验 Windows Feature Experience Pack 1000.22674.1000.0Kali系统:Linux Stark 6.4.0-kali3-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.4.11-1kali1 (2023-08-21) x86_64 GNU/Linux。
2023-09-11 05:37:30
389
原创 MATLAB实验——干扰与抗干扰
对wave_groups的频谱进行合并,生成频谱图。可以看出有6种远高于其它频率的信号。使用find函数找到幅值大于2000×32Hz的信号,在下一步中予以删除。对三维曲面图分析可知,共有8个平面,每个平面有32条竖直方向的线。其中有6个平面的高度远高于剩下的两个面,高度约为4096。分析频谱图可知,生成了742.896Hz、7800.4Hz和16925.1Hz三种频率的噪声。分析三维曲面图可知,上一步中较高的6个平面已经消失,说明干扰信号删除成功。
2023-08-11 13:08:54
1506
1
原创 MATLAB实验——卷积与滤波
对频谱图进行分析,可以看出降噪后的音频信号只保留了220Hz-524Hz,说明降噪成功。对降噪后的音频执行sound函数,可以听到音频依旧有噪声,不如原音频清晰,但与加噪后的音频相比有明显改善,可以听出音频内容。对加噪后的音频执行sound函数时,可以听到嘈杂的噪声,很难听出原音频具体内容。对频谱图进行分析,可以看出原音频主要有2Hz、220Hz、262Hz、330Hz、392Hz、440Hz、524Hz、567Hz、659Hz的信号。
2023-08-11 12:58:17
544
1
原创 MATLAB实验——音频处理
选取1首歌曲《勾指起誓(伴奏)》,导入MATLAB并进行处理,处理方式包括:剪辑、改变采样位宽、波形压缩、降采样、加噪,并导出为新的音频文件。
2023-08-11 11:50:30
1049
4
原创 Virginia维吉尼亚密码实现与分析(Python实现)
本次实验完成了维吉尼亚密码的实现与分析。不难发现,在使用维吉尼亚密码加密时,密钥长度越长,破译难度越大,并且破译难度和密钥是否有实际意义 无关。维吉尼亚密码的密钥空间大小为26^m,所以即使 m 的值很小,使用穷尽密钥搜索方法也需要很长的时间,但使用计算机能大幅降低计算时间。维吉尼亚密码作为多表代换密码固然比单表代换密码更为安全,但安全程度有限,其最大的弱点就是可以通过 Kasiski 测试法化为多个单表代换密码,从而将破译难度降为近似于单表代换密码。
2023-06-12 22:26:52
4805
6
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人