STM32模拟时钟

在STM32F103RBT6开发板上实现模拟时钟功能,包括时间显示、整点报时、方向矫正等。使用软件SPI驱动液晶屏,实现数字和汉字显示,并通过外部中断驱动按键进行时间调整。无源蜂鸣器通过软件控制产生不同音调,但因未连接到硬件PWM,无法直接硬件驱动。
摘要由CSDN通过智能技术生成

项目平台:STM32F103 是一款 Arm 架构Cortex-M3芯片。此次活动使用的口袋开发平台上采用的是STM32F103RBT6,具有128KB Flash,20KB Ram,足以满足大部分的简单需求。作为一块完整的开发板,该口袋平台上具有独立按键、蜂鸣器、姿态传感器、LCD等多种基础的片外外设。
本项目实现模拟时钟显示、更改时间、整点报时、正向显示始终朝上功能。
在这里插入图片描述
在这里插入图片描述

所用板子资源介绍:定时器、LCD——SPI、协议按键——外部中断、MPU6050——I2C协议、SD卡——硬件SPI及FATF系统
液晶驱动: 该液晶屏为串行spi接口,实际硬件连接并未接到stm32硬件spi接口,所以采用软件模拟spi,为提高刷新速率,对引脚操作采用直接寄存器操作,本项目实现模拟时钟显示及数字时钟功能,因此液晶显示需要完成指定位置图片显示,画线,数字显示,汉字显示,翻转显示等功能。
按键驱动部分: 配置按键引脚为输入上拉模式,循环扫描,硬件有4个按键,即可实现确定返回,上下调节功能,无需复杂功能,单击按键功能即可满足功能。

蜂鸣器驱动部分:硬件采用无源蜂鸣器,通过不同频率使其导通,即可播放不同音调,由于蜂鸣器驱动没有接到stm32硬件定时器输出引脚,无法直接通过硬件pwm驱动。
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值