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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機小白關于使用AT24C02的問題

[復制鏈接]
跳轉到指定樓層
樓主


在截圖中要求的基礎上實現按9清除 按10存儲在AT24C02中 按返回數碼管重新顯示之前點確認存在芯片中的數,大佬看一下程序邏輯哪兒有問題
  1. #include<reg51.h>
  2. #include<AT24C02.h>
  3. #define uchar unsigned char
  4. #define        uint unsigned int
  5. sbit P3_2=P3^2;
  6. uchar code led_mod[]={0x3f,0x06,0x5b,0x4f,0x66,     
  7. 0x6d,0x7d,0x07,0x7f,0x6f,0x00};  
  8. uchar code BitCode[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};   
  9. uchar huanchong[]={10,10,10,10,10,10,10,10};            
  10. uchar convert[]={10,10,10,10,10,10,10,10};              
  11. uchar a=0;
  12. sbit        SDA = P3^1;                        
  13. sbit        SCL = P3^0;                        
  14. #define E2PROM_ADDR  0x12


  15. void dnms(uchar n)
  16. {
  17.         uchar i;
  18.         for(i=0;i<n;i++)
  19.                 delay1ms();
  20. }

  21. void int0()  interrupt 0
  22. {
  23.         uchar code RowCode[]={0xfe,0xfd,0xfb,0xf7};     
  24.         uchar temp,row,column,i,y,z;
  25.         uchar m,n;
  26.         P1=0xf0;                    
  27.         temp = P1 & 0xf0;
  28.             if (temp != 0xf0)                          
  29.                         {
  30.        P2=0xff;
  31.        switch (temp)
  32.                    {                                      
  33.                                  case 0x70: column = 3; break;
  34.                                  case 0xb0: column = 2; break;
  35.                                  case 0xd0: column = 1; break;
  36.                                  case 0xe0: column = 0; break;
  37.                                  default: break;
  38.                          }
  39.                          for (i=0;i<4;i++)                     
  40.                          {
  41.                                  P1 = RowCode[i];
  42.                                  temp = P1 & 0xf0;
  43.                                  if (temp !=0xf0)
  44.                                  {
  45.                                          row = i;break;
  46.                                  }
  47.                          }
  48.                          y= row *4 + column;                    
  49.                          if(y<10)
  50.                          {
  51.                                  if(a<8)
  52.                                  {                        
  53.                                          huanchong[a++]=y;
  54.                              m=a;
  55.                                          for(n=0;n<a;n++)
  56.                        {
  57.                                 convert[n]=huanchong[--m];  
  58.                                                 
  59.                              }   
  60.                                  }
  61.                          }
  62.              if(y==10)
  63.                          {                          
  64.                                  P2=0xff;
  65.                                  a=0;                           
  66.                                  for(z=0;z<8;z++)
  67.                                  {
  68.                                          huanchong[z]=10;              
  69.                                          convert[z]=10;               
  70.                                  }
  71.                    }
  72.                         while((P1 & 0xf0) !=0xf0);         
  73.          }
  74.                         
  75. }

  76. void start()
  77. {
  78.         SDA = 1;        
  79.         SCL = 1;        
  80.         NOP4();
  81.         SDA = 0;        
  82.         NOP4();
  83.         SCL = 0;        
  84. }

  85. void stop()
  86. {
  87.         SDA = 0;        
  88.         SCL = 1;        
  89.         NOP4();
  90.         SDA = 1;        
  91.         NOP4();
  92.         SDA = 0;
  93.         SCL = 0;
  94. }


  95. void Write_E2PROM(uchar add,uchar dat)
  96. {
  97.         start();
  98.         Write_E2PROM(E2PROM_ADDR);               
  99.   Write_E2PROM(add);                        
  100.         Write_E2PROM(dat);                        
  101.         stop();                                                
  102.         dnms(4);
  103. }

  104. uchar        Read_E2PROM(uchar set_addr)
  105. {
  106.         start();
  107.         Read_E2PROM(E2PROM_ADDR);               
  108.         Read_E2PROM(set_addr);               
  109.         return (Read_E2PROM());               
  110. }

  111. void BufToSeg(void)                        
  112. {                       
  113.         uchar i=0;
  114.         uchar x;
  115.   for(i=0;i<8;i++)
  116.          {
  117.         
  118.            P0=led_mod[10];                       
  119.                  P2= BitCode[i];                       
  120.                  P0=led_mod[convert[i]];               
  121.                  if(P1=0x7b){
  122.                   Write_E2PROM(0x00,convert[i]);
  123.                  }
  124.                  if(P1=0xe7){
  125.                         x=Read_E2PROM(0x00);
  126.                         P0=led_mod[10];                       
  127.                         P2= BitCode[x];                       
  128.                   P0=led_mod[convert[x]];               
  129.                  }
  130.         }
  131. }



  132. void main(void)
  133. {
  134.         EA=1;
  135.         EX0=1;                        
  136.         IT0=1;                        
  137.         while(1)
  138.         {
  139.                 P1=0x0f;
  140.                 BufToSeg();

  141.         }
  142. }
復制代碼
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:584814 發表于 2020-6-6 08:44 | 只看該作者
自己把程序逐行注釋一下然后就全明白了
回復

使用道具 舉報

板凳
ID:769497 發表于 2020-6-6 19:46 | 只看該作者
請問24c02是咋用的
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产精品一区二区三区四区五区 | 婷婷久久精品一区二区 | 天天射色综合 | 欧美天堂在线 | 97热在线 | 三级在线视频 | 成年人在线观看 | 亚洲国产黄 | 81精品国产乱码久久久久久 | 色999视频 | 91嫩草精品 | 精品国产乱码久久久久久丨区2区 | 韩日一区二区三区 | 精品粉嫩aⅴ一区二区三区四区 | 在线观看视频一区二区三区 | 人人做人人澡人人爽欧美 | 日本一本在线 | 亚洲高清在线观看 | 亚洲精品电影网在线观看 | 中文字幕一区二区不卡 | 国产成人精品一区二区三区网站观看 | 欧美4p | 黑人精品欧美一区二区蜜桃 | 欧美激情视频一区二区三区在线播放 | 男插女下体视频 | 亚洲精品电影 | 国产成人jvid在线播放 | 中文字幕一区二区三 | 狠狠操你 | 国产精品日产欧美久久久久 | 97福利在线| 91麻豆精品国产91久久久久久 | 亚洲精品久久嫩草网站秘色 | 91视视频在线观看入口直接观看 | 久久一| 成人一区二区视频 | 夜夜夜夜夜夜曰天天天 | 少妇特黄a一区二区三区88av | 国产在线观看一区二区三区 | 青青草av | 国产精品99久 |