• 大小: 72KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-29
  • 语言: 其他
  • 标签: RLC  测量  

资源简介

基于51单片机技术的PROTEUS 软件仿真的RLC 测量仪,该设计完整,详细,有一定实用价值

资源截图

代码片段和文件信息

#include
#include
#define uchar unsigned char
#define uint  unsigned int
sbit RS=P2^6;
sbit RW=P2^5;
sbit E=P2^7;
sbit R=P1^0;
sbit C=P1^1;
sbit L=P1^2;
sbit A1=P1^3;
sbit A0=P1^4;

#define LCD_data  P0
uchar   code  table1[10]={“R=      R“};
uchar   code  table2[10]={“C=      pF“};
uchar   code  table3[10]={“L=      mH“};

uchar code f_table[88]={1314151617 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100};
uchar code f_correct[88]={910 11 12 12 12 13 14 15 16 17 18 18 18 19 20 21 21 22 23 24 25 25 26 26 27 28 29 29 30 30 31 32 33 33 34 35 35 36 37 38 38 39 40 41 41 42 42 43 44 45 45 46 47 48 49 49 50 51 51 52 53 54 54 55 55 56 57 57 58 59 60 60 62 62 63 64 64 65 66 66 67 67 68 69 70 71 71};

uchar a6a5a4a3a2a1;
uchar flag;
unsigned long cntcnt1;
uchar f_cnt;


/********************************/

void delay_us(); //18us
void delay_ms(uint);
void lcd_init();
void lcd_write_com(uchar com);
void lcd_write_dat(uchar dat);
void lcd_init();
void lcd_display(uchar adduchar dat); 
/***********************************/

void delay_us()
{
uchar x;
for(x=0;x<5;x++);
}

void delay_ms(uint z)
{
uint xy;
for(x=0;x for(y=0;y<123;y++);
}
void lcd_write_com(uchar com)
{
  E=0;
  RS=0;
  RW=0;
  delay_us();
  LCD_data=com;
  E=1;    //高脉冲写入数据
  delay_us();
  E=0;
}
void lcd_write_dat(uchar dat)
{
  E=0;
  RS=1;
  RW=0;
  delay_us();
  LCD_data=dat;
  E=1;    //高脉冲写入数据
  delay_us();
  E=0;
}
void lcd_init()   //lcd初始化
{
delay_ms(15);
lcd_write_com(0x38);
delay_ms(10);
lcd_write_com(0x0c);
lcd_write_com(0x06); 
lcd_write_com(0x01);
delay_ms(2);


}
void timer_init(void)  //定时器初始化
{
TMOD=0X51;
        PT0=1;     /*中断优先*/
TH0=0x3c;
TL0=0xb0;
TH1=0;
TL1=0;
ET0=1;
ET1=1;
TR0=1;
TR1=1;
EA=1;
}
void lcd_display(uchar adduchar dat)    //lcd显示(地址,数据)
{

lcd_write_com(add); 

lcd_write_dat(dat);
delay_us();

}
void real_display(void)
{
            if(!R)
 {
//  while(!R);
 A1=A0=0;
                lcd_display(0x80table1[0]);
lcd_display(0x80+1table1[1]);
lcd_display(0x80+8table1[8]);
lcd_display(0x80+9table1[9]);
  }
else if(!C)
{
A0=0;A1=1;
lcd_display(0x80table2[0]);
lcd_display(0x80+1table2[1]);
lcd_display(0x80+8table2[8]);
lcd_display(0x80+9table2[9]);
}
else if(!L)
{
A0=1;A1=0;
lcd_display(0x80table3[0]);
lcd_display(0x80+1table3[1]);
lcd_display(0x80+8table3[8]);
lcd_display(0x80+9table3[9]);
}
if(a6)
  lcd_d

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件     112473  2012-12-14 16:37  RLC测量仪\Last Loaded RLC.DBK

     文件      14798  2012-12-14 16:48  RLC测量仪\RLC

     文件       5189  2013-01-11 09:35  RLC测量仪\RLC.c

     文件     112473  2012-12-14 16:39  RLC测量仪\RLC.DSN

     文件       9074  2012-12-14 16:48  RLC测量仪\RLC.hex

     文件         23  2012-12-14 16:48  RLC测量仪\RLC.lnp

     文件      13483  2012-12-14 16:48  RLC测量仪\RLC.LST

     文件      17212  2012-12-14 16:48  RLC测量仪\RLC.M51

     文件      17133  2012-12-14 16:48  RLC测量仪\RLC.OBJ

     文件        198  2012-12-15 09:27  RLC测量仪\RLC.plg

     文件        840  2013-06-12 10:29  RLC测量仪\RLC.PWI

     文件      64461  2012-12-15 09:28  RLC测量仪\RLC.uvopt

     文件      13221  2012-11-21 11:18  RLC测量仪\RLC.uvproj

     文件      64461  2012-12-14 16:49  RLC测量仪\RLC_uvopt.bak

     文件          0  2012-11-21 10:32  RLC测量仪\RLC_uvproj.bak

     目录          0  2013-06-12 10:29  RLC测量仪

----------- ---------  ---------- -----  ----

               445039                    16


评论

共有 条评论