Skip to content

Output Generation

How REVA Produces Physical Waveforms


Overview

The final waveform generated by REVA is the result of several independent subsystems working together.

No single subsystem creates the complete waveform.

Instead, each layer contributes specific information.


Output Generation Chain

Carrier Frequency
        ↓
Carrier Duty Cycle
        ↓
Packet Family
        ↓
Pulse Scaling
        ↓
Gap Scaling
        ↓
Packet Executor
        ↓
Timer2 Scheduler
        ↓
Timer1 Carrier Engine
        ↓
OC1A / OC1B
        ↓
D9 / D10

Carrier Contribution

Timer1 generates the fundamental pulse train.

The carrier defines:

  • pulse frequency
  • pulse spacing
  • duty cycle

Packet Contribution

The selected packet family defines:

  • burst lengths
  • segment arrangement
  • packet geometry

Packet families shape the envelope of the waveform.


Runtime Scaling

Runtime controls modify packet behavior.

Examples:

  • pulse scaling
  • gap scaling

Scaling changes packet size while preserving geometry.


Packet Executor Contribution

The Packet Executor combines:

  • packet geometry
  • scaling factors
  • execution rules

The result is executable timing information.


Timer2 Contribution

Timer2 controls:

  • burst start points
  • burst stop points
  • segment transitions
  • packet repetition

Timer2 determines when carrier pulses become visible.


Timer1 Contribution

Timer1 generates the actual carrier waveform.

Timer1 determines what the pulses look like.

Timer2 determines when they appear.


Physical Outputs

The final waveform is available on:

Pin Function
D9 OC1A
D10 OC1B

These outputs are connected to the IR2304 driver stage.


Engineering Perspective

A useful way to view REVA is:

Geometry
        +
Timing
        +
Carrier
        =
Waveform

Each subsystem contributes one part of the final signal.


See Also