【普中】基于51单片机的8*8点阵滚动显示设计
( proteus仿真+程序+设计报告+讲解视频)
仿真图proteus8.15(有低版本)
程序编译器:keil 4/keil 5
编程语言:C语言
设计编号:P16
1.主要功能:
基于51单片机的8*8点阵滚动显示设计
1、本设计采用51单片机作为主控器;
2、默认8*8点阵滚动显示祝你生日快乐;
3、显示内容可以在代码处进行修改;
4、按键控制点阵滚动方向和开始/暂停滚动;
(目前仅完全适配普中开发板A234,其他普中开发板型号可能需要做代码修改或接线。16*16点阵不适用)
需注意仿真中51单片机芯片是兼容的,AT89C51,AT89C52是51单片机的具体型号,内核是一样的。相同的原理图里,无论stc还是at都一样,引脚功能都是一样的,程序是兼容的,芯片可以替换为STC89C52/STC89C51/AT89C52/AT89C51等51单片机芯片。
以下为本设计资料展示图:
讲解视频:
仿真讲解+实物演示+代码讲解
2.仿真
开始仿真
打开仿真工程,双击proteus中的单片机,选择hex文件路径,然后开始仿真。
点阵滚动显示祝你生日快乐,按键控制点阵滚动方向和开始/暂停滚动。
仿真结果和预期相符。
3. 程序代码
使用keil4或者keil5编译,代码有注释,可以结合报告理解代码含义。
代码
#include "reg51.h" //此文件中定义了单片机的一些特殊功能寄存器
#include<intrins.h>
typedef unsigned int u16; //对数据类型进行声明定义
typedef unsigned char u8;
sbit SRCLK=P3^6;
sbit RCLK=P3^5;
sbit SER=P3^4;
u8 ledduan[]={
0x20,0x7E,0x29,0x72,0x5C,0x5E,0x71,0x02,/*"祝",0*/
/* (8 X 8 , 黑体 )*/
0x10,0x7F,0x12,0x64,0x2F,0x20,0x2C,0x00,/*"你",1*/
/* (8 X 8 , 黑体 )*/
0x10,0x60,0x2A,0x7E,0x2A,0x2A,0x20,0x00,/*"生",2*/
/* (8 X 8 , 黑体 )*/
0x00,0x00,0x7E,0x52,0x52,0x52,0x7F,0x00,/*"日",3*/
/* (8 X 8 , 黑体 )*/
0x10,0x7F,0x31,0x2A,0x7C,0x2C,0x3A,0x08,/*"快",4*/
/* (8 X 8 , 黑体 )*/
0x00,0x72,0x4C,0x49,0x7E,0x4C,0x02,0x00,/*"乐",5*/
/* (8 X 8 , 黑体 )*/
};
//u8 ledwei[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};
u8 ledwei[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};
u8 index=0;
u8 dir=1;
u8 turn_falg=1;
/*******************************************************************************
* 函数名 : Hc595SendByte(u8 dat)
* 函数功能 : 向74HC595发送一个字节的数据
* 输入 : 无
* 输出 : 无
*******************************************************************************/
void Hc595SendByte(u8 dat)
{
u8 a;
SRCLK=0;
RCLK=0;
for(a=0;a<8;a++)
{
SER=dat>>7;
dat<<=1;
SRCLK=1;
_nop_();
_nop_();
SRCLK=0;
}
RCLK=1;
_nop_();
_nop_();
RCLK=0;
}
/*******************************************************************************
* 函 数 名 : main
* 函数功能 : 主函数
* 输 入 : 无
* 输 出 : 无
*******************************************************************************/
void main()
{
// u8 i;
TMOD=0x10; //定时器工作方式1
TH1=(65536-1000)/256; //重装初值1ms中断一次
TL1=(65536-1000)%256;
ET1=1;
TR1=1;
EX0=1; //打开外部中断0
EX1=1; //打开外部中断1
IT0=1; //下降沿触发
IT1=1; //下降沿触发
EA=1;
while(1)
{
}
}
4. 设计报告
7031字设计报告,内容包括目录,硬件设计、软件设计、软硬件框图、调试、结论等
随着微电子技术的迅猛进步,单片机凭借其小巧的体积、极低的功耗以及卓越的可靠性,在众多嵌入式系统中占据了举足轻重的地位。作为嵌入式系统的核心控制器,单片机能够高效地处理各种复杂任务,满足多样化的应用需求。在众多单片机型号中,51单片机以其经典的设计、强大的功能和广泛的应用性,成为了众多学习者和开发者首选的学习和实践对象。其丰富的指令集、稳定的性能和易于上手的特点,使得51单片机在电子工程、自动化控制、智能家居等领域得到了广泛的应用。
8*8点阵显示模块,作为一种常见的显示设备,以其简单的结构、清晰的显示效果和易于编程控制的特点,在各类显示系统中扮演着重要角色。该模块能够显示简单的字符、数字以及图形,通过巧妙的编程,还可以实现各种动态显示效果,如滚动字幕、闪烁提示等,极大地丰富了显示内容的多样性和趣味性。
5. 下载链接
资料下载链接(可点击):
链接:https://pan.baidu.com/s/1jY-KsO7cxNSlM_2-U2yIIQ?pwd=3cem
提取码:3cem
资料设计资料包括仿真,程序代码、讲解视频、功能要求、设计报告、软硬件设计框图等。
0、常见使用问题及解决方法–必读!!!!
1、仿真图
2、程序源码注释
3、功能要求
4、开题报告
5、设计报告
6、软硬件流程框图
7、烧录工具
8、讲解视频
9、实物图
10、取模软件
Altium Designer 安装破解
KEIL+proteus 单片机仿真设计教程
KEIL安装破解
Proteus元器件查找
Proteus安装
Proteus简易使用教程
单片机学习资料
相关数据手册
答辩技巧
设计报告常用描述
鼠标双击打开查找嘉盛单片机51 STM32单片机课程毕业设计.url