Skip to content

ibram-reda/AVREmulator

Repository files navigation

AVREmulator

This is an AVR Emulator written for Fun, this emulator currently build For Atmega32, in future I hope to make it general to work with all AVR family.

Resources

The resources of information that i follow to build this emulator is

  1. book : The AVR Microcontroller and Embedded Systems Using Assembly and C By Muhammad Ali Mazidi
  2. AVR opcode summary
  3. AVR instruction set manual

Install

to be able to run the code, you need the Visual Studio 22 or .net 7 SDK to be installed in your machine

  1. Download the project : you can download it as ZIP file or through git as following

    git clone https://github.com/ibram-reda/AVREmulator.git
  2. Open the project folder

    cd .\AVREmulator
    
  3. Run the program

    • Restore Pakages
      dotnet restore
      
    • build the app
      dotnet Build --no-restore
      
    • run the UI
      dotnet run --project .\AVREmulator.UI\
      

Note that: the emulator is still not support all kind of AVR instructions so it will probably fail to execute the hex file. you can see all supported instruction in our emulator

the following is a simple code example can run and test with our emulator

Start:
    LDi r18,0x29  ;Load Register 18 with value 0x29 
    rjmp Start    ;Repete that again 

the hex file for the above program can be found Here

About

simple AVR Emulator written in dotnet

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages