This repository is a comprehensive collection of Arduino labs designed for students and enthusiasts to explore and experiment with various aspects of Arduino programming and hardware interfacing. Each lab provides hands-on experience with different sensors, components, and programming concepts, allowing users to build practical projects and deepen their understanding of embedded systems.
-
Analog and Digital Inputs:
- Explore how to read data from analog and digital sensors, understanding their functionality and applications.
-
Digital I/O:
- Learn to control digital outputs, including LEDs, buzzers, and other components.
-
Analog Sensors:
- Interface with various analog sensors to measure environmental parameters, such as temperature and light intensity.
-
PWM and DAC:
- Utilize Pulse Width Modulation (PWM) to control devices like motors and dim lights, as well as explore Digital-to-Analog Conversion (DAC).
-
One-Wire Sensors:
- Work with one-wire sensors, focusing on their efficient data transmission.
-
Real-Time Clock (RTC):
- Implement RTC modules to keep track of time for data logging applications.
-
SPI and I2C Communication:
- Understand and implement Serial Peripheral Interface (SPI) and Inter-Integrated Circuit (I2C) communication protocols for interfacing multiple devices.
-
SD Card Integration:
- Learn how to read from and write data to SD cards for data storage and retrieval.
-
Motor Drivers:
- Control motors using motor driver modules, implementing speed and direction control.
-
OLED Display (I2C):
- Display data on an OLED screen using I2C communication for visual feedback.
-
Two MCU Communication (Raspberry Pi & Arduino):
- Explore communication between Arduino and Raspberry Pi to create complex systems.
-
GPS and Ultrasonic Sensors:
- Integrate GPS modules for location tracking and ultrasonic sensors for distance measurement.
The primary goal of this repository is to provide a structured learning platform for anyone interested in Arduino programming and hardware development. These labs are designed to help users gain practical skills in building projects, troubleshooting, and understanding embedded systems.
To get started with the labs, clone the repository to your local machine, and follow the instructions in each folder to run the sketches.
Contributions are welcomed! Feel free to fork the repository and submit pull requests for additional labs, improvements, or bug fixes.
This project is licensed under the MIT License. Please refer to the LICENSE file for more details.