资讯详情

红外遥控门锁【1】—— 项目介绍及材料准备

红外遥控门1

  • 前言
  • 项目介绍
    • 项目要求
    • 项目分析修改
      • 第一,先看硬件需要用什么。
      • 看看软件需要构建什么驱动程序?
  • 模块选购
  • IO分配
  • 总结
    • 共享软件资源
    • 共享硬件资源

前言

我将分享我所做的专栏STM32项目(),从收到项目要求到最终调试成品,

教程步骤:

(1)项目要求分析修改 (2)模块采购 (3)资源分配(IO列出硬件设计设计pcb板) (4)编写和测试各模块驱动代码 (5)模块集成 (6)最后调试

我猜大部分人刚开始接触STM32个朋友会觉得第四步很难吗?一开始不知道怎么修改外设的驱动,感觉驱动一个IO口点亮一个LED比51麻烦大得多。

现在看来,它实际上并不熟悉,也不知道方法。在理解了方法并熟悉了方法后,各种外部模块都可以快速配置(当然,一些没有玩过的模块仍然需要一些时间)。外部设备和模块驱动是本专栏的教学重点,然后分享一些调试经验。如果你感兴趣,你可以订阅专栏!

项目介绍

项目要求

以下是我收到的原始要求:

单片机 最小系统 LCD1602液晶显示模块 蜂鸣器模块 LED指示灯模块 继电器驱动模块 矩阵键盘模块 AT24C02芯片模块 红外遥控模块 时间模块。 1.采用AT24C02芯片可以保存存储的密码。密码为6位,可随意更改,更改时输入两次确认。 2.采用矩阵按钮输入、1602液晶显示、继电器模拟解锁、解锁指示灯。继电器具有常开常闭触点、外接电磁锁等负载。 3.有管理员密码,即使你看着密码,你也不怕。你可以找到它。 4.密码输入错误3次,蜂鸣器响,报警锁定。 5.LCD背光采用光敏自动识别,白天不亮黑天亮,可以节约电能,随时清晰看屏幕。 6.具有与按键功能相同的红外遥控功能。 7.1602上应显示年月日时钟。 8.开关锁状态应显示在1602上。

项目分析修改

第一,先看硬件需要用什么。

1、看有没有不熟悉的东西? 我首先注意到的是AT24C02芯片模块。我没用过,也没见过这个模块。看下面的第一点,很明显数据是用来存储掉电保护的。STM32本身可以使用内部Flash使用该模块作为存储数据作为存储数据进行电源保护。 问问老板,项目书不要求使用51最小系统板。那行,改。老板很清爽。 .

芯片:STM32F103RCT6

2.查看需要使用的外设模块:

LCD1602液晶显示模块: 哇!哪有stm32驱动1602的?换OLED。OLED美也可以显示中文。 . 显示屏:OLED . 蜂鸣器、LED红外遥控指示灯、继电器、矩阵键盘 这些都没啥好说的,很常见的模块啦!不过红外遥控我没用过,之前研究过,没搞明白,有点小怕。

看看软件需要构建什么驱动程序?

1、数据掉电保护: 这是使用stm32内部的flash实现的,flash我以前用过阅读和写作。我必须理解小麻烦。幸运的是,我用过,否则我不敢接。 . 2、蜂鸣器、LED指示灯、继电器: 这三个都一样,点亮一个LED没啥区别,使用IO口作为输出。 . 3、矩阵键盘: 4x4矩阵按钮,使用外部中断资源。x幸运的是,至少有4个外部中断资源。stm32外部中断资源多,可随意使用。 . 4、红外遥控 我没用过红外遥控器。不知道怎么驱动!看例程。 随便可以找到单模块例程的东西。正点,野火。 运行例程,红外使用IO口:PB9.只要知道这一点。我不需要注意它是否使用定时器或中断。然后直接使用例程。

模块选购

芯片

MCU:STM32F103RCT6 在这里插入图片描述

显示模块

OLED模块: 选IIC通信接口不需要高刷新率,IIC通信就够了。引脚少,驱动现成。

红外遥控模块

红外遥控器及接收模块:

动作模块

继电器:

指示灯

LED指示灯: 一绿一红。

警报模块

蜂鸣器: 5V买有源的,不需要PWM驱动,点亮一个LED一样简单。

按键

按键: 能用就行。

IO分配

这是为了确定每个模块使用哪个模块IO确定后不能更改口腔(硬件设计PCB板打出来后,我想再改一次,但我必须重新设计。PCB板不便宜)。所以我们。 必须确定软件设计IO口。

红外遥控器的按键是十七个,我们的按键矩阵少了一个,问题不大。

因为这个项目IO用定时器固定口除红外外外外IO口,其他都是随意的,所以这个项目是IO没什么好说的。

如果我们需要使用定时器的资源通道,我们都需要使用固定的资源通道IO我们需要检查手册。例如,我需要使用四个IO输入PWM当驱动电机时,我们必须使用定时器(四个通道)TIM_CH1、TIM_CH2、TIM_CH3、TIM_CH4)。

下图来自STM32芯片数据手册。本手册更重要,请查看IO需要使用资源。 可见定时器2TIM二是四个通道PA0~PA3。

一般来说,定时器的通道和串口需要固定。当我们需要使用这些资源时,我们需要检查手册。其他资源,如普通资源IO;IIC通讯的SDA、SCL;SPI通讯接口(stm32是有硬件IIC、SPI接口。如果使用程序模拟时序通信缓慢,可以转换为固定硬件IO这些都可以随意设置。

总结

完成项目前期工作! 等PCB打板后可开始调试工作。 后续工作主要分为两类:

1.每个模块的驱动编写(主要是修改例程)la) 2.整合调试(这部分很麻烦,不知道怎么写文章,可能是教一些调试小经验,也可能是写调试麻烦的地方)

这个项目更容易复制,外设模块不多,感兴趣的朋友可以买材料跟着哦!

以下是硬件设计,不需要,面包板杜邦在线(按钮只是另一个控制外设,按钮的功能与红外遥控器相同,所以不想玩PCB朋友,直接面包板,杜邦线)。

软件资源分享

stm32工程源码

硬件资源分享

红外遥控门锁项目PCB板Altium Designer设计文档 红外遥控门锁原理图.pdf

标签: 4x21继电器模块

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台