久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5728|回復: 5
打印 上一主題 下一主題
收起左側

89單片機+四個74HC595的LED16x16點陣 程序源碼原理圖

  [復制鏈接]
跳轉到指定樓層
樓主
ID:390416 發表于 2021-1-3 20:12 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
07 點陣16X16 四個模塊級連原理圖與內存分配圖.pdf (111.34 KB, 下載次數: 51)

04 點陣16X16 單個模塊原理圖.pdf (84.31 KB, 下載次數: 39)

02 點陣工作原理與焊接制作注意事項.pdf (14.4 MB, 下載次數: 27)

電路原理圖如下:

//------------------------------------------------------------------------------------------------祁緒電子《人人學會單片機》------

//1、本程序適用于:由4個595驅動的16*16點陣。先發16位陽極列選信號,再發送陰極字節模數據。
//2、為方便閱讀,使用傳統編程思路編寫,并未使用框架式編程方式,
//3、本程序使用11.0592M晶振,STC89C52RC單片機12T模式工作。
//4、11.0592M晶振,刷新率50幀,太低會閃爍、太高CPU卡頓。
//5、89系列單片機下載的時候,如果“使能6T(雙倍速)模式,可以增加單片機運行速度。

//------------------------------------------------------------------------------------------------祁緒電子《人人學會單片機》------
#include<REG52.H>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int   

//------------------------------------------------------------------------------------------------祁緒電子《人人學會單片機》------
//------漢字字模保存數組code
//------------------------------------------------------------------------------------------------祁緒電子《人人學會單片機》------
uchar code hanzi[10][32]=
{
//五角星
        {        0x00,0x00,0x04,0x00,0x06,0x02,0x07,0x0C,0x07,0xBC,0x07,0xF8,0x0F,0xF8,0x3F,0xF0,0xFF,0xE0,0x3F,0xF0,0x0F,0xF8,0x07,0xF8,0x07,0xBC,0x07,0x0C,0x06,0x02,0x04,0x00                },
//祁
        {        0x10,0x20,0x10,0x40,0x10,0x80,0x91,0x00,0x73,0xFF,0x15,0x00,0x18,0x80,0x00,0x00,0x7F,0xFF,0x40,0x10,0x42,0x08,0x4D,0x04,0x70,0x88,0x00,0x70,0x00,0x00,0x00,0x00                },
//緒
        {        0x04,0x44,0x0C,0xC6,0x35,0x44,0xC6,0x48,0x0C,0x68,0x02,0x48,0x22,0x80,0x23,0xFF,0x22,0x92,0xFE,0x92,0x2A,0x92,0x32,0x92,0x23,0xFF,0x46,0x80,0x02,0x00,0x00,0x00                },
//電
        {        0x00,0x00,0x1F,0xE0,0x12,0x40,0x12,0x40,0x12,0x40,0x12,0x40,0xFF,0xFC,0x12,0x42,0x12,0x42,0x12,0x42,0x12,0x42,0x3F,0xE2,0x10,0x02,0x00,0x0E,0x00,0x00,0x00,0x00                },
//子
        {        0x01,0x00,0x01,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x02,0x41,0x01,0x47,0xFE,0x45,0x00,0x49,0x00,0x51,0x00,0x61,0x00,0x01,0x00,0x03,0x00,0x01,0x00,0x00,0x00                },
//黑桃
        {         0x00,0x00,0x03,0xC0,0x07,0xE0,0x0F,0xF0,0x1F,0xF0,0x3F,0xE1,0x7F,0xC3,0xFF,0xFF,0xFF,0xFF,0x7F,0xC3,0x3F,0xE1,0x1F,0xF0,0x0F,0xF0,0x07,0xE0,0x03,0xC0,0x00,0x00                },
//紅心
        {        0x00,0x00,0x07,0x80,0x0F,0xC0,0x1F,0xE0,0x1F,0xF0,0x1F,0xF8,0x0F,0xFC,0x07,0xFE,0x07,0xFE,0x0F,0xFC,0x1F,0xF8,0x1F,0xF0,0x1F,0xE0,0x0F,0xC0,0x07,0x80,0x00,0x00                },
//梅花
        {         0x00,0x00,0x00,0xE0,0x01,0xF0,0x03,0xF8,0x33,0xF8,0x79,0xF1,0xFD,0xE3,0xFF,0xFF,0xFF,0xFF,0xFD,0xE3,0x79,0xF1,0x33,0xF8,0x03,0xF8,0x01,0xF0,0x00,0xE0,0x00,0x00                },
//方片
        {        0x00,0x00,0x01,0x00,0x03,0x80,0x07,0xC0,0x0F,0xE0,0x1F,0xF0,0x3F,0xF8,0x7F,0xFC,0xFF,0xFE,0x7F,0xFC,0x3F,0xF8,0x1F,0xF0,0x0F,0xE0,0x07,0xC0,0x03,0x80,0x01,0x00                },
//花點               
        {        0xAA,0xAA,0x55,0x55,0xAA,0xAA,0x55,0x55,0xAA,0xAA,0x55,0x55,0xAA,0xAA,0x55,0x55,0xAA,0xAA,0x55,0x55,0xAA,0xAA,0x55,0x55,0xAA,0xAA,0x55,0x55,0xAA,0xAA,0x55,0x55                }
        };
uchar idata Mould[2];                                          //控制該列的取模值,低電平亮燈,每個模組16行,占2字節
uchar idata upright[2];                                        //控制某一列,高電平亮燈,每個模組16列,占2字節
uchar idata LED2X64[34];                                //開辟緩存空間,被定時器隨時調用。每列兩個字節,多加2個用于移位操作。
sbit HC595_DS=P3^6;                                                //74HC595的數據
sbit HC595_SH=P3^5;                                                //74HC595的時鐘
sbit HC595_ST=P3^4;                                                //74HC595的鎖存

//------------------------------------------------------------------------------------------------祁緒電子《人人學會單片機》------
//------定時器0配置:16位定時器,1.25ms顯示1列,幀率50幀。
//------------------------------------------------------------------------------------------------祁緒電子《人人學會單片機》------
void Timer0_Init()                                                                        
{
        TMOD&=0Xf0;                                                        //16位定時器模式,需要人工重裝初值
        TMOD|=0X01;                                                        //16位定時器模式,需要人工重裝初值
        TL0=0x80;                                                        
        TH0=0xf8;                                                        //STC89最高刷新率60幀,太高了會占用CPU
        ET0=1;                                                                //定時器0中斷閉合導通
        TR0=1;                                                                //定時器0啟動
        EA=1;                                                                //總中斷閉合導通
}

//------------------------------------------------------------------------------------------------祁緒電子《人人學會單片機》------
//------發送數據到595芯片
//------------------------------------------------------------------------------------------------祁緒電子《人人學會單片機》------
void HC595_Write()                                                //74HC595發送數據。
{
        uchar value,i,j=1;
        value=upright[j*2-1];
        for(i=0;i<8;i++)                                         //發送給每個模組的 U4 ,高電平整列可以亮,低電平整列滅。
        {
                HC595_SH=0;                                                //時鐘拉低
                HC595_DS=value&0x80;                          //從最后一個字節開始,先高位后低位。
                value<<=1;                                                //字節左移
                HC595_SH=1;                                                //時鐘上升沿拷貝
        }
        value=upright[j*2-2];
        for(i=0;i<8;i++)                                         //發送給每個模組的 U3 ,高電平整列可以亮,低電平整列滅。
        {
                HC595_SH=0;                                                //時鐘拉低
                HC595_DS=value&0x80;                          //從最后一個字節開始,先高位后低位。
                value<<=1;                                                //字節左移
                HC595_SH=1;                                                //時鐘上升沿拷貝
        }
        
        value=Mould[j*2-1];
        for(i=0;i<8;i++)                                         //發送給每個模組的 U2 ,低電平整行可以亮,高電平整行全滅。
        {
                HC595_SH=0;                                                //時鐘拉低
                HC595_DS=value&0x80;                          //從最后一個字節開始,先高位后低位。
                value<<=1;                                                //字節左移
                HC595_SH=1;                                                //時鐘上升沿拷貝
        }
        value=Mould[j*2-2];
        for(i=0;i<8;i++)                                         //發送給每個模組的 U1 ,低電平整行可以亮,高電平整行全滅。
        {
                HC595_SH=0;                                                //時鐘拉低
                HC595_DS=value&0x80;                          //從最后一個字節開始,先高位后低位。
                value<<=1;                                                //字節左移
                HC595_SH=1;                                                //時鐘上升沿拷貝
        }        
        HC595_ST=1;                                                        //鎖存脈沖信號,上升沿。
        HC595_DS=0;                                                        //延時
        HC595_ST=0;                                                        //鎖存脈沖信號復位。
        HC595_SH=0;
}

//------------------------------------------------------------------------------------------------祁緒電子《人人學會單片機》------
////定時器中斷處理,16位定時器,控制595函數1.25ms顯示1列,幀率50幀。
//------------------------------------------------------------------------------------------------祁緒電子《人人學會單片機》------
void Timer0_Routnie (void) interrupt 1                                
{
        static uchar i;        
        static uint kkk=0x0001;                                //用于16列輪流控制
        TH0=0xfb;                                                        //定時器賦初始值65536-(11059200÷6T÷16列÷50幀)
        TL0=0x95;                                                        //STC89最高刷新率60幀,太高了會占用CPU, 0x95是微調值約等于計算值
        
        Mould[1]=~LED2X64[i+1];                                //i=0,把緩存的第01號字節發送到第一個模組的最左邊的下8位。
        Mould[0]=~LED2X64[i+0];                                //i=0,把緩存的第00號字節發送到第一個模組的最左邊的上8位。
        
        upright[1]=kkk/256;                                        //16位變量KKK,取高8位?刂频谝粋模組的0~7列。
        upright[0]=kkk%256;                                        //16位變量KKK,取低8位?刂频谝粋模組的8~15列。
        
        kkk=_irol_(kkk,1);                                        //循環控制0~16列
        i++;i++;
        i=i%32;
        HC595_Write();                                                //595的緩存Mould[8]、upright[8],得到數據后,立馬發送到芯片

}

//------------------------------------------------------------------------------------------------祁緒電子《人人學會單片機》------
//------主函數
//------------------------------------------------------------------------------------------------祁緒電子《人人學會單片機》------
void main()                                                                   //主函數
{
        uchar k=0;
        for(k=0;k<32;k++)
        {
                LED2X64[k]=hanzi[k/32+1][k%32];        //把要顯示的內容寫入緩存
        }
        HC595_DS=0;                                                        //初始化595IO口拉低
        HC595_SH=0;                                                        //初始化595IO口拉低
        HC595_ST=0;                                                        //初始化595IO口拉低
        
        Timer0_Init();                                                //初始化定時器
        
         while(1)                                                           //大循環
        {
               
        }
}

點陣16X16顯示祁字動畫.gif (209.48 KB, 下載次數: 141)

點陣16X16顯示祁字動畫.gif

08 點陣16X16 字模提取 漢字字模軟件設置.png (53.5 KB, 下載次數: 203)

08 點陣16X16 字模提取 漢字字模軟件設置.png

08 點陣16X16 字模提取 漢字字模舉例.jpg (879.22 KB, 下載次數: 130)

08 點陣16X16 字模提取 漢字字模舉例.jpg

06 點陣16X16 使用STC8多功能DMX無線板做主控 級聯驅動.jpg (252.56 KB, 下載次數: 140)

06 點陣16X16 使用STC8多功能DMX無線板做主控 級聯驅動.jpg

03 點陣8X8 管腳引出的拉線圖.png (275.3 KB, 下載次數: 136)

03 點陣8X8 管腳引出的拉線圖.png
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏10 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:232366 發表于 2021-3-3 10:59 | 只看該作者
這點陣取模軟件能不能共享以下
回復

使用道具 舉報

板凳
ID:390416 發表于 2021-3-3 17:00 | 只看該作者
SHANWAZI 發表于 2021-3-3 10:59
這點陣取模軟件能不能共享以下

其他多種資料的統一鏈接:https://pan.baidu.com/s/1HKoHDJSc9sxFTQvllo825g
提取碼:1234
回復

使用道具 舉報

地板
ID:895140 發表于 2021-3-24 19:51 | 只看該作者
SHANWAZI 發表于 2021-3-3 10:59
這點陣取模軟件能不能共享以下

字模提取

字模提取V2.2.rar

262.6 KB, 下載次數: 26, 下載積分: 黑幣 -5

我是用這個提取字模的,樓主那個我知道但不會用

回復

使用道具 舉報

5#
ID:917675 發表于 2021-5-15 10:18 | 只看該作者
謝謝分享,最近正在研究點陣模塊
回復

使用道具 舉報

6#
ID:571580 發表于 2021-5-24 14:11 | 只看該作者
原理圖文件可以分享下嘛
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产成人精品一区二区三区网站观看 | 99在线免费观看视频 | 日韩av电影院 | 亚洲国产成人精品女人久久久野战 | 精品久久久久久红码专区 | 精品人伦一区二区三区蜜桃网站 | av黄在线观看 | 国产激情视频在线免费观看 | 91网站在线看| 亚洲视频在线一区 | 精品在线一区 | 91在线看片| 亚洲精品在线国产 | 精品美女视频在线观看免费软件 | 天天激情综合 | 国产精品亚洲二区 | 日本精品一区二区三区在线观看 | 亚洲 中文 欧美 日韩 在线观看 | 国产亚洲一区二区三区在线观看 | 久久精品性视频 | 夜夜爽99久久国产综合精品女不卡 | cao在线| 久久一 | 巨大黑人极品videos精品 | 中文字幕在线欧美 | 国产九一精品 | 中文字幕在线观 | 美女视频三区 | 久色| 在线播放91 | 欧美在线视频免费 | 成人久久久 | 天堂久久av| 欧美videosex性极品hd | 天天久| 午夜欧美一区二区三区在线播放 | 欧美日韩国产一区二区三区 | 狠狠操天天干 | 国产高清精品网站 | 欧美一区二区激情三区 | 欧美精品免费观看二区 |