【普中】基于51單片機的8*8點陣滾動顯示設(shè)計
( proteus仿真+程序+設(shè)計報告+講解視頻)
仿真圖proteus8.15(有低版本)
程序編譯器:keil 4/keil 5
編程語言:C語言
設(shè)計編號:P16
1.主要功能:
基于51單片機的8*8點陣滾動顯示設(shè)計
1、本設(shè)計采用51單片機作為主控器;
2、默認8*8點陣滾動顯示祝你生日快樂;
3、顯示內(nèi)容可以在代碼處進行修改;
4、按鍵控制點陣滾動方向和開始/暫停滾動;
5、需要在Proteus軟件和普中51開發(fā)板實現(xiàn)功能驗證。
(目前僅完全適配普中開發(fā)板A234,其他普中開發(fā)板型號可能需要做代碼修改或接線。16*16點陣不適用)
需注意仿真中51單片機芯片是兼容的,AT89C51,AT89C52是51單片機的具體型號,內(nèi)核是一樣的。相同的原理圖里,無論stc還是at都一樣,引腳功能都是一樣的,程序是兼容的,芯片可以替換為STC89C52/STC89C51/AT89C52/AT89C51等51單片機芯片。
以下為本設(shè)計資料展示圖:
講解視頻:
仿真講解+實物演示+代碼講解
2.仿真
開始仿真
打開仿真工程,雙擊proteus中的單片機,選擇hex文件路徑,然后開始仿真。
點陣滾動顯示祝你生日快樂,按鍵控制點陣滾動方向和開始/暫停滾動。
仿真結(jié)果和預(yù)期相符。
3. 程序代碼
使用keil4或者keil5編譯,代碼有注釋,可以結(jié)合報告理解代碼含義。
代碼
#include "reg51.h" //此文件中定義了單片機的一些特殊功能寄存器
#include<intrins.h>
typedef unsigned int u16; //對數(shù)據(jù)類型進行聲明定義
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;
/*******************************************************************************
* 函數(shù)名 : Hc595SendByte(u8 dat)
* 函數(shù)功能 : 向74HC595發(fā)送一個字節(jié)的數(shù)據(jù)
* 輸入 : 無
* 輸出 : 無
*******************************************************************************/
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;
}
/*******************************************************************************
* 函 數(shù) 名 : main
* 函數(shù)功能 : 主函數(shù)
* 輸 入 : 無
* 輸 出 : 無
*******************************************************************************/
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; //下降沿觸發(fā)
IT1=1; //下降沿觸發(fā)
EA=1;
while(1)
{
}
}
4. 設(shè)計報告
7031字設(shè)計報告,內(nèi)容包括目錄,硬件設(shè)計、軟件設(shè)計、軟硬件框圖、調(diào)試、結(jié)論等
隨著微電子技術(shù)的迅猛進步,單片機憑借其小巧的體積、極低的功耗以及卓越的可靠性,在眾多嵌入式系統(tǒng)中占據(jù)了舉足輕重的地位。作為嵌入式系統(tǒng)的核心控制器,單片機能夠高效地處理各種復(fù)雜任務(wù),滿足多樣化的應(yīng)用需求。在眾多單片機型號中,51單片機以其經(jīng)典的設(shè)計、強大的功能和廣泛的應(yīng)用性,成為了眾多學(xué)習(xí)者和開發(fā)者首選的學(xué)習(xí)和實踐對象。其豐富的指令集、穩(wěn)定的性能和易于上手的特點,使得51單片機在電子工程、自動化控制、智能家居等領(lǐng)域得到了廣泛的應(yīng)用。
8*8點陣顯示模塊,作為一種常見的顯示設(shè)備,以其簡單的結(jié)構(gòu)、清晰的顯示效果和易于編程控制的特點,在各類顯示系統(tǒng)中扮演著重要角色。該模塊能夠顯示簡單的字符、數(shù)字以及圖形,通過巧妙的編程,還可以實現(xiàn)各種動態(tài)顯示效果,如滾動字幕、閃爍提示等,極大地豐富了顯示內(nèi)容的多樣性和趣味性。
5. 下載鏈接
資料下載鏈接(可點擊):
鏈接:https://pan.baidu.com/s/1jY-KsO7cxNSlM_2-U2yIIQ?pwd=3cem
提取碼:3cem
資料設(shè)計資料包括仿真,程序代碼、講解視頻、功能要求、設(shè)計報告、軟硬件設(shè)計框圖等。
0、常見使用問題及解決方法–必讀?。。?!
1、仿真圖
2、程序源碼注釋
3、功能要求
4、開題報告
5、設(shè)計報告
6、軟硬件流程框圖
7、燒錄工具
8、講解視頻
9、實物圖
10、取模軟件
Altium Designer 安裝破解
KEIL+proteus 單片機仿真設(shè)計教程
KEIL安裝破解
Proteus元器件查找
Proteus安裝
Proteus簡易使用教程
單片機學(xué)習(xí)資料
相關(guān)數(shù)據(jù)手冊
答辯技巧
設(shè)計報告常用描述
鼠標雙擊打開查找嘉盛單片機51 STM32單片機課程畢業(yè)設(shè)計.url