Multisim and Ultiboard

cancel
Showing results for 
Search instead for 
Did you mean: 

8051 beginner

Hi, people i need to simulate my project of 8051 on Multisim.......i used Proteus before this but i need a more enhacned simulator so i switched to MultiSim......now the problem is that i cant simulate a simple as possible circuit containing 8051....... you can view the circuit here

 

 

and i loaded a simple external hex file by taking the properties of the 8051 and going to code tab and providing the location of the hex file......my code is just turning the leds on for 3 seconds and then off for three seconds...... can u please guide what can i do to make it work.......plz help.....

 

or can u people make a sample program for me with steps in  photos or in a video.....i'll be very thankful to u for this......

 

use this code if u feel like: it works perfect on Proteus......

 

 

#include<AT89X51.h>

delay()            // timer of 1 sec
{
int d;
    for(d=0;d<=1;d++)
    {
    TMOD=0x01;
    TL0=0xFD;
    TH0=0x04B;
    TR0=1;                                     // start timer.
    while(TF0==0);

    TR0=0;                                   // stop timer
    TF0=0;

    }
}

void main()

{
    while(1)
    {

        P2=0xAA;
        delay();
   
        P2=0x55;
        delay();
    }
}

0 Kudos
Message 1 of 6
(7,758 Views)
I've found out the solution myself...........u have to increase the time step in simulation....... actually the time step is very small in MultiSIm as default......its in milliseconds......so u need  to increase the time steps........from the menu pick Simulate > Interactive Simulation Settings........
0 Kudos
Message 2 of 6
(7,739 Views)

I want to pose a question to you about this. I have dabbled with the MCU Module and I am no expert at it by far, but I am experienced in other aspects of Multisim.

 

The questions I have is this: Were you getting "Timestep Too Small" errors?  When you adjusted the default TMAX did this make the time in the lower right hand corner match what you were trying to do?

 

I will eleaborate on that last question a bit. When you change the time step of the simulator it can speed up or slow down the simulation engine. What it does not do is alter the "circuit time" in the lower right hand corner of the screen. If your LED's were blinking every 3 second of circuit time then after the change it would still blink at the same rate, but you would perceive it to be blinking slower because now the simulation engine is taking longer to get to 3 seconds of circuit time.

 

I hope I explained that to where it is understandable. I just don't want you to think that TMAX alters any time delays that you have set up in your code.

 

Kittmaster's Component Database
http://ni.kittmaster.com

Have a Nice Day
0 Kudos
Message 3 of 6
(7,731 Views)

I have no experience with the Multisim controller simulator, but much experience with the 8051-family in real.

For the real circuit you need a crystal circuit at XTAL1 and XTAL2.

 

greetings,

Lutz



I am working with :
UltiCap 2001 & UltiBoard 5.72 (for my daily work on XPpro-SP3, german)
Multisim Power Pro 10 (small & simple simulations)
Ultiboard Full 10 (no)
start looking for professional alternatives...

Sorry about my english!
0 Kudos
Message 4 of 6
(7,695 Views)

hi everyone, i am using multisim for my project work. my problem is whenever i executes movc a,@a+dptr instruction, it makes all bits of port 2 to low level. is it a bug or is there any link between dptr and p2?

please help me, i have very less time.....

 

0 Kudos
Message 5 of 6
(7,164 Views)

Hi   I am  just  starting with  multisim and assembly  programming, I  need  to do a calcuator usng  the 8051+ eeprom + lcd display but  i  have no clue about how to do it . I will really appreciate  some advice

0 Kudos
Message 6 of 6
(3,676 Views)