This project is a Python GUI application designed to visualize various binary encoding schemes. It allows users to input a binary sequence and choose an encoding method to generate a visual representation of the encoded signal.
- Unipolar Encoding
- Polar NRZ-L Encoding
- Polar NRZ-I Encoding
- Polar RZ Encoding
- Biphase Manchester Encoding
- Differential Manchester Encoding
- AMI (Alternate Mark Inversion) Encoding
- Python 3.x
- NumPy
- Matplotlib
- Tkinter
- Clone the repository:
git clone https://github.com/yourusername/binary-encoding-visualization.git
cd binary-encoding-visualization- Install the required Python packages:
pip install numpy matplotlibRun the script to launch the GUI:
python main.py- Enter a binary sequence in the input field.
- Select an encoding method from the dropdown menu.
- Click the "Encode" button to generate and display the encoded signal.
- Unipolar: Represents binary
1as high and0as low. - Polar NRZ-L: Non-return-to-zero level encoding;
1is high and0is low. - Polar NRZ-I: Non-return-to-zero inverted encoding;
1causes a transition,0does not. - Polar RZ: Return-to-zero encoding; each bit returns to zero in the middle of the bit period.
- Biphase Manchester: Each bit is represented by a transition in the middle of the bit period;
0is low-to-high,1is high-to-low. - Differential Manchester: Each bit is represented by a transition in the middle;
0is no transition at the beginning of the bit period,1is a transition. - AMI (Alternate Mark Inversion):
0is represented by no line signal,1alternates between positive and negative voltages.
This project is licensed under the MIT License. See the LICENSE file for details.
Contributions are welcome! Please open an issue or submit a pull request.
- Thanks to the developers of NumPy, Matplotlib, and Tkinter for their excellent libraries.
If you find this project helpful, consider making a donation:


