| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 嵌入式 -> 【STM32CubeMX学习】数码管显示 -> 正文阅读 |
|
[嵌入式]【STM32CubeMX学习】数码管显示 |
1、原理如下图所示LEDSEG1、LEDSEG2分别有4个数码管,共8个,编号0~7。 控制数码管显示需要用到74HC138、74HC595这两个芯片。 HC138_A0~A2控制LEDSEG_CH1~8,通过这8个引脚选中一位数码管、HC595_SCLK/HC595_LCLK/HC595_DATA控制HC595_QA~QH,这8位决定当前选中的数码管显示什么内容。因此,我们只需要控制MCU的HC138_A0~A2、HC595_SCLK/HC595_LCLK/HC595_DATA这6个引脚即可。 2、74HC138????????74HC138是一个3进8出的38译码器,通过A2、A1、A0这三位输入一个十进制数,转化为输出的8位二进制数。比如想选中第6位数码管,那么A2、A1、A0 = 110 = 0x6,此时Y6为低电平,其他为高电平,也就选中了第6位数码管,74HC138的真值表如下图。 ?3、74HC595各引脚作用分析: HC595_DATA(SDI):串行数据输入引脚。 HC595_SCLK(SFTCLK):移位寄存器时钟引脚,当处于上升沿时,移位寄存器中的数据整体后移一位,并且新的数据从HC595_DATA输入。 HC595_LCLK(LCHCLK):存储寄存器时钟输入引脚。当处于上升沿时,数据从移位寄存器转存到存储寄存器。在通过HC595_SCLK将所有数据移完后,需要给HC595_LCLK一个上升沿,将数据存储起来。 4、代码 代码的思路如下: ①将数据写到HC595_DATA,然后拉高HC595_SCLK将数据移位,以此类推,将8位数据写入移位寄存器。 ②分别写A2、A1、A0选中某一位数码管 ③拉高HC595_LCLK将显示数据保存到存储寄存器,此使选中的那位数码管就会显示相应的内容。 使用STM32CubeMX设置6个引脚如下: smg.h:
?smg.c:
在main.c文件加入#include"smg.h",在main函数加入下面代码:
运行结果如下: |
|
嵌入式 最新文章 |
基于高精度单片机开发红外测温仪方案 |
89C51单片机与DAC0832 |
基于51单片机宠物自动投料喂食器控制系统仿 |
《痞子衡嵌入式半月刊》 第 68 期 |
多思计组实验实验七 简单模型机实验 |
CSC7720 |
启明智显分享| ESP32学习笔记参考--PWM(脉冲 |
STM32初探 |
STM32 总结 |
【STM32】CubeMX例程四---定时器中断(附工 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 8:32:58- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |