基于STM32的八位数码管显示Proteus仿真设计

基于STM32的八位数码管显示Proteus仿真设计

  • 1.主要功能
  • 2.仿真设计
  • 3. 程序设计
  • 4. 设计报告
  • 5. 资料清单&下载链接

基于STM32的八位数码管显示Proteus仿真设计(仿真+程序+设计报告+讲解视频)

仿真图proteus 8.9

程序编译器:keil 5

编程语言:C语言

设计编号:C0093

1.主要功能

以STM32单片机为核心,设计八位数码管显示仿真实验。

1.使用Proteus仿真软件和STM32F103系列芯片设计数码管显示电路

2.开始仿真后数码管显示87654321.显示数字可以修改为其他内容

3.使用STM32CubeMx图像化工具新建工程。

4.数码管使用74HC245和74HC138作为驱动电路

主要硬件设备:STM32F103C6+数码管+74HC245+74HC138

资料下载链接(可点击):

通过百度网盘分享的文件:KEY_C0093

链接:https://pan.baidu.com/s/1AR-5aXgClKMVHf-Q-84QcA?pwd=ksjd

提取码:ksjd

以下为本设计资料展示:

2.仿真设计

打开仿真工程,双击proteus中的单片机,选择hex文件路径,然后开始仿真。

仿真显示87654321

img

3. 程序设计

程序是用keil5 mdk版本打开的,如果打开有问题,核实下keil的版本。程序是HAL版本编写的,有stm32cubemx配置文件。有注释可以结合讲解视频理解。

img

img
数码管显示驱动代码

#include "smg.h"
#include "system.h"
#include "gpio.h"//共阴极数码管显示0~F的段码数据
uint8_t gsmg_code[17]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
//数码管端口8位数据同时操作,不影响高位
//写入数据到8位端口,数据低位对应端口低引脚
//GPIO_Pin:8位端口低位引脚
//data:写入数据
void SMG_Write_Data(u8 data)
{
#if 1uint16_t Set_Pins = 0, Rst_Pins = 0;//DataDir('O');if(data & 0x01) Set_Pins |= LED0_Pin;else Rst_Pins |= LED0_Pin;if(data & 0x02) Set_Pins |= LED1_Pin;else Rst_Pins |=  LED1_Pin;if(data & 0x04) Set_Pins |=  LED2_Pin;else Rst_Pins |=  LED2_Pin;if(data & 0x08) Set_Pins |=  LED3_Pin;else Rst_Pins |=  LED3_Pin;if(data & 0x10) Set_Pins |=  LED4_Pin;else Rst_Pins |=  LED4_Pin;if(data & 0x20) Set_Pins |=  LED5_Pin;else Rst_Pins |=  LED5_Pin;if(data & 0x40) Set_Pins |=  LED6_Pin;else Rst_Pins |=  LED6_Pin;if(data & 0x80) Set_Pins |=  LED7_Pin;else Rst_Pins |=  LED7_Pin;HAL_GPIO_WritePin(GPIOA, Set_Pins, GPIO_PIN_SET);HAL_GPIO_WritePin(GPIOA, Rst_Pins, GPIO_PIN_RESET);
#elseGPIOA->ODR = gsmg_code[data];  
#endif
}//数码管显示
void SMG_Display(uint8_t dat[],uint8_t pos)
{u8 i=0;u8 pos_temp=pos-1;//从0开始for(i=pos_temp;i<8;i++){switch(i)//位选{case 0: LSC=1;LSB=1;LSA=1;break;case 1: LSC=1;LSB=1;LSA=0;break;case 2: LSC=1;LSB=0;LSA=1;break;case 3: LSC=1;LSB=0;LSA=0;break;case 4: LSC=0;LSB=1;LSA=1;break;case 5: LSC=0;LSB=1;LSA=0;break;case 6: LSC=0;LSB=0;LSA=1;break;case 7: LSC=0;LSB=0;LSA=0;break;}SMG_Write_Data(dat[i]);//传送段选数据HAL_Delay(2);//延时一段时间,等待显示稳定SMG_Write_Data(0x00);//消隐}
}

4. 设计报告

5644字设计报告,内容包括硬件设计、软件设计、结论等。

img

数码管显示字程序流程框图

img

5. 资料清单&下载链接

img

0、常见使用问题及解决方法–必读!!!!

1、程序代码

2、Proteus仿真

3、功能要求

4、设计报告

5、讲解视频

6、框图

Altium Designer 安装破解

KEIL+proteus 单片机仿真设计教程

KEIL安装破解

Proteus元器件查找

Proteus安装

Proteus简易使用教程

单片机学习资料

相关数据手册

答辩技巧

设计报告常用描述

鼠标双击打开查找嘉盛单片机51 STM32单片机课程毕业设计.url

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/5232.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

数据库管理-第257期 有好故事才能讲好故事(20241101)

数据库管理257期 2024-11-01 数据库管理-第257期 有好故事才能讲好故事&#xff08;20241101&#xff09;1 23c到23ai2 惊艳的APEX3 愿景到实现总结 数据库管理-第257期 有好故事才能讲好故事&#xff08;20241101&#xff09; 作者&#xff1a;胖头鱼的鱼缸&#xff08;尹海文…

FreeRTOS 队列详解

目录 一、引言 二、FreeRTOS 队列的基本概念 1.定义与作用 2.队列的长度和数据大小 三、FreeRTOS 队列的特点 1.先进先出&#xff08;FIFO&#xff09;特性 2.值传递方式 3.多任务访问 4.阻塞机制 四、FreeRTOS 队列的操作方法 1.创建队列 2.写队列&#xff08;发送…

Java项目实战II基于Spring Boot的问卷调查系统的设计与实现(开发文档+数据库+源码)

目录 一、前言 二、技术介绍 三、系统实现 四、文档参考 五、核心代码 六、源码获取 全栈码农以及毕业设计实战开发&#xff0c;CSDN平台Java领域新星创作者&#xff0c;专注于大学生项目实战开发、讲解和毕业答疑辅导 一、前言 在当今信息爆炸的时代&#xff0c;问卷调查…

基于JavaWeb的宿舍管理系统的设计与实现

项目描述 临近学期结束&#xff0c;还是毕业设计&#xff0c;你还在做java程序网络编程&#xff0c;期末作业&#xff0c;老师的作业要求觉得大了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等。这里根据疫情当下&#xff0c;你想解决的问…

EPSON机械手与第三方相机的校准功能设计By python

EPSON机械手与第三方相机的校准功能设计By python 使用Python来实现EPSON机械手与第三方相机的校准功能是一个复杂但可行的任务。这通常涉及以下几个步骤:硬件接口通信、图像处理、标定算法实现和控制逻辑编写。 1. 环境准备 首先,库 pip install numpy opencv-python pyse…

【电子通识】白皮书、应用手册、用户指南、快速入门指南一般的定义是什么?

一般大厂家的器件或模块,除了给数据表以外,还提供应用手册、技术说明、白皮书等各种文档资料。 如下图所示为ST25 NFC/RFID标签和读卡器的文件资料:其中就有技术说明、白皮书、应用手册等。 如下所示为TI INA228技术文档相关资料: 也有应用手册、用户指南、技术文章…

【真实对抗环境】MC-Net: Realistic Sample Generation for Black-Box Attacks

原文标题&#xff1a; MC-Net: Realistic Sample Generation for Black-Box Attacks 原文代码&#xff1a; https://github.com/jiaokailun/A-fast 发布年度&#xff1a; 2024 发布期刊&#xff1a; TIFS 目录 摘要背景创新点模型实验结论 摘要 One area of current research …

0-基于图的组合优化算法学习(NeurIPS 2017)(未完)

文章目录 Abstract1 Introduction2 图上的贪婪算法的通用表述Abstract 为NP-hard组合优化问题设计好的启发式或近似算法通常需要大量的专业知识和试错。我们能否自动化这个具有挑战性、乏味的过程,而不是学习算法呢?在许多实际应用中,通常是相同的优化问题一次又一次地被解…

ctfshow(316)--XSS漏洞--反射性XSS

Web316 进入界面&#xff1a; 审计 显示是关于反射性XSS的题目。 思路 首先想到利用XSS平台解题&#xff0c;看其他师傅的wp提示flag是在cookie中。 当前页面的cookie是flagyou%20are%20not%20admin%20no%20flag。 但是这里我使用XSS平台&#xff0c;显示的cookie还是这样…

AI 大模型重塑软件开发流程

一、AI 大模型的定义 AI 大模型是指具有大量参数和复杂结构的人工智能模型&#xff0c;通过在大规模数据上进行训练&#xff0c;可以学习到丰富的知识和模式。这些模型通常基于深度学习技术&#xff0c;如神经网络&#xff0c;能够处理自然语言、图像、音频等多种类型的数据&am…

LeetCode 3216. 交换后字典序最小的字符串[简单]

. - 力扣&#xff08;LeetCode&#xff09; 题目 给你一个仅由数字组成的字符串 s&#xff0c;在最多交换一次 相邻 且具有相同 奇偶性 的数字后&#xff0c;返回可以得到的字典序最小的字符串。 相同奇偶性&#xff1a;如果两个数字都是奇数或都是偶数&#xff0c;则它们具…

建筑行业员工离职SOP的数字化管理

在建筑行业&#xff0c;随着数字化转型的深入&#xff0c;对员工离职的标准操作程序&#xff08;SOP&#xff09;进行数字化管理变得尤为重要。这不仅有助于提高管理效率&#xff0c;还能确保离职流程的规范性和合规性。本文将探讨建筑行业如何通过数字化手段管理员工离职SOP&a…

【你也能从零基础学会网站开发】 SQL Server结构化查询语言数据操作应用--DML篇 浅谈SQL JOIN多表查询之FULL JOIN 全连接查询

&#x1f680; 个人主页 极客小俊 ✍&#x1f3fb; 作者简介&#xff1a;程序猿、设计师、技术分享 &#x1f40b; 希望大家多多支持, 我们一起学习和进步&#xff01; &#x1f3c5; 欢迎评论 ❤️点赞&#x1f4ac;评论 &#x1f4c2;收藏 &#x1f4c2;加关注 FULL JOIN 全连…

高效数据集成:从旺店通到金蝶云

高效数据集成&#xff1a;从旺店通到金蝶云 旺店通旗舰奇门数据集成到金蝶云星空&#xff1a;柏为销售出库单07.25 在现代企业的运营中&#xff0c;数据的高效流转和准确对接是确保业务顺畅运行的关键。本文将分享一个实际案例——如何通过轻易云数据集成平台&#xff0c;将旺…

Python进阶之IO操作

文章目录 一、文件的读取二、文件内容的写入三、之操作文件夹四、StringIO与BytesIO 一、文件的读取 在python里面&#xff0c;可以使用open函数来打开文件&#xff0c;具体语法如下&#xff1a; open(filename, mode)filename&#xff1a;文件名&#xff0c;一般包括该文件所…

Bert框架详解(上)

目录 一、传统的自然语言处理框架存在的问题 1、RNN网络计算时存在的问题 2、传统word2vec存在的问题 二、Bert模型机制 1、编码-解码框架&#xff08;Encoder-Decoder&#xff09; &#xff08;1&#xff09;、编码器&#xff08;Encoder&#xff09; &#xff08;2&…

SuperMap iDesktop 崖山数据库型的数据源创建

作者&#xff1a;lzzzz 本文主要介绍如何创建崖山数据库型的数据源&#xff0c;使用版本为超图idesktopX&#xff1a;11.2.1 &#xff0c;使用环境&#xff1a;Windows 10&#xff1b;yashandb&#xff1a;23.2.5.100&#xff0c;使用环境&#xff1a;centos 7.9。 崖山数据库…

今日 AI 简报| Claude 推出 AI 自动化操作电脑功能、浏览器 AI 助手、全栈 AI 应用构建器、全能文档解析工具等

❤️ 如果你也关注大模型与 AI 的发展现状&#xff0c;且对大模型应用开发非常感兴趣&#xff0c;我会快速跟你分享最新的感兴趣的 AI 应用和热点信息&#xff0c;也会不定期分享自己的想法和开源实例&#xff0c;欢迎关注我哦&#xff01; &#x1f966; 微信公众号&#xff…

VS2022远程连接调试编译Linux环境下的C++代码

工具&#xff1a;VS2022 虚拟机&#xff1a;RHEL 8.0 一、下载必要工具 1.VS2022组件安装 打开VS2022Installer&#xff0c;点击修改下载必要工具。 选择Linux 和嵌入式开发&#xff0c;然后点击右下角的修改&#xff01; 等待安装........ 安装完成后&#xff0c;创建Linu…

详解Java之Spring MVC篇二

目录 获取Cookie/Session 理解Cookie 理解Session Cookie和Session的区别 获取Cookie 获取Session 获取Header 获取User-Agent 获取Cookie/Session 理解Cookie HTTP协议自身是“无状态”协议&#xff0c;但是在实际开发中&#xff0c;我们很多时候是需要知道请求之间的…