利用stm32串口中断进行数码管显示

串口通信一般有三种形式,即查询方式、中断方式和DMA方式。查询方式(也有人称为轮询法)效率不高,在需要查询时CPU的占用很高,在程序上的体现就是用循环不断查询标志位状态,在查询时CPU不做其他事,因此效率是比较低的。中断方式的话,只有在发送中断、接收中断、传输完成中断等的中断时会进入串口中断服务程序,这样CPU就不用等在那儿,该干嘛干嘛,大大提高了效率,因此本次实验采用中断方式,将利用串口中断,在中断服务程序中读取串口输入的数值,然后在数码管上显示出该数值。
摘要由CSDN通过智能技术生成

为了使得本次实验的效果更加明显,我将利用串口中断,在中断服务程序中读取串口输入的数值,然后在数码管上显示出该数值。

一、数码管配置

         在进行本次的实验之前,由于需要使用数码管进行实验结果的显示,我们首先需要数码管的真值表,我这边使用的是普通的共阳极数码管,所以真值表如下:

        

0

1

2

3

4

5

6

7

0xc0

0xf9

0xA4

0xB0

0x99

0x92

0x82

0xF8

8

9

a

b

c

d

e

f

0x80

0x90

0x88

0x83

0xC6

0xA1

0x86

0x8E




   以上准备工作完成以后,可以正式进入本次实验了。很明显,我们用到了数码管和串口,因此我们至少需要数码管配置函数以及串口配置函数这两个配置函数。对于数码管的配置函数,由于我使用的普中PZ6806L型的开发板,通过查询原理图发现数码管的各个段对应于LED1~LED8,然后接到GPIOC的0~7管脚上,因此配置好GPIOC就可以了&#x

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值