EngineersGarage

  • Engineers Garage Main Site
  • Visit our active EE Forums
    • EDABoard.com
    • Electro-Tech-Online
  • Projects & Tutorials
    • Circuits
    • Electronic Projects
    • Tutorials
    • Components
  • Digi-Key Store
    • Cables, Wires
    • Connectors, Interconnect
    • Discrete
    • Electromechanical
    • Embedded Computers
    • Enclosures, Hardware, Office
    • Integrated Circuits (ICs)
    • Isolators
    • LED/Optoelectronics
    • Passive
    • Power, Circuit Protection
    • Programmers
    • RF, Wireless
    • Semiconductors
    • Sensors, Transducers
    • Test Products
    • Tools
  • Advertise
You are here: Home / Topics / please if anybody have genune version of keil.please send hex file for the code given below, to my gmail [email protected]

please if anybody have genune version of keil.please send hex file for the code given below, to my gmail [email protected]

|

Microcontroller › 8051 › please if anybody have genune version of keil.please send hex file for the code given below, to my gmail [email protected]

  • This topic has 1 reply, 2 voices, and was last updated 10 years, 11 months ago by Ashutosh Bhatt.
Viewing 2 posts - 1 through 2 (of 2 total)
  • Author
    Posts
  • April 16, 2015 at 3:23 am #3624
    Gagan
    Participant
    #include<P89V51RD2.H>
    sbit ale=P1^0;  //address latch enable
    sbit oe=P1^3;  //output enable
    sbit sc=P3^3;  //start conversion
    sbit eoc=P1^2;  //end of conversion
    sbit clk=P1^7;  // clock // Address pins for selecting input channels.
    sbit ADD_B=P3^4;
    sbit ADD_C=P1^5;
    sfr lcd_data_pin=0xA0;  //P2 port
    sbit rs=P3^7;
    sbit rw=P3^1;
    sbit en=P3^6;
    sfr input_port=0x80;  //P0 port
    unsigned int number,k,rm,i,asci[10];
    float step=5/255,value;
    void timer0() interrupt 1  // Function to generate clock of frequency 500KHZ using Timer 0 interrupt.
    {
    clk=~clk;
    }
     
    void delay(unsigned int count)  // Function to provide time delay in msec.
    {
    int i,j;
    for(i=0;i<count;i++)
    for(j=0;j<1275;j++);
    }
     
    void lcd_command(unsigned char comm)  //Function to send command to LCD.
    {
    lcd_data_pin=comm;
    en=1;
    rs=0;
    rw=0;
    delay(10);
    en=0;
    }
     
    void lcd_data(unsigned char disp)  //Function to send data to LCD.
    {
    lcd_data_pin=disp;
    en=1;
    rs=1;
    rw=0;
    delay(10);
    en=0;
    }
     
    lcd_dataa(char addr,unsigned char *disp)  //Function to send string data to LCD.
    {
    lcd_command( addr );
    while( *disp != '' )
    {
    lcd_data( *disp );
    disp++;
    delay(1); // 0.1 sec delay
    }
    }
    void lcd_ini()  //Function to inisialize the LCD
    {
    lcd_command(0x38); 
    delay(5);
    lcd_command(0x0F); 
    delay(5);
    lcd_command(0x80);  //Force cursor to blink at line 1 positon 0
    delay(5);
    lcd_dataa( 0x80, "    WELCOME TO     " );
    lcd_dataa( 0xC0, "    DATA LOGGER    " );
     
    }
    void BCD()
    {
    k=0;
    do
    {
    rm=number%10;
    number=number/10;
    asci[k]=rm;
    k++;
    }while(number=!0);
    for(i=k;i>=0;i–)
    {
    asci=asci+48;
    lcd_data(asci);
    }
    }
    void current()
    {
      value=(float)(((number*step)-2.5)/0.1);
      value=(int)(value*100);
      number=value;
      lcd_dataa(0x80,"current=00.00 A");
    }
    void current2()
    {
      value=(float)((2.5-(number*step))/0.1);
      value=(int)(value*100);
      number=value;
      lcd_dataa(0x80,"current=00.00 A");
    }
     
    void adc()  //Function to drive ADC
    {
    while(1)
    {
      ADD_C=0;  // Selecting input channel 2 using address lines
      ADD_B=0;  //for current sensor
      delay(2);
      ale=1;
      delay(2);
      sc=1;
      delay(1);
      ale=0;
      delay(1);
      sc=0;
      while(eoc==1);
      while(eoc==0);
      oe=1;
      number=input_port;
      i=number;
      if((i>=127)&&(i<=128))
      {
      number=0;
      lcd_dataa(0x80,"current=00.00 A");
      }
      if((i>=129)&&(i<=132))
      {
      current();
      lcd_command(0x8B);
      BCD();
      }
      if((i>132)&&(i<=178))
    {
    current();
    lcd_command(0x89);
    BCD();
    }
    if((i>178)&&(i<=230))
    {
    current();
    lcd_command(0x88);
    BCD();
    }
    if((i>=123)&&(i<=126))   //opposite direction
    {
    current2();
    lcd_command(0x8B);
    }
    if((i>=77)&&(i<123))
    {
    current2();
    lcd_command(0x89);
    BCD();
    }
    if((i>=25)&&(i<77))
    {
    current2();
    lcd_command(0x88);
    BCD();
    }  
    delay(2);
    oe=0;
    ADD_C=0;
    ADD_B=1;
    delay(2);
    ale=1;
    delay(2);
    sc=1;
    delay(1);
    ale=0;
    delay(1);
    sc=0;
    while(eoc==1);
    while(eoc==0);
    oe=1;
    number=input_port;
    i=number;
    if((i>0)&&(i<64))
    {
      value=(float)((i*step*40)/5);
      value=(int)(value*100);
      number=value;
    lcd_dataa(0xC0,"Voltage=00.00V");
    lcd_command(0xC9);
    BCD();
    }
    if((i>=64)&&(i<=255))
    {
      value=(float)((i*step*40)/5);
      value=(int)(value*100);
      number=value;
      lcd_dataa(0xC0,"Voltage=00.00V");
      lcd_command(0xC8);
      BCD();
    }
      delay(2);
      oe=0;
      delay(200);
      ADD_C=1;           //radiation
    ADD_B=0;
    delay(2);
    ale=1;
    delay(2);
    sc=1;
    delay(1);
    ale=0;
    delay(1);
    sc=0;
    while(eoc==1);
    while(eoc==0);
    oe=1;
    number=input_port;
    i=number;
    if((i>0)&&(i<167))
    {
    value=0;
    number=value;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x84);
    BCD();
    }
    if((i>=167)&&(i<168))
    {
    number=5;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x87);
    BCD();
    }
    if((i>=168)&&(i<169))
    {
    number=20;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x86);
    BCD();
    }
    if((i>=169)&&(i<170))
    {
    number=40;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x86);
    BCD();
    }
    if((i>=170)&&(i<171))
    {
    number=60;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x86);
    BCD();
    }
    if((i>=171)&&(i<172))
    {
    number=86;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x86);
    BCD();
    }
    if((i>=172)&&(i<173))
    {
    number=100;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=173)&&(i<174))
    {
    number=110;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=174)&&(i<176))
    {
    number=120;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=176)&&(i<177))
    {
    number=125;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=178)&&(i<179))
    {
    number=137;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=179)&&(i<180))
    {
    number=140;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=181)&&(i<182))
    {
    number=150;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=183)&&(i<184))
    {
    number=160;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=184)&&(i<185))
    {
    number=170;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=184)&&(i<185))
    {
    number=170;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=185)&&(i<186))
    {
    number=175;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=186)&&(i<187))
    {
    number=180;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=188)&&(i<189))
    {
    number=197;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=189)&&(i<190))
    {
    number=203;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=190)&&(i<191))
    {
    number=210;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=191)&&(i<192))
    {
    number=225;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=192)&&(i<193))
    {
    number=230;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=193)&&(i<194))
    {
    number=250;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=194)&&(i<195))
    {
    number=261;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=195)&&(i<196))
    {
    number=271;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=196)&&(i<197))
    {
    number=291;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=197)&&(i<198))
    {
    number=300;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=198)&&(i<199))
    {
    number=310;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=199)&&(i<200))
    {
    number=325;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=200)&&(i<201))
    {
    number=348;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=201)&&(i<202))
    {
    number=356;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=202)&&(i<204))
    {
    number=374;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=204)&&(i<205))
    {
    number=400;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=205)&&(i<206))
    {
    number=408;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=206)&&(i<207))
    {
    number=416;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=207)&&(i<208))
    {
    number=464;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=208)&&(i<209))
    {
    number=500;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=209)&&(i<210))
    {
    number=533;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=210)&&(i<211))
    {
    number=575;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=211)&&(i<212))
    {
    number=593;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=212)&&(i<213))
    {
    number=635;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=213)&&(i<214))
    {
    number=650;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=214)&&(i<215))
    {
    number=680;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=215)&&(i<216))
    {
    number=700;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=216)&&(i<217))
    {
    number=732;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=217)&&(i<218))
    {
    number=763;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=218)&&(i<219))
    {
    number=778;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=219)&&(i<220))
    {
    number=850;
    lcd_dataa(0x80,"Rad=0000 w/m^2");
    lcd_command(0x85);
    BCD();
    }
    if((i>=220)&&(i<221))
    {
    number=863;
    lcd_dataa(0x80,"Rad=0000 w/m^2");;
    lcd_command(0x85);
    BCD();
    }
    if((i>=221)&&(i<222))
    {
    number=900;
    lcd_dataa(0x80,"Rad=0000 w/m^2");;
    lcd_command(0x85);
    BCD();
    }
    if((i>=222)&&(i<223))
    {
    number=945;
    lcd_dataa(0x80,"Rad=0000 w/m^2");;
    lcd_command(0x85);
    BCD();
    }
    if((i>=223)&&(i<224))
    {
    number=960;
    lcd_dataa(0x80,"Rad=0000 w/m^2");;
    lcd_command(0x85);
    BCD();
    }
    if((i>=224)&&(i<225))
    {
    number=980;
    lcd_dataa(0x80,"Rad=0000 w/m^2");;
    lcd_command(0x85);
    BCD();
    }
    if((i>=225)&&(i<226))
    {
    number=1000;
    lcd_dataa(0x80,"Rad=0000 w/m^2");;
    lcd_command(0x85);
    BCD();
    }
    delay(2);
    oe=0;
    ADD_C=1;      //Temperature
    ADD_B=1;               
    delay(2);
    ale=1;
    delay(2);
    sc=1;
    delay(1);
    ale=0;
    delay(1);
    sc=0;
    while(eoc==1);
    while(eoc==0);
    oe=1;
    number=input_port;
    i=number;
    if((i>0)&&(i<5))
    {
    value=(float)((i*step)/0.01);
    number=(int)value;
    lcd_dataa(0xC0,"Tempr=000 C");
    lcd_command(0xC8);
    BCD();
    }
    if((i>5)&&(i<51))
    {
    value=(float)(((i*step)/0.01));
    number=(int)(value);
    lcd_dataa(0xC0,"Tempr=000 C");
    lcd_command(0xC7);
    BCD();
    }
    if((i>=51)&&(i<=255))
    {
    value=(float)(((i*step)/0.01));
    number=(int)(value);
    lcd_dataa(0xC0,"Tempr=000 C");
    lcd_command(0xC6);
    BCD();
    }
    delay(2);
    oe=0;
    }               //while
    }               //adc                                                                                                                               
    void main()
    {
    eoc=1;
    ale=0;
    oe=0;
    sc=0;
    TMOD=0x02;  //timer0 setting for generating clock of 500KHz using interrupt enable mode.
    TH0=0xFD;
    IEN0=0x82;
    TR0=1;
    lcd_ini();
    adc();
    }
     
    May 4, 2015 at 9:37 am #12854
    Ashutosh Bhatt
    Participant

    what is the problem u r facing?

  • Author
    Posts
Viewing 2 posts - 1 through 2 (of 2 total)
  • You must be logged in to reply to this topic.
Log In

RSS Recent Posts

  • Voltage comparator circuit verification April 10, 2026
  • Help with a coffee machine circuitboard April 10, 2026
  • DS3231 RTC + 24C32 EEPROM I²C Module (PIC18) April 9, 2026
  • Bot checks April 9, 2026
  • Heltec V3 GPS repeater. April 9, 2026

Stay Up To Date

Newsletter Signup
EngineersGarage

Copyright © 2026 WTWH Media LLC. All Rights Reserved. The material on this site may not be reproduced, distributed, transmitted, cached or otherwise used, except with the prior written permission of WTWH Media
Privacy Policy | Advertising | About Us

Search Engineers Garage

  • Engineers Garage Main Site
  • Visit our active EE Forums
    • EDABoard.com
    • Electro-Tech-Online
  • Projects & Tutorials
    • Circuits
    • Electronic Projects
    • Tutorials
    • Components
  • Digi-Key Store
    • Cables, Wires
    • Connectors, Interconnect
    • Discrete
    • Electromechanical
    • Embedded Computers
    • Enclosures, Hardware, Office
    • Integrated Circuits (ICs)
    • Isolators
    • LED/Optoelectronics
    • Passive
    • Power, Circuit Protection
    • Programmers
    • RF, Wireless
    • Semiconductors
    • Sensors, Transducers
    • Test Products
    • Tools
  • Advertise