This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

simulating external memory with out P2 addressing

I'm trying to simulate a simple design (written in assembler), in uVision4, that has a few memory mapped peripherals and uses P2 for GPIO. In "options for target" I set "Off-chip Ddata memory" to:
Start: 0x0000
Size: 0x0100
When I run the simulator, external memory access is being done using P2, which causes problems when the value of P2 changes for GPIO. While searching the forum posts I found some mention of P2 addressing being the default for PDATA access, but found nothing about how to disable this for the simulator. Perhaps a parameter passed to S8051? Any ideas or insight would be appreciated.

Parents
  • Do you think that the processor have any option to configure which processor port that should be used for addresses and/or data, when accessing external memory?

    If you really want to use "any" port, then you can implement helper functions:

    uint8_t read_byte(uint8_t addr);
    void write_byte(uint8_t addr,uint8_t val);
    


    And have them use whatever port pins you want. But then you obviously need to take care of R/W and latching, besides just driving or reading address and/or data values.

Reply
  • Do you think that the processor have any option to configure which processor port that should be used for addresses and/or data, when accessing external memory?

    If you really want to use "any" port, then you can implement helper functions:

    uint8_t read_byte(uint8_t addr);
    void write_byte(uint8_t addr,uint8_t val);
    


    And have them use whatever port pins you want. But then you obviously need to take care of R/W and latching, besides just driving or reading address and/or data values.

Children