导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→发表看法:[www_com]大虾们,帮忙给看看。没加看门狗,数码管可



No.42806
作者:www_com
邮件:3w@sina.com
ID:12247
登陆:10次
文章数:7篇
最后登陆IP:211.98.106.47
最后登陆:2003/10/21 14:16:57
注册:2003/5/18 13:07:26
财富:135
发帖时间:2003/9/26 10:23:51
发贴者IP:211.98.106.47
标题:www_com:大虾们,帮忙给看看。没加看门狗,数码管可以显示00-99。
摘要:No.42806大虾们,帮忙给看看。没加看门狗,数码管可以显示00-99。 数码管显示99。看看应该在哪儿喂狗呢?
    /* this program is a led's example */

#include  <reg51.h>     
#include  <stdio.h>  
#include  <INTRINS.H>  
                           
#define uchar unsigned char                     
#define uint  unsigned int 

#define WREN    0x06
#define WRDI    0x04
#define RDSR    0x05
#define WRSR    0x01
#define READ    0x03
#define WRITE   0x02
#define nop5(); _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();

sbit SO=P2^0;
sbit SI=P2^2;
sbit SCK=P2^3;
sbit SCS=P2^4;
sbit WP=P2^1;


void rd_data(uchar);
void timeToBuffer();
void delay(uint);
void scanled();
void csh_X25045();
void rest_dog();


bit dog_sign;
uchar one;
uchar ten;
uchar buffer[2];
uchar dog_buff[10];

void delay(uint x)
{ uchar j;
 while((x--)!=0){
 for(j=0;j  <125;j++)
{;}
}
}

void init_sys(void)
 { IP=0x08;
  TMOD=0x11;
  TH0=0x4c;
  TL0=0;
  TH1=0xb8;
  TL1=0;
  TR0=1;
  TR1=1;
  ET0=1;
  ET1=1;
  EA=1;
  ten=0;
  one=0;
  dog_sign=0;
  buffer[0]=0x28;
  buffer[1]=0x28;
  }


void timer0(void) interrupt 1 using 1
 {uchar click=0;
  TH0=0x4c;
  TL0=0x81;
  ++click;
  if(click>  =20){
    click=0;
  if(one++>  =9){ 
   one=0;
    if(ten++>  =9){
     ten=0;
  }
    }
  }
 }

void timer1(void) interrupt 3 using 2
 {uchar count=0;
  TL1=0;
  TH1=0xb8;
  ++count;
  if(count==70)
  rest_dog();
  }
  
void scanled()
 {uchar i;
  uchar opt0=0xff;
  uchar digit=0x80;
  for(i=0;i  <2;i++){
    P2=digit&0xc0;
    P0=buffer[i];
 delay(1);
 P0=0xff;
   digit>  >  =1;
 }    
}

void timeToBuffer()
  { rd_data(10);
    buffer[0]=dog_buff[one];
    buffer[1]=dog_buff[ten];

}

/*********************************************************************
%%%%%%%%%%%%%%%%%%%%%%%%*X5045开始%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
**********************************************************************/

/**********************************************************************
向 X5045 发送命令 (8 bit) (初始:SCS = 0), SCK上升沿锁存数据
***********************************************************************/
void sent_X5045(uchar n)
{
 uchar    i;

    for ( i=0x80; i>  =0x01; i=i>  >  1 )
    {
     SCK = 0;    /* SCK=0 */
     if ( ( n & i ) == 0 ) SI = 0; 
  else SI = 1;    /* 置SI */
     SCK = 1;    /* SCK=1 */
     SI=0;        /* 清SI */
    }
}

/***********************************************************************
从 X5045 读出数据 (8 bit) (初始:SCS = 0), SCK下降沿输出数据
************************************************************************/
uchar    get_X5045()
{
 uchar    i,n;

    n=0x00;
    for ( i=0x80; i>  =0x01; i=i>  >  1 )
    {
       SCK = 1;
       SO = 1;        /* 置 SO 为读 */
       SCK = 0;

      if ( SO == 1 ) n = ( n | i );    
    }
    return( n );
}

/******************************************************************************
读 X5045 状态寄存器 (8 bit)
******************************************************************************/
uchar    rdsr_X5045()
{
 uchar    n;
    SCK = 0;
    SCS = 0;
    sent_X5045( 0x05 );     /* RDSR =>   X5045 */
    n = get_X5045( );
    SCK = 0;
    SCS = 1;
    return( n );
}

/******************************************************************************
等 X5045 内部写完成 
******************************************************************************/
void    wrok_X5045()
{
uchar    i;
    for ( i=0; i  <=99; i++ )
    {
     if ( ( rdsr_X5045() & 0x01 ) == 0x00 ) break;
    }
}

/******************************************************************************
置 X5045 写使能 
******************************************************************************/
void    wren_X5045()
{
    SCK = 0;
    SCS = 0;
    sent_X5045( 0x06 );     /* WREN =>   X5045 写使能 */
    SCK = 0;
    SCS = 1;
}

/****************************************************************** ......

>>返回讨论的主题



  发表回复
用户名   *您没有注册?
密码   *
验证码   * .
标题   *
心情
随便说说    我回答你    最新发现    得意的笑   
气死我了    真是没劲    坚决同意    表示反对   
大家过来    好奇怪哟    懒得理它    大家小心   
文件上传
内容


字体:      字体大小:    颜色:
粗体 斜体 下划线 居中 超级连接 Email连接 图片 Flash图片 Shockwave文件 realplay视频文件 Media Player视频文件 QuickTime视频文件 引用 飞行字 移动字 发光字 阴影字 查看更多的心情图标 背景音乐
点击加入表情
                         
选项
有回复时用短消息通知您?

   




老古网执行:31毫秒 最大:5186毫秒 查询6次