自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Linux基本命令(初学者必备)

sudo apt-get install 软件的名字下载vim。

2024-09-21 12:31:30 397

原创 Pytorch 下载失败原因

在官网看到,它需要python3.8-3.11的环境。过高和过低的版本都不行。重新下载python合适的版本就解决了。

2024-03-31 02:48:39 786

原创 独立看门狗和窗口看门狗

1. 独立看门狗:- 用于监视整个系统的运行状态。- 当系统出现故障或停滞时,独立看门狗会触发并重新启动系统,以避免系统永久停止或陷入无限循环。- 独立看门狗通常是一个独立的硬件模块,其操作不受主处理器的控制,因此即使主处理器出现故障,独立看门狗仍然能够触发系统的重启。2. 窗口看门狗:- 也称为软件看门狗(Software watchdog)。- 与独立看门狗不同,窗口看门狗通常是通过软件实现的一种监控机制。

2024-03-30 23:45:44 1005

原创 GitHub文件克隆到本地(GitHub desktop快速上手版)

在github网页上找到你要clone的仓库,点击【code】中选择如下面url复制。

2024-03-30 22:31:42 1155

原创 独立看门狗

独立看门狗(Independent Watchdog,简称IWDG)是一种微控制器中常见的硬件保护机制。它的主要作用是使用独立看门狗的如果系统出现异常,程序无法喂狗,导致独立看门狗的计数器溢出,系统就会认为出现了故障,并执行相应的操作,例如重置系统。通常情况下,独立看门狗适用于那些对系统稳定性和可靠性要求比较高的场景,比如嵌入式系统、工业控制系统、汽车电子系统等。在这些场景下,即使程序出现异常,也需要保证系统能够自动恢复到正常工作状态,以避免因为故障导致系统长时间无法运行,带来不可预测的后果。

2024-03-27 21:41:51 1731

原创 Quartus II仿真出现错误

找不到modelsim地址,原来是我下载了.exe,但没有双击启动安装ase文件夹呀!

2024-03-26 22:08:10 449

原创 PWM实现电机的正反转和调速以及TIM定时器

在这里,使用了TIM定时器,只能说像EXTI外部中断、TIM定时器这些是基础呀~之前忘了写time.c的总结。

2024-03-24 22:19:21 967

原创 红外遥控器的使用和详细解释

总之,EXTI 中断用于检测红外接收器输出状态的变化(连接到引脚 PA8),而 NVIC 用于配置和管理 EXTI 中断,以确保在中断发生时执行相应的 ISR (`EXTI9_5_IRQHandler()`)。- 在 `EXTI9_5_IRQHandler()` 中,会检查中断标志,确定是哪个外部中断触发了中断。在这个例子中,它处理了与 PA8 引脚 (红外接收器) 相关的中断。- `EXTI9_5_IRQHandler()` 函数是用于处理 EXTI 线 8 中断的中断服务程序 (ISR)。

2024-03-24 21:16:37 830 1

原创 串口printf输出、systick、time定时器、外部中断的关系以及超声波实现身高测量

而不是标准输出设备(比如屏幕)。这就是printf重定向。这段代码实现了 printf 的重定向。在嵌入式系统中,常常需要重定向 printf,以便。

2024-03-23 22:35:40 1698 1

原创 光敏传感器控制led灯的亮度

这样,在调用printf()函数时,输出的数据就会自动发送到USART1串口上。这通常需要在编译器或者工程设置中进行配置,以确保printf()函数正确地发送数据到串口。在这里使用了adc、pwm和串口。这里串口用的代码就是上几篇的usart.c和usart.h,没有改动。但在一些教程 ,好像需要串口通过重定向标准输出流(stdio.h库中的标准输出函数)到USART1串口。经过实验,这样就能实现。在这里,串口直接使用printf,就会输出光度值。怎么printf重定向?

2024-03-21 11:46:20 1947 1

原创 串口与中断的关系和使用--详细解释

在你描述的情况下,如果ESP8266没有连接好(可能是硬件连接问题或者初始化失败等原因),导致了在 `ESP8266_Init()` 函数中的初始化不成功,而且 `ESP8266_SendCmd()` 函数在检查连接状态时也一直返回失败,处理器在执行当前任务的同时,会检测到这个中断请求,然后跳转到预先设定好的中断服务函数(ISR),这个函数会处理串口接收到的数据。对于串口通信来说,如果串口数据接收的实时性很重要,你可能会将串口中断的优先级设置得比其他中断更高,以确保及时处理接收到的数据。

2024-03-21 11:01:47 3923 1

原创 半加器和全加器的原理和对比

自用 笔记

2024-03-20 10:25:23 1221 1

原创 按键中断、systick()函数和exti()函数的使用和区别

芯片外设(Peripheral)是指嵌入式系统中与主处理器核心(CPU)相连的辅助模块或硬件组件,它们扩展了芯片的功能,使其能够执行各种特定任务或处理外部事件。这些外设通常包括各种接口、控制器、传感器、存储设备等,用于连接外部设备或执行特定的功能。芯片外设的功能包括但不限于以下几个方面:1. **通信接口:** 包括串行通信接口(如UART、SPI、I2C)、以太网接口、USB接口等,用于与外部设备进行数据交换和通信。2. **定时器和计数器。

2024-03-19 10:30:36 1004

原创 PWM实现呼吸灯

备注:LED0连接PA6 LED0连接在TIM3_CH1通道。

2024-03-09 14:46:43 205 1

原创 串口实现开关灯及详细注释

这个函数在清空数组或内存块的内容时很常见,例如在你的代码中,在接收完整的数据后,使用 `memset(buffer, 0, sizeof(buffer))` 来清空 `buffer` 数组,以便存储下一次接收到的数据。- 如果接收到结束标志,则将数据从 `buffer[]` 复制到 `rx_buffer[]` 中,清空 `buffer[]`,并设置 `rx_flag` 为1表示接收完成。- 清空 `rx_buffer[]`,将 `rx_flag` 置为0,以准备接收下一次数据。

2024-03-09 13:05:13 899 2

原创 按键库函数开发

@param GPIOx: 选择用于 STM32F405xx/407xx 和 STM32F415xx/417xx 设备的 GPIO 外设的字母 (A..K)。* @param GPIOx: 选择用于 STM32F405xx/407xx 和 STM32F415xx/417xx 设备的 GPIO 外设的字母 (A..K)。* @param GPIOx: 选择用于 STM32F405xx/407xx 和 STM32F415xx/417xx 设备的 GPIO 外设的字母 (A..K)。

2024-03-03 22:54:38 949

原创 STM32f407库函数实现流水灯及详细解释

再右击GOTO进去GPIO_TypeDef。peripheral--外围的。parameter--参数。register--寄存器。configure--装配。右击击GO TO进去。toggle--切换。

2024-03-03 21:35:38 911

原创 自学stm32过程被卡住了两天,暂停了,复盘一下

STM32F4VE 寄存器 流水灯

2024-01-27 21:50:41 476

原创 github面向初学者

1. Pull(拉取):- 想象您和朋友在一起写一篇文章。当您完成您的部分后,您的朋友想要添加他们的想法或编辑您的内容。在 GitHub 中,"pull" 意味着请求将您的更改合并到主仓库中。- 您可以通过 "pull request" 向主仓库的所有者发出请求,要求他们查看并接受您的更改。这是一种协作的方式,使得多个人可以在同一个项目上合作,每个人都可以向项目贡献自己的工作。2. Fork(衍生):- 想象您看到一篇很棒的文章,但您想在上面做一些修改,或者添加一些自己的内容。

2024-01-27 02:37:02 643

原创 自学stm32第六天

串行接口简称串口,也称串行通信接口或串行通讯接口(通常指COM接口),是采用串行通信方式的扩展接口。串行接口 (Serial Interface)是指数据一位一位地顺序传送。其特点是通信线路简单,只要一对传输线就可以实现双向通信(可以直接利用电话线作为传输线),从而大大降低了成本,特别适用于远距离通信,但传送速度较慢。

2024-01-24 23:56:15 968 1

原创 自学stm32第五天

脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术。

2024-01-24 23:36:53 956 1

原创 自学stm32第四天

LED使用库函数开发

2024-01-24 13:52:20 832 1

原创 stm32寄存器实现流水灯

似懂非懂...先存一下。写代码一步步查找文档、慢慢对照怪麻烦的......有没有更好的方法?欢迎讨论。

2024-01-22 15:56:47 474

原创 自学stm32第三天

先复习: 具体代码怎么写?需要阅读相关原理图、文档和手册。一、理解LED电路原理 LED0连接在PF9引脚 当PF9输出高电平(1),灯灭 当PF9输出低电平(0),灯亮 小结论: 如果引脚电平由程序员来改,则为输出 如果引脚电平由外部电路来改变,则为输入 //打开F组时钟//为什么是F组?因为LED0连接在PF9引脚 RCC_AHB1ENR |= (1<<5); //设置PF9

2024-01-22 15:41:58 394

原创 stm32工程创建步骤

把【Groups】那里的名字改成你创建的文件夹的名字(用来放置代码的文件夹)八、创建文件---保存---main.c。

2024-01-20 21:24:49 356

原创 自学stm32第二天

学习过程中的一些疑问

2024-01-20 19:46:32 924

原创 自学stm32第一天

中央处理器(CPU,central processing unit)作为计算机系统的运算和控制核心,是信息处理、程序运行的最终执行单元。CPU 自产生以来,在逻辑结构、运行效率以及功能外延上取得了巨大发展。

2024-01-18 21:33:05 941 1

ARM体系结构ARM体系结构

ARM体系结构ARM体系结构

2024-01-17

空空如也

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

TA关注的人

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