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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

Proteus仿真8*8LED點陣屏為何不能顯示第一個點?

[復制鏈接]
跳轉到指定樓層
樓主
本人新手,自學51單片機驅動8*8LED點陣屏,遇難題如下:
仿真圖如下:

請問為什么LED點陣屏左上角第一個點不亮,而且斜線錯位,最右下角的點也不亮?
修改數組元素順序為:
unsigned char code led0[]={0x02,0x04,0x08,0x10,0x20,0x40,0x80,0x01};
再仿真OK!如下圖所示:


按8*8LED點陣屏顯示原理,不用修改數組元素順序,就能顯示上圖所示“\”圖案,但實際仿真,顯示的是第一幅圖片所示的圖案,請高手賜教為什么?謝謝!

  1. #include<reg51.h>//單片機頭文件
  2. void delay1ms(unsigned int ms);//延時ms函數聲明
  3. unsigned char code led0[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};//字碼表(LED屏顯對角斜線“\”)
  4. void main()//主函數
  5. {
  6. unsigned char H,i;        //定義變量
  7. while(1)
  8.    {
  9.          H=0x01; //行變量賦初值
  10.          for(i=0;i<8;i++)//行掃描
  11.          {
  12.          P1=H; //行數據送P1口
  13.          P0=led0[i];//列數據送P0口
  14.          delay1ms(1);//延時1毫秒
  15.          H<<=1; //向下移動一行
  16.          }
  17.         }
  18. }
  19. void delay1ms(unsigned int ms)//延時函數
  20. {
  21. unsigned int i,j;//定義變量
  22. for(i=0;i<ms;i++)
  23. for(j=0;j<110;j++);
  24. }
復制代碼

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

使用道具 舉報

沙發
ID:213173 發表于 2020-3-9 17:08 | 只看該作者
這是仿真軟件的缺陷所致,降低掃描速度試試。改用595驅動LED點陣屏就可以解決。
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

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