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

立即注冊 登錄
返回首頁

uid:195394的個人空間

日志

24c08的16進制顯示

已有 1362 次閱讀2017-5-7 16:44

#include<reg52.h>
#include <intrins.h>
unsigned char code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
 unsigned char code zl[]={"0123456789"};
  unsigned char code mm[3]={0x6e,0x5a,0xd8};
   unsigned char code nn[3];
    unsigned char code mmnn[]={"6e5ad8"};
unsigned char sec=0; //定義計數值,每過1秒,sec加1  
unsigned int count; //定時中斷次數  
bit  write=0; //寫24C08的標志;
//sbit gewei=P2^7; //個位選通定義     
//sbit shiwei=P2^6; //十位選通定義    
/////////24C08讀寫驅動程序////////////////////
sbit scl=P3^4; // 24c08 SCL      
sbit sda=P3^5; // 24c08 SDA 
sbit K5=P1^4;  //清0按鍵     
 sbit rs=P2^0;
 sbit rw=P2^1;
 sbit e=P2^2;
 sbit BF=P0^7;
unsigned char bdata  bianl;  
sbit b0     =bianl^0;
sbit b1     =bianl^1;
sbit b2     =bianl^2;
sbit b3     =bianl^3;
sbit b4     =bianl^4;
sbit b5     =bianl^5;
sbit b6     =bianl^6;
sbit b7     =bianl^7;
 clock(unsigned long a)
{unsigned long xdata b;
 for(b=0;b<a;++b);
}
/***********************************************/
void delay()   //delay 5μs
{ ;; }
/**********************************************/
void delay1(char x)
{
 char a,b;
 for(a=x;a>0;a--)
  for(b=100;b>0;b--);
}
w1(unsigned char a)
{bianl=a;
 scl=0;clock(1);sda=b7;clock(1);scl=1;clock(1);;
 scl=0;clock(1);sda=b6;clock(1);scl=1;clock(1);;
 scl=0;clock(1);sda=b5;clock(1);scl=1;clock(1);;
 scl=0;clock(1);sda=b4;clock(1);scl=1;clock(1);;
 scl=0;clock(1);sda=b3;clock(1);scl=1;clock(1);;
 scl=0;clock(1);sda=b2;clock(1);scl=1;clock(1);;
 scl=0;clock(1);sda=b1;clock(1);scl=1;clock(1);;
 scl=0;clock(1);sda=b0;clock(1);scl=1;clock(1);;
}

void write2408(unsigned char adress,unsigned char sj)
{
//unsigned int b;
 sda=1;clock(1);scl=1;clock(1);sda=0;clock(1);
 w1(0xa0);scl=0;clock(1);scl=1;clock(1);scl=0;clock(1);
 w1(adress);scl=0;clock(1);scl=1;clock(1);scl=0;clock(1);
 w1(sj);scl=0;clock(1);scl=1;clock(1);scl=0;clock(1);
 scl=0;clock(1);sda=0;clock(1);scl=1;clock(1);sda=1;clock(1);;
 clock(500);
}
unsigned char read(unsigned char adress) 
{sda=1;clock(1);scl=1;clock(1);sda=0;clock(1);
 w1(0xa0);scl=0;clock(1);scl=1;clock(1);scl=0;clock(1);
 w1(adress);scl=0;clock(1);scl=1;clock(1);scl=0;clock(1);
 scl=0;clock(1);sda=1;clock(1);scl=1;clock(1);sda=0;clock(1);
 w1(0xa1);scl=0;clock(1);scl=1;clock(1);scl=0;clock(1);
 scl=0;clock(1);scl=1;clock(1);b7=sda;clock(1);
 scl=0;clock(1);scl=1;clock(1);b6=sda;clock(1);
 scl=0;clock(1);scl=1;clock(1);b5=sda;clock(1);
 scl=0;clock(1);scl=1;clock(1);b4=sda;clock(1);
 scl=0;clock(1);scl=1;clock(1);b3=sda;clock(1);
 scl=0;clock(1);scl=1;clock(1);b2=sda;clock(1);
 scl=0;clock(1);scl=1;clock(1);b1=sda;clock(1);
 scl=0;clock(1);scl=1;clock(1);b0=sda;clock(1);
 scl=0;clock(1);sda=0;clock(1);scl=1;clock(1);sda=1;clock(1);;
 return(bianl);
}
/*init_24c08()
{
scl=1;
clock(1);
sda=1;
clock(1);
} */
/***********************************************************/
/*void LEDshow() //LED顯示函數   
{   
P2=0xbf;
P0=table[sec/10];
delay1(2);
P2=0x7f;
P0=table[sec%10];
delay1(2);
 
} */
/***********************************************************/
bit busy()
{
bit wj;
rs=0;
rw=1;
e=1;
_nop_(); _nop_();_nop_();
wj=BF;
 _nop_(); _nop_();_nop_();
 e=0;
 return wj;
}
void wml(unsigned char ml)
{
  while(busy()==1);
  rs=0;
  rw=0;
  e=0;
  _nop_(); _nop_();_nop_();
  P0=ml;
  _nop_(); _nop_();_nop_();
  e=1;
  _nop_(); _nop_();_nop_();
  e=0;
}
 void wsj(unsigned char sj)
{
  while(busy()==1);
  rs=1;
  rw=0;
  e=0;
  _nop_(); _nop_();_nop_();
  P0=sj;
  _nop_(); _nop_();_nop_();
  e=1;
  _nop_(); _nop_();_nop_();
  e=0;
}
  void csh()
  {
   wml(0x38);
   delay1(5);
   wml(0x38);
   delay1(5);
   wml(0x38);
   delay1(5);
   wml(0x0c);
   delay1(5);
    wml(0x06);
   delay1(5);
    wml(0x01);
   delay1(5);
  
  }
void main(void)
{  csh();

 TMOD=0x01; //定時器工作在方式1
 ET0=1;
    EA=1;
 //init_24c08(); //初始化24C08
 sec=read(3);//讀出保存的數據賦于sec
 TH0=(65536-50000)/256; //對TH0 TL0賦值
 TL0=(65536-50000)%256; //使定時器0.05秒中斷一次
 TR0=1; //開始計時
  while(1)
  {
     // LEDshow();
    wml(0x85);
    wsj(zl[sec/10]);
    delay1(5);
    wsj(zl[sec%10]);
     delay1(5);
       write2408(6,mm[0]);
    nn[0]=read(6);
    if(nn[0]==mm[0])
    {
     wml(0xc5);
     wsj(mmnn[0]);
     delay1(5);
     wsj(mmnn[1]);
    delay1(5);
    }
   if(write==1) //判斷計時器是否計時一秒      
   {
   write=0; //清零
   write2408(3,sec); //在24c08的地址2中寫入數據sec   
   }
    if(K5==0){
     delay1(10);
   if(K5==0){
    sec=0;
   }
   }
  }
}
/**************************************************************/
void t0() interrupt 1 //定時中斷服務函數  
{
 TH0=(65536-50000)/256; //對TH0 TL0賦值 
 TL0=(65536-50000)%256; //重裝計數初值 
 count++; //每過50ms tcnt加一    
 if(count==20) //計滿20次(1秒)時   
 {
  count=0; //重新再計
  sec++;
  write=1; //1秒寫一次24C08
  if(sec==100) //定時100秒,在從零開始計時
  {sec=0;}
 }
 }

路過

雞蛋

鮮花

握手

雷人

全部作者的其他最新日志

評論 (0 個評論)

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

Powered by 單片機教程網

返回頂部
主站蜘蛛池模板: 免费精品视频 | 中文字幕亚洲视频 | 国产日产久久高清欧美一区 | 亚洲中午字幕 | 一区二区三区在线观看免费视频 | 日本在线视频中文字幕 | 一区二区精品 | 欧美亚洲视频在线观看 | 国产亚洲二区 | 国产精品99久久久久久宅男 | 国产一区二区精品自拍 | 网站黄色av | 欧州一区 | 91不卡在线| 日韩电影一区 | 免费成人av网站 | 亚洲第一区国产精品 | 日韩最新网站 | 久久er99热精品一区二区 | 欧美在线观看一区 | 久久丝袜 | 久久一区二区三区四区 | 国产精品一区二区在线观看 | 国产在线看片 | 久久久久无码国产精品一区 | 91在线网站 | 欧美激情在线播放 | 久久久久久国产 | 五月婷婷婷| 亚洲一区二区三区国产 | 久久精品黄色 | 国产成人99久久亚洲综合精品 | 欧美亚洲日本 | 国产一区二区三区欧美 | 久久久www| 在线视频国产一区 | 国产在线观看一区二区三区 | 国产一级网站 | 亚洲视频中文字幕 | 亚洲一本 | 亚洲导航深夜福利涩涩屋 |