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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

Proteus模擬Arduino控制LED矩陣顯示屏測試程序

[復制鏈接]
跳轉到指定樓層
樓主
// Arduino 328 用16行*32列 LED矩陣顯示屏基礎測試程序,主頻是32MHz,在主菜單Project->工程設置中修改
// 項目格式 Proteus V8.9 SP2版本,測試如圖所示。


// 源代碼如下。
int A = 8;
int B = 9;
int C = 10;
int D = 11;
int DE = 12;
int LATCH = 2; //鎖存信號 Latch
int SCLK = 3; //時鐘信號 Shift Clock
int R0 = 4; //數據輸入 ,Data Shift in
char datain=0x0F;
int refreshtime=500;
int i=0,LineNum=0; // 臨時循環變量
#define NumOf74HC595  3// 從0開始查數,實際上是4個,0也算一個。


unsigned char zimo[][32]={
{0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x3F,0xF8,0x21,0x08,0x21,0x08,0x21,0x08,0x21,0x08,0x21,0x08,0x3F,0xF8,0x21,0x08,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00},/*"中",0*/
/* (16 X 16 , 宋體 )*/

{0x00,0x00,0x7F,0xFC,0x40,0x04,0x40,0x04,0x5F,0xF4,0x41,0x04,0x41,0x04,0x4F,0xE4,0x41,0x04,0x41,0x44,0x41,0x24,0x5F,0xF4,0x40,0x04,0x40,0x04,0x7F,0xFC,0x40,0x04},/*"國",1*/
/* (16 X 16 , 宋體 )*/

{0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x7C,0xFE,0x44,0x12,0x44,0x12,0x44,0x12,0x44,0x12,0x44,0x12,0x44,0x12,0x44,0x12,0x44,0x22,0x44,0x22,0x7C,0x4A,0x44,0x84,0x00},/*"加",2*/
/* (16 X 16 , 宋體 )*/

{0x00,0x40,0x20,0x40,0x10,0x40,0x10,0x40,0x87,0xFC,0x44,0x44,0x44,0x44,0x14,0x44,0x14,0x44,0x27,0xFC,0xE4,0x44,0x24,0x44,0x24,0x44,0x24,0x44,0x27,0xFC,0x04,0x04},/*"油",3*/
/* (16 X 16 , 宋體 )*/

};

unsigned char DisplayBuffer[16][4]={};  // 16行*32(4*8bit)列的顯示緩沖區,與LED點陣屏一一對應,要顯示什么內容,先把內容復制到這個緩沖區中即可。

void setup() {
  pinMode(LATCH, OUTPUT);
  pinMode(SCLK, OUTPUT);
  pinMode(R0, OUTPUT);
  pinMode(A, OUTPUT);
  pinMode(B, OUTPUT);
  pinMode(C, OUTPUT);
  pinMode(D, OUTPUT);
  pinMode(DE, OUTPUT);

  DDRB=0xFF;  // 8 pin output

  digitalWrite(DE, HIGH); // 關閉138的輸出,顯示屏不會亮
    // 填充顯示緩沖區
  for(LineNum=0;LineNum<16;LineNum++)
  {
     DisplayBuffer[LineNum][NumOf74HC595]=zimo[2][LineNum*2];
     DisplayBuffer[LineNum][NumOf74HC595-1]=zimo[2][LineNum*2+1];

     DisplayBuffer[LineNum][NumOf74HC595-2]=zimo[3][LineNum*2];
     DisplayBuffer[LineNum][NumOf74HC595-3]=zimo[3][LineNum*2+1];
  }


}

void loop() {



for(LineNum=0;LineNum<16;LineNum++)
{
    digitalWrite(DE, HIGH); // 關閉138的輸出,防止顯示串行
    PORTB=0xF0 | LineNum;    // 選擇第LineNum行   
    for (i = 0; i <= NumOf74HC595; i++)
    {  // 本電路圖中有4個595芯片,所以這里是4
       // 串行輸出數據
       digitalWrite(LATCH, LOW);
       shiftOut(R0, SCLK, MSBFIRST, DisplayBuffer[LineNum][NumOf74HC595-i]);
       digitalWrite(LATCH, HIGH);     
     }
     digitalWrite(DE, LOW); // 打開138的輸出,點亮相應的行
     delayMicroseconds(refreshtime); // 每行數據的顯示停留時間
  }
}

LEDMatrix1632_8_9.rar

73.47 KB, 下載次數: 22, 下載積分: 黑幣 -5

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:685875 發表于 2020-4-26 23:49 | 只看該作者
Arduino 328  主頻是32MHz?
回復

使用道具 舉報

板凳
ID:306434 發表于 2022-1-26 07:43 | 只看該作者
gch1 發表于 2020-4-26 23:49
Arduino 328  主頻是32MHz?

可以改,主頻低的話,顯示效果不好!
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 免费一区 | 日韩欧美精品一区 | 玖玖视频免费 | 污片在线免费观看 | 国产性网 | 久草网在线视频 | 成人免费视频观看 | 精品九九在线 | 国产午夜精品理论片a大结局 | 国产永久免费 | 一本岛道一二三不卡区 | 午夜精品一区二区三区在线视频 | 亚洲在线免费 | 综合色在线 | 91精品国产91久久久久久密臀 | 日本在线播放一区二区 | 黄频免费 | 精品日本中文字幕 | 艹逼网| 国产精品精品 | 欧美日韩黄色一级片 | 欧美日韩国产精品激情在线播放 | 中文字幕亚洲一区二区三区 | 日韩国产欧美在线观看 | 精品免费国产一区二区三区四区介绍 | 一区二区福利视频 | 一区二区不卡高清 | 国产一区二区在线免费视频 | 蜜桃视频在线观看www社区 | 99精品视频在线观看 | 夜夜操天天艹 | 国产精品福利视频 | 免费成年网站 | 人人人人人爽 | 一区二区三区在线播放 | 老司机深夜福利网站 | 一级视频黄色 | 色欧美片视频在线观看 | 色一情一乱一伦一区二区三区 | 激情欧美日韩一区二区 | 欧美精品一区二区三区在线播放 |