Giter Site home page Giter Site logo

electronic_devices_work_emulator's Introduction

Система эмуляции работы электронных устройств

Описание

Курсовая работа студента кафедры ИУ6 по дисциплине "Технология разработки программых систем".

Cистема является вспомогательной для студентов высших учебных заведений в изучении курса схемотехники, так как предоставляет в графическом виде информацию о выходных сигналах, снимаемых с выбранного устройства, при заданных пользователем входных.

Выполняемые функции

  • выбор устройства;
  • задание входного сигнала в графической форме;
  • просмотр полученного выходного сигнала устройства в графической форме;
  • сохранение результата на диске;
  • просмотр теоретического материала по выбранному классу устройств.

Стек технологий

  • фреймворк Qt версии 5.6;
  • СУБД SQLite.

electronic_devices_work_emulator's People

Contributors

okcid avatar

electronic_devices_work_emulator's Issues

На будущее

Интерфейс

  • отнаследовать от SocketWidget классы InputSocketWidget, OutputSocketWidget и ClockSocketWidget;
  • переписать EmulationWidget::onSignalAdded_();

Emulation logic

Devices with clock signal

Iterate through clock signal. On each iteration check the states of other input sockets.

  • If input sockets don't change their states in the period of clock signals activity, get their state and emulate;
  • If input sockets states change, choose the one, whose changes are the most frequent, and split the time period of clock signals activity into periods of those signal stability. On each period act like described above.

Devices without clock signal

For instance, choose the first input socket. Iterate through it.

  • If during the period of stability of chosen signal other signals don't change their states, get their states and calculate output signal;
  • If not, choose the input signal, who changes the most frequently and repeat the action above.

Maybe this logic will be suitable for the clock signal devices too. Anyway, I'm not able to think about it now. I'll do it later, I promise.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.