欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3731|回復: 2
收起左側

關于單片機LED點陣控制仿真,原理圖,文檔

[復制鏈接]
ID:569284 發表于 2019-6-22 14:20 | 顯示全部樓層 |閱讀模式
設計做的有關于LED點陣仿真,花了一個星期的時間完成了這個,總體來說效果是不錯的,本次發帖是因為我知道51黑電子論壇是對于我們學習很好的一個平臺,所以想把自己所做的成果分享給大家,謝謝!

仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)

原理圖

原理圖


自己設計8X8點陣顯示屏,并調試好電路板。運用keil軟件進行編程,利用單片機STC89C52來顯示圖案并控制圖案變換。
三、實驗原理
8X8點陣共由64個發光 極管組成,且每個發光極管是放置在行線和列線交叉點上,當對應的某一 列置0電平,某行置I電平,則相應的二極管就亮。
  •   要設計該字的點陣字形,編好行(或列)點陣碼,然后在單片機的控制下對點陣進行逐行或列掃描。
  •   在人眼的暫存效應下我們會看到完整的字形,從而實現了字體在點陣顯示屏上的輸出,由于只控制8*8點陣顯示田。故 不需要擴展單片機的I/O接口?紤]到PO口需要接上電阻,使得電路較為復雜。
  •   因此利進單機的PI口來控制點陣的行。用P2口控制點陣的列。
四、實驗步驟及結果
1、PCB原理圖設計:
首先打開Altium designer,在【文件】中新建一個原理圖,在【庫】中找出與點陣原理圖一樣的元器件放在原理圖文件中,進行連線。連接好的點陣PCB原理圖如下圖(1)所示。

(圖1)
  • PCB設計如圖2所示


(圖2)
  • ISIS原理圖設計
(1)首先打開ISIS professional,在【File】中新建一個A4大小的原理圖文件。
(2)在下方的(P L DEVIVES )中找到以下器件并放入原理圖文件中。
1.74HC138 、2.AT89C52、3.CAP 、4.CRYSTAL 、5.MATRIX-8X8-BLUE、6.MATRIX-8X8-RED、7.MINRES4K7、8.RESPACK-8
(3)找到以上元器件放入之后進行連線,生成原理圖如(圖3)所示
(圖3)
(4)生成原理圖之后在【Keil】下新建一個工程,在建的工程下建一個文件輸入程序,將這個文件加入自己建的工程中,加入的程序如下:

#define int8 unsigned char
          #define int16 unsigned int
            #define int32 unsigned long
           int8 code num_tab[][8]={
         /*-8*8--陰碼--逐行掃描--逆向(低位在前)--*/
         {0x00,0x00,0x02,0x05,0x05,0x05,0x02,0x00},/*"0",0*
         {0x00,0x00,0x00,0x06,0x04,0x04,0x0E,0x00},/*"1",1*/
       {0x00,0x00,0x07,0x05,0x02,0x01,0x07,0x00},/*"2",2*/
         {0x00,0x00,0x07,0x03,0x04,0x05,0x07,0x00},/*"3",3
          {0x00,0x00,0x04,0x06,0x05,0x06,0x04,0x00},/*"4",4*/
         {0x00,0x00,0x07,0x01,0x07,0x05,0x07,0x00},/*"5",5*
          {0x00,0x00,0x06,0x01,0x0F,0x09,0x0E,0x00},/*"6",6*/
        {0x00,0x00,0x0E,0x04,0x04,0x04,0x04,0x00},/*"7",7*/
  COMPILER V8.02   KEIL                                                                        
         void delay(void);
        void main(void){
     int8 i;
      int8 j;
      while(1)
      {
            for(i=0;i<8;i++){
              delay();
               P0=num_tab[0];
              P2=i|0x18;
          }   
     }
*** WARNING C280 IN LINE 62 OF KEIL.C: 'j': unreferenced local variable
          void delay(void){
     int16 i;
       for(i=0;i<500;i++)
       }

在Keil對加入的程序進行編譯如(圖4)所示:
(圖4)

(5)對這個程序輸出keil.hex文件如(圖5)所示:

(圖5)
(6)在ISIS professional原理圖中雙擊AT89C52,對Keil.hex文件載入到單片機原理圖中如(圖6)所示:
(圖6)
(7)加入文件之后運行顯示數字“0”結果如(圖7)所示:
(圖7)
五、實驗總結
通過本次點陣顯示實驗,使我對單片機的應用更加深入的理解,以及對PCB及Proteus 的軟件的使用,綜合的應用,有助于我對本門實驗課更加的深刻學習,這對我以后的學習有著十分大的幫助。

仿真圖下載(缺少程序):
LED矩陣顯示.zip (760.33 KB, 下載次數: 39)
回復

使用道具 舉報

ID:845951 發表于 2020-12-13 12:01 | 顯示全部樓層
謝謝,很有用處
回復

使用道具 舉報

ID:845951 發表于 2020-12-13 12:03 | 顯示全部樓層
有程序嗎?
回復

使用道具 舉報

無效樓層,該帖已經被刪除
您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表