用Proteus仿真一个STM32显示电路
嵌入式工程师成长日记 2025-01-03

一、系统功能

STM32主控系统中,我们实现了一个4×4的键盘矩阵界面,用于学生学号的便捷输入。用户只需按下对应的数字键,LCD1602液晶显示屏便会即时显示输入的数值。一旦用户连续输入了8位数字,通过按下确认键,输入的学号将被锁定在屏幕上,方便后续的操作和确认。除此之外,系统还融入了一个实用的计时功能。当用户按下计时按钮时,系统会迅速捕获当前的时间信息,并在LCD1602屏幕上显示出来,为用户提供即时的时间参考。当然,考虑到用户可能需要重新输入学号,我们也特别设计了一个删除按钮。用户只需轻按此按钮,屏幕上的当前学号便会被清空,为用户再次通过4×4键盘矩阵输入新的学号提供了方便。整个系统不仅提供了流畅的数字输入和确认功能,还具备时间显示和学号重置的便捷性,为用户带来了极大的便利。

二、系统设计原理

矩阵键盘是一种基于行列交叉检测原理的输入设备,它利用多行多列的按键布局,每个按键位于行与列的交叉点上。在初始状态下,所有的行线和列线都维持在高电平。当用户按下某个按键时,该按键会连接其所在的行和列,导致该行的电平降低,而对应列的电平升高。

矩阵键盘的扫描过程大致如下:

初始化:首先,系统将所有行线设置为高电平,并将所有列线配置为输入模式,以便监测电平变化。

行扫描:随后,系统开始逐行扫描,每次将一行设置为低电平,而其他行保持高电平。

列检测:在某一行被设置为低电平的同时,系统会检查所有列线的电平状态。如果检测到某个列线从高电平变为低电平,则表示该行与该列交叉点上的按键被按下。

记录信息:一旦检测到按键按下,系统会记录下该行和列的信息,并将该行重新设置为高电平,以便进行下一行的扫描。

重复扫描:这个过程会重复进行,直到所有行都被扫描过。

按键识别:通过分析哪些行和列被激活,系统可以确定具体是哪个按键被按下,并将其转换为相应的按键代码,供系统进一步处理。

DS1302实时时钟模块的工作原理基于其时钟计数和数据存储功能。该模块通过外接晶振产生稳定的时钟脉冲信号,这些信号经过内部电路的分频处理,形成不同频率的计数信号,用于实时更新时钟/日历寄存器的值。

在数据存储方面,DS1302内部集成了RAM,用于存储当前的年、月、日、时、分、秒等时间信息。通过一套复杂的控制逻辑,DS1302能够实现对这些数据的读写操作,确保时间的准确记录和读取。

简而言之,DS1302实时时钟模块通过外接晶振产生稳定的时钟信号,并经过分频和计数处理来更新时钟/日历信息,然后将这些信息存储在内部RAM中,为用户提供可靠的实时时间服务。

数码管是一种常用的电子显示器件,它通过内部的LED(发光二极管)阵列来显示数字或字符。这些LED按照特定的模式排列,每个LED段代表数字或字符的特定部分(如abcdefg)。数码管有两种常见的连接方式:共阴极和共阳极,这两种方式决定了LED的点亮方式。

为了显示特定的数字或字符,数码管的每个LED段(ag)都可以被单独控制。例如,要显示数字“2”,控制系统会激活abcde这五个LED段,并关闭fg段。通过精确控制这些LED段的亮灭组合,数码管能够清晰地显示从09的数字以及某些特定的字符或符号。这种灵活的控制方式使得数码管在多种电子设备中得到了广泛应用。

三、系统硬件设计

四、系统软件设计

//时间显示 if(time==1){ for(j=0;j<8;j++){ GPIOB->ODR=0x0001</选择哪个数码管显示 switch(j){ case 0:GPIOA->ODR=number[day/10];break; case 1:GPIOA->ODR=number2[day%10];break; case 2:GPIOA->ODR=number[shi/10];break; case 3:GPIOA->ODR=number2[shi%10];break; case 4:GPIOA->ODR=number[fen/10];break; case 5:GPIOA->ODR=number2[fen%10];break; case 6:GPIOA->ODR=number[miao/10];break; case 7:GPIOA->ODR=number[miao%10];break; } HAL_Delay(1); }  } else{//显示数码管 Numbertwo=Number; for(j=0;j GPIOB->ODR=(0x0080>>(8-show_set))>>j;//选择哪个数码管显示 GPIOA->ODR=number[Numbertwo%10];//数码管引脚 Numbertwo=Numbertwo/10; HAL_Delay(1); }  }

五、结果展示

 


声明: 本文转载自其它媒体或授权刊载,目的在于信息传递,并不代表本站赞同其观点和对其真实性负责,如有新闻稿件和图片作品的内容、版权以及其它问题的,请联系我们及时删除。(联系我们,邮箱:evan.li@aspencore.com )
0
评论
  • 相关技术文库
  • EDA
  • 仿真
  • CAD
  • 芯片
下载排行榜
更多
评测报告
更多
广告