Kjetil's Information Center: A Blog About My Projects

PIC16F887A Microcontroller Emulator

This emulator was created to be be able to reverse engineer the AE-GraphicLCD board, but I have done a few extra things to try to make it more generic and adaptable to other projects. It can currently run in two modes, either a generic "chip view" mode which displays the port activity in ASCII art while running a program, or in "AE-GraphicLCD" mode which is heavily tied to tracing the peripherals of that board.

Here is what the generic "chip view" mode looks like:

        +------|__|------+
        |             RB7| <--  0
 0  --> |RA0          RB6| <--  0
 0 <--  |RA1          RB5| <--  0
 1 <--  |RA2          RB4| <--  0
 1 <--  |RA3          RB3| <--  0
 0  --> |RA4          RB2| <--  0
 1 <--  |RA5          RB1| <--  0
 0 <--  |RE0          RB0| <--  0
 0 <--  |RE1             |
 0 <--  |RE2             |
        |             RD7| <--  0
        |             RD6| <--  0
        |             RD5| <--  0
        |             RD4| <--  0
 1 <--  |RC0	   RX/RC7| <--  0
 0 <--  |RC1	   TX/RC6|  --> 0
 0 <--  |RC2          RC5|  --> 1
 0  --> |RC3/SCL  SDA/RC4| <--  0
 0  --> |RD0          RD3| <--  0
 0  --> |RD1          RD2| <--  0
        +----------------+
          


For convenience and as an example, a memory dump from the AE-GraphicLCD board PIC microcontroller is included in the source as "aegl.hex".

You can download version 0.1 here or check the GitHub repository.

Topic: Open Source, by Kjetil @ 08/11-2024, Article Link