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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機+8*8點陣屏,程序仿真失敗,求解答,謝謝

[復制鏈接]
跳轉到指定樓層
樓主
剛學習單片機,開始做了個8*8的點陣屏,當時做好后能正常仿真運行,之后又想在此基礎上加幾個彩燈,就用中斷把點陣放進去了,結果效果不行,就放棄了。
把關于中斷和彩燈的程序注釋掉,只留下點陣屏時,仿真還是會出現彩燈閃爍和中斷觸發,
把關于點陣屏的程序再重新建一個工程,之后仿真就出現問題。明明一模一樣的代碼啊,
求大家幫忙看一下問題在哪,非常感謝。
復制上來注釋變成了亂碼,有些注釋改過來了

這就是沒弄好的已經注釋掉彩燈和中斷的程序代碼,仿真出來注釋沒起作用一樣
  1. #include <reg52.h>
  2. #include <intrins.h>


  3. //8*8點陣屏
  4. unsigned char code tabel [4][8]={
  5.         0xDB,0x00,0xDB,0x81,0xED,0xED,0xE9,0xEF,//&frac12;&Uacute;
  6.         0x83,0xBB,0xBB,0x83,0xBB,0xBB,0x83,0xFF,//&Egrave;&Otilde;
  7.         0xB7,0xB7,0xA1,0xB5,0x00,0xB7,0xAB,0x9D,//&iquest;ì
  8.         0xC3,0xB7,0xB7,0xB7,0x00,0xF7,0xD3,0xA5 //&Agrave;&Ouml;
  9. }; //4&cedil;&ouml;&Ecirc;&yacute;×é&pound;&not;&Atilde;&iquest;&cedil;&ouml;&Ecirc;&yacute;×é8&cedil;&ouml;

  10. sbit DIO=P3^4;
  11. sbit S_CLK=P3^5;
  12. sbit R_CLK=P3^6;

  13. void send_byte (unsigned char dat)   //發送字節函數
  14. {
  15.         unsigned char i;
  16.         dat=0xfe;
  17.         S_CLK=0;//給低電平
  18.         R_CLK=0;//給低電平
  19.         for (i=0;i<8;i++)
  20.         {
  21.                 if (dat & 0x01)  //&Egrave;&iexcl;dat&micro;&Auml;×&icirc;&micro;&Iacute;&Icirc;&raquo;
  22.                         DIO=1;
  23.                 else
  24.                         DIO=0;
  25.                 S_CLK=1; //給上升沿
  26.                 dat >>=1; //dat右移1
  27.                 S_CLK=0;  //拉低
  28.         }
  29. }

  30. //void delay (unsigned int p) //延時函數
  31. //{
  32. //        unsigned int x,y;
  33. //        for(x=p;x>0;x--)
  34. //           for(y=114;y>0;y--);
  35. //}

  36. ////LED
  37. //unsigned char temp; //LED變量

  38. unsigned char j,k,row;//8*8
  39. unsigned int z;//8*8


  40. //void zhongduan()
  41. //{
  42. //        EA=1;
  43. //        EX0=1;
  44. //        IT0=0;
  45. //}
  46.   


  47. void main ()
  48. {
  49. //        zhongduan();//中斷初始化
  50. //                                //LED
  51. //                        temp=0xfe;
  52. //                        P1=temp;
  53. //                        P2=temp;
  54. //                        delay(100);
  55. //                        while(1)
  56. //                        {
  57. //                                temp=_crol_(temp,1);
  58. //                                P1=temp;
  59. //                                P2=temp;
  60. //                                delay(100);
  61. //                        }
  62.                 //8*8
  63.                         while (1)   //循環掃描
  64.                         {
  65.                                 for (k=0;k<4;k++) //&Iuml;&Ocirc;&Ecirc;&frac34;4&cedil;&ouml;×&Ouml;
  66.                                 {
  67.                                         for (z=0;z<1000;z++)
  68.                                         {
  69.                                                 row=0x80; //先選第一行(共陽極)
  70.                                                 for (j=0;j<8;j++)
  71.                                                 {
  72.                                                         send_byte(tabel[k][j]); //·列值
  73.                                                         send_byte(row); //行
  74.                                                         R_CLK=1; //給高,發出
  75.                                                         R_CLK=0;
  76.                                                         row=_cror_(row,1); //循環右移
  77.                                                 }
  78.                                         }
  79.                                 }        
  80.                         }

  81. //void zhongduan2() interrupt 0 //外部中斷0
  82. //{
  83. //                //8*8
  84. //                        while (1)   //&Ntilde;&shy;&raquo;·&Eacute;¨&Atilde;è
  85. //                        {
  86. //                                for (k=0;k<4;k++)
  87. //                                {
  88. //                                        for (z=0;z<1000;z++)
  89. //                                        {
  90. //                                                row=0x80;
  91. //                                                for (j=0;j<8;j++)
  92. //                                                {
  93. //                                                        send_byte(tabel[k][j]);
  94. //                                                        send_byte(row);
  95. //                                                        R_CLK=1;
  96. //                                                        R_CLK=0;
  97. //                                                        row=_cror_(row,1);
  98. //                                                }
  99. //                                        }
  100. //                                }        
  101. //                        }
  102. }
復制代碼
另外重建的點陣屏代碼,只有點陣屏
  1. #include <reg52.h>
  2. #include <intrins.h>

  3. unsigned char dat;

  4. unsigned char code tabel [4][8]={
  5.         0xDB,0x00,0xDB,0x81,0xED,0xED,0xE9,0xEF,//&frac12;&Uacute;
  6.         0x83,0xBB,0xBB,0x83,0xBB,0xBB,0x83,0xFF,//&Egrave;&Otilde;
  7.         0xB7,0xB7,0xA1,0xB5,0x00,0xB7,0xAB,0x9D,//&iquest;ì
  8.         0xC3,0xB7,0xB7,0xB7,0x00,0xF7,0xD3,0xA5 //&Agrave;&Ouml;
  9.         };

  10. sbit DIO=P3^4;
  11. sbit S_CLK=P3^5;
  12. sbit R_CLK=P3^6;

  13. void send_byte (unsigned char dat)
  14. {
  15.         unsigned char i;
  16.         dat=0xfe;
  17.         S_CLK=0;
  18.         R_CLK=0;
  19.         for (i=0;i<8;i++)
  20.         {
  21.                 if (dat & 0x01)
  22.                         DIO=1;
  23.                 else
  24.                         DIO=0;
  25.                 S_CLK=1;
  26.                 dat >>=1;
  27.                 S_CLK=0;
  28.         }
  29. }

  30. unsigned char j,k,row;
  31. unsigned int z;

  32. void main()
  33. {
  34.         while (1)
  35.         {
  36.                 for (k=0;k<4;k++)
  37.                 {
  38.                         for (z=0;z<1000;z++)
  39.                         {
  40.                                 row=0x80;
  41.                                 for (j=0;j<8;j++)
  42.                                 {
  43.                                         send_byte(tabel[k][j]);
  44.                                         send_byte(row);
  45.                                         R_CLK=1;
  46.                                         R_CLK=0;
  47.                                         row=_cror_(row,1);
  48.                                 }
  49.                         }
  50.                 }
  51.         }
  52. }
復制代碼



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

使用道具 舉報

沙發
ID:704714 發表于 2020-4-25 09:25 | 只看該作者
不要沉啊
回復

使用道具 舉報

板凳
ID:275826 發表于 2020-4-25 11:04 | 只看該作者
void send_byte (unsigned char dat)
{
        unsigned char i;
        dat=0xfe;
        S_CLK=0;
        R_CLK=0;
        for (i=0;i<8;i++)
        {
                if (dat & 0x01)
                        DIO=1;
                else
                        DIO=0;
                S_CLK=1;
                dat >>=1;
                S_CLK=0;
        }
}去掉dat=0xfe;
回復

使用道具 舉報

地板
ID:704714 發表于 2020-4-25 12:59 | 只看該作者
tyrl800 發表于 2020-4-25 11:04
void send_byte (unsigned char dat)
{
        unsigned char i;

去掉可以了,終于弄回來了,太感謝您了,謝謝!!!
回復

使用道具 舉報

5#
ID:704714 發表于 2020-4-25 13:39 | 只看該作者
tyrl800 發表于 2020-4-25 11:04
void send_byte (unsigned char dat)
{
        unsigned char i;

去掉可以了,終于弄回來了,太感謝您了,謝謝!!!
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久网站免费视频 | 黄色av网站在线观看 | 日韩精品一区在线 | 免费激情 | av毛片 | 精品国产三级 | 在线日韩欧美 | 久久成人精品 | 亚洲综合色丁香婷婷六月图片 | 99成人免费视频 | 91中文视频| 麻豆精品一区二区三区在线观看 | 亚洲高清在线观看 | 97精品国产 | 天天综合网天天综合 | 精品久久久久久亚洲国产800 | 三级在线免费 | 国产成人av一区二区三区 | 一区二区在线看 | 亚洲在线看| 国产一区二区精品在线 | 日韩成人精品在线观看 | 日韩在线精品视频 | 午夜成人在线视频 | 亚洲成av片人久久久 | 欧美一级特黄aaa大片在线观看 | 精品日韩一区 | 国产亚洲一级 | 欧美在线视频一区二区 | 国产精品中文在线 | 日本福利片 | 天天天操 | 国产一区二区三区在线视频 | 国产重口老太伦 | 日韩欧美国产不卡 | 在线观看黄色 | 久久久久久99 | 日韩中文一区二区三区 | 色www精品视频在线观看 | 99re视频在线观看 | 中文字幕在线精品 |