Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for 8 & 16 bits sram traces and SH1106 OLED display #533

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

jpcornil-git
Copy link

Add support for (one commit for each):

  • 8 & 16 bits SRAM traces (0x20-ramend, i.e. overlap IO range to handle 16 bits registers)

SRAM tracing allows tracking of 16 bits registers, e.g. SP (Stack Pointer) as well as firmware variables, e.g. __brkval (Heap), that have no fixed adresses (using new AVR_MMCU_TAG_VCD_SRAM_8 and AVR_MMCU_TAG_VCD_SRAM_16 macro to populate the avr_mmcu_vcd_trace_t in the .mmcu section).

  • SH1106 128x64 I2C OLED display driver + demo code

SH1106 demo code emulates a complex system (OLED display, joystick for navigation & buttons) integrating support for SRAM as well a Program Counter tracing from the command line.

This has been developped to analyze heap-stack margin and evolution over time in the following project: https://github.com/jpcornil-git/Cone2Hank.

VCD trace example:
https://github.com/jpcornil-git/simavr/tree/master/examples/board_sh1106#examples

This enables tracing of 16 bits IO registers, e.g. SP (SPH+SPL)
as well as FW variables, e.g. heap (__brkval)
+ associated example/demo code
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant