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

QQ登錄

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

搜索
查看: 3087|回復(fù): 2
收起左側(cè)

單片機(jī)+EEPROM斷電記錄源程序

[復(fù)制鏈接]
ID:916624 發(fā)表于 2021-5-19 19:44 | 顯示全部樓層 |閱讀模式
沒(méi)斷一次電,下一次啟動(dòng),就記錄一次

單片機(jī)源程序如下:
  1. #include <reg52.h>
  2. #include "at24c02.h"
  3. typedef unsigned char uchar;
  4. typedef unsigned int uint;
  5. void delay(unsigned int);
  6. void display();
  7. void keyscan();

  8. sbit LSA=P2^2;
  9. sbit LSB=P2^3;
  10. sbit LSC=P2^4;
  11. sbit K1=P3^2;

  12. uchar code smg[18]={0x3f,0x06,0x5b,0x4f,0x66,0x6d
  13. ,0x7d,0x07,0x7f,0x6f,0x77
  14. ,0x7c,0x39,0x5e,0x79,0x71,0x00,0x40};        //共陰
  15. uchar shuju[4];

  16. void main()
  17. {
  18.         uchar num=0;
  19.         IT0=1;
  20.         EX0=1;
  21.         EA=1;
  22.         num=at24c02_read(1);
  23.         num++;
  24.         at24c02_wtite(1,num);
  25.         shuju[0]=0X40;
  26.         shuju[1]=smg[num/100];
  27.         shuju[2]=smg[num/10%10];
  28.         shuju[3]=smg[num%10];
  29.         while(1)
  30.         {
  31.                 display();
  32.         }
  33. }

  34. void delay(unsigned int j)
  35. {
  36.         while(j--);
  37. }

  38. void display()
  39. {
  40.         unsigned char i;
  41.         for(i=0;i<4;i++)
  42.         {
  43.                 switch(i)
  44.                 {
  45.                         case 0:LSA=0;LSB=0;LSC=1;break;
  46.                         case 1:LSA=1;LSB=0;LSC=1;break;
  47.                         case 2:LSA=0;LSB=1;LSC=1;break;
  48.                         case 3:LSA=1;LSB=1;LSC=1;break;
  49.                 }
  50.                 P0=shuju[i];
  51.                 delay(100);                //50000能看到流水式顯示
  52.                 P0=0x00;
  53.         }
  54. }

  55. void Int0() interrupt 0
  56. {
  57.         uchar a=0,b=-1;
  58.         delay(1000);
  59.                 if(K1==0)
  60.                         at24c02_wtite(1,b);
  61. }
復(fù)制代碼

所有代碼51hei提供下載:
EEPROM斷電記錄.zip (39.34 KB, 下載次數(shù): 36)


回復(fù)

使用道具 舉報(bào)

ID:508499 發(fā)表于 2021-7-19 15:34 | 顯示全部樓層
為何複製代碼後編譯不了,多處提示錯(cuò)誤。請(qǐng)教大俠?
回復(fù)

使用道具 舉報(bào)

ID:916624 發(fā)表于 2021-7-29 20:43 | 顯示全部樓層
Stevenson_ok 發(fā)表于 2021-7-19 15:34
為何複製代碼後編譯不了,多處提示錯(cuò)誤。請(qǐng)教大俠?

你是不是沒(méi)有添加eeprom的驅(qū)動(dòng)程序,驅(qū)動(dòng)程序在壓縮包里
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表