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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 2040|回復(fù): 4
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)+8*8點(diǎn)陣屏,程序仿真失敗,求解答,謝謝

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
剛學(xué)習(xí)單片機(jī),開(kāi)始做了個(gè)8*8的點(diǎn)陣屏,當(dāng)時(shí)做好后能正常仿真運(yùn)行,之后又想在此基礎(chǔ)上加幾個(gè)彩燈,就用中斷把點(diǎn)陣放進(jìn)去了,結(jié)果效果不行,就放棄了。
把關(guān)于中斷和彩燈的程序注釋掉,只留下點(diǎn)陣屏?xí)r,仿真還是會(huì)出現(xiàn)彩燈閃爍和中斷觸發(fā),
把關(guān)于點(diǎn)陣屏的程序再重新建一個(gè)工程,之后仿真就出現(xiàn)問(wèn)題。明明一模一樣的代碼啊,
求大家?guī)兔匆幌聠?wèn)題在哪,非常感謝。
復(fù)制上來(lái)注釋變成了亂碼,有些注釋改過(guò)來(lái)了

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


  3. //8*8點(diǎn)陣屏
  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)   //發(fā)送字節(jié)函數(shù)
  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) //延時(shí)函數(shù)
  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)   //循環(huán)掃描
  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; //先選第一行(共陽(yáng)極)
  70.                                                 for (j=0;j<8;j++)
  71.                                                 {
  72.                                                         send_byte(tabel[k][j]); //·列值
  73.                                                         send_byte(row); //行
  74.                                                         R_CLK=1; //給高,發(fā)出
  75.                                                         R_CLK=0;
  76.                                                         row=_cror_(row,1); //循環(huán)右移
  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. }
復(fù)制代碼
另外重建的點(diǎn)陣屏代碼,只有點(diǎn)陣屏
  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. }
復(fù)制代碼



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

使用道具 舉報(bào)

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

使用道具 舉報(bào)

板凳
ID:275826 發(fā)表于 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;
回復(fù)

使用道具 舉報(bào)

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

去掉可以了,終于弄回來(lái)了,太感謝您了,謝謝。!
回復(fù)

使用道具 舉報(bào)

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

去掉可以了,終于弄回來(lái)了,太感謝您了,謝謝。!
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产精品久久久亚洲 | 一区二区免费视频 | 中文字幕亚洲欧美 | 精品九九 | 成人小视频在线观看 | 懂色中文一区二区三区在线视频 | 日韩欧美手机在线 | 久草青青草| 国产美女高潮 | 视频在线亚洲 | 国产福利久久 | 一级黄色片网址 | 毛片在线免费播放 | 狠狠狠色丁香婷婷综合久久五月 | 日本成人中文字幕在线观看 | 伊人网99| 精品福利在线 | 亚洲欧美在线一区 | 精品亚洲永久免费精品 | 91精品综合久久久久久五月天 | 成人a网 | 一级毛片高清 | 天天色综 | 亚洲综合久久久 | 国产小视频在线观看 | 少妇特黄a一区二区三区88av | 国产精品免费一区二区三区 | 亚洲网在线 | 亚洲欧洲精品成人久久奇米网 | 国产在线中文字幕 | 最新免费黄色网址 | av在线播放国产 | 成人av网站在线观看 | 色吧综合网| www.国产 | 国产精品美女久久久久久免费 | 高清成人av | 日韩中文字幕免费在线 | 国产精品久久久久久久久久妞妞 | 国产欧美日韩二区 | 精品一区二区三区在线视频 |