Bu proje, Sayısal Tasarım dersi kapsamında hazırlanmış basit bir mantık devresi simülatörüdür. Uygulama Python ve Tkinter kullanılarak geliştirilmiştir. Kullanıcı arayüzü üzerinden giriş elemanları, çıkış elemanları ve temel mantık kapıları oluşturulabilir; bağlantılar kurularak devre çıktıları simüle edilebilir.
- AND, OR, NOT, BUFFER, NAND, NOR, XOR ve XNOR kapıları
- Giriş kutusu oluşturma ve giriş değerini değiştirme
- Çıkış kutusu ile sonucu görüntüleme
- Canvas üzerinde eleman yerleştirme
- Elemanlar arasında bağlantı kurma
- Kapı çıkışlarını hesaplama
- Harici kapı görseli gerektirmeyen çizim tabanlı Tkinter arayüzü
- Tkinter pencere ikonu ve EXE ikonu için hazır
app_icon.ico - Test edilebilir modüler mantık motoru
sayisal-tasarim-mantik-devresi-simulatoru/
├── README.md
├── pyproject.toml
├── .gitignore
├── src/
│ └── sayisal_tasarim_simulatoru/
│ ├── __init__.py
│ ├── logic.py
│ ├── gui.py
│ ├── main.py
│ └── assets/
│ ├── app_icon.ico
│ └── app_icon.png
└── tests/
└── test_logic.py
Python 3.10 veya üzeri önerilir.
python -m pip install -e .Bu proje yalnızca Python standart kütüphanesini kullanır. Tkinter çoğu Python kurulumunda hazır gelir.
python -m sayisal_tasarim_simulatoru.mainveya paket kurulumundan sonra:
sayisal-tasarim-simulatoru- Üst menüden bir araç seçilir.
- Canvas üzerine tıklanarak giriş, çıkış veya kapı eklenir.
- Connect aracı seçilerek önce kaynak elemana, sonra hedef elemana tıklanır.
- Input elemanlarına çift tıklanarak giriş değeri 0/1 olarak değiştirilir.
- Run butonu ile devre çalıştırılır.
- Reset butonu ile devre temizlenir.
| Kapı | Açıklama |
|---|---|
| AND | Tüm girişler 1 ise 1 üretir. |
| OR | En az bir giriş 1 ise 1 üretir. |
| NOT | Tek girişi tersler. |
| BUFFER | Giriş değerini aynen aktarır. |
| NAND | AND sonucunun tersini üretir. |
| NOR | OR sonucunun tersini üretir. |
| XOR | Girişlerden tek sayıda 1 varsa 1 üretir. |
| XNOR | XOR sonucunun tersini üretir. |
python -m unittest discover -s tests -vWindows kullanıcıları için hazır .exe dosyası GitHub Releases bölümünde paylaşılmıştır.
Uygulamayı kaynak kodu çalıştırmadan kullanmak isteyenler, projenin sağ tarafındaki Releases bölümünden son sürümü indirebilir.
İndirilecek dosya:
sayisal-tasarim-simulatoru.exe
Windows kullanıcıları için uygulama PyInstaller ile tek dosyalık .exe hâline getirilebilir.
Önce PyInstaller kurulur:
python -m pip install pyinstallerArdından proje ana klasöründe şu komut çalıştırılır:
pyinstaller --onefile --windowed --name sayisal-tasarim-simulatoru --icon src\sayisal_tasarim_simulatoru\assets\app_icon.ico --add-data "src\sayisal_tasarim_simulatoru\assets;assets" src\sayisal_tasarim_simulatoru\main.pyOluşan dosya şu konumda yer alır:
dist/sayisal-tasarim-simulatoru.exe
Bu komutta:
--onefiletek bir.exedosyası üretir.--windowedçalışırken ek komut satırı penceresi açılmasını engeller.--iconEXE dosyasının simgesini ayarlar.--add-dataikon dosyalarının EXE içine eklenmesini sağlar.
Önceki tek dosyalı yapı yerine mantık hesaplama bölümü ve arayüz bölümü ayrılmıştır. Böylece mantık kapıları GUI olmadan test edilebilir, arayüz ise ayrı olarak geliştirilebilir.
- Gürel Bilgin