Git Product home page Git Product logo

itzenigma / smart-home-avr Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 2.65 MB

Smart Home Project using ATmega32 drivers and web-application. In addition to implementing various experiments such as Logic Analyzer & Oscilloscope , ...

C 58.07% C# 1.38% JavaScript 10.31% HTML 7.83% CSS 2.43% Makefile 19.98%
cots embedded-c embedded-systems gui c csharp gui-application gui-software software-application avr-projects

smart-home-avr's People

Watchers

 avatar

smart-home-avr's Issues

Lab 1 (Dc Motor)


Lab 1


Build an AVR-based system to control the speed of a DC motor using PWM signal. The system will have 2 buttons to control the motor speed up or down.

Lab 3 (Bootloader - GUI)


Lab 3 (GUI)


Build a GUI-based PC application that controls the serial/USB port communicating with an AVR MCU. The application should have means to select the required task from the communication (where available tasks are: 1. Read. 2. Write).

The user should have a textbox to write the address to read/write from/to.

  • It should have either a textbox for the user to write data (if the writing task was selected) or a label to display the incoming read data (read task was selected). Add an LED to the AVR MCU to blink twice on any data reception or data request as an indicator.

DIO


Implementing DIO Driver


Smart Home (Web-Application)


Smart Home (Web Application)


Smart home project essential software implementation for the web application (GUI and back-end).

Lab 3 (Bootloader - Code)


Lab 3 (Code)


Implementation of the UART Driver for the specified GUI's target mentioned in this issue #7 ... additionally

- [ ] Extended the system to read RAM and ROM addresses.
- [ ] Add Upload new firmware using the PC functionality. Note: To achieve this task you need to execute the code in bootloader mode

Wave Generator (GUI)

Wave Generator


To generate different Analog waveforms using an AVR microcontroller it is required to interface a DAC that will convert the Digital inputs given by the microcontroller into corresponding Analog outputs and thus it generates different analog waveforms.

The DAC output is current equivalent of digital input. So to convert it into voltage a current-to-voltage converter is required. This current-to-voltage converter is built using Op-Amp LM741.

Requirements:

1. The application should have a DropDown menu to select the required waveform (Square wave, Staircase wave, Sine wave or Triangular wave)
2. Ability to send the required waveform ID, amplitude value and frequency value to the connected MCU
3. Agree on a frame that contains the previous data (ID, amplitude and frequency).

Depending on the desired signal waveform, the microcontroller will generate digital values that'll be interpreted by DAC and generate the desired waveform.

3. Each signal waveform has an amplitude and frequency.

Bonus

  • Extended the code to control amplitude and frequency through the PC’s GUI.
  • Generate custom signals sent from the PC’s GUI.
  • Add two or more waveforms.

Smart Home (Embedded)


Smart Home (Embedded)


Smart home project essential embedded implementation for hardware and microcontroller peripherals and system.

Wave Generator (Code)

Wave Generator


To generate different Analog waveforms using an AVR microcontroller it is required to interface a DAC that will convert the Digital inputs given by the microcontroller into corresponding Analog outputs and thus it generates different analog waveforms.

The DAC output is current equivalent of digital input. So to convert it into voltage a current-to-voltage converter is required. This current-to-voltage converter is built using Op-Amp LM741.

Requirements:

1. Construct the DAC circuit
2. Each waveform will be implemented as a separate function

Depending on the desired signal waveform, the microcontroller will generate digital values that'll be interpreted by DAC and generate the desired waveform.

3. Each signal waveform has an amplitude and frequency.

Bonus

  • Extended the code to control amplitude and frequency through the PC’s GUI.
  • Generate custom signals sent from the PC’s GUI.
  • Add two or more waveforms.

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.