https://github.com/mushtabaa/microcontroller-based-digital-multimeter
Developed a functional multimeter using a PIC24F16KA101 microcontroller, programmed in C to measure and display voltage, resistance, and capacitance values via serial output, employing UART2 protocol for realtime monitoring in Tera Term.
https://github.com/mushtabaa/microcontroller-based-digital-multimeter
c mplab mplabxide pickit4 teraterm uart
Last synced: 9 months ago
JSON representation
Developed a functional multimeter using a PIC24F16KA101 microcontroller, programmed in C to measure and display voltage, resistance, and capacitance values via serial output, employing UART2 protocol for realtime monitoring in Tera Term.
- Host: GitHub
- URL: https://github.com/mushtabaa/microcontroller-based-digital-multimeter
- Owner: MushtabaA
- Created: 2024-10-29T05:21:38.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-10-29T06:03:04.000Z (over 1 year ago)
- Last Synced: 2025-02-09T04:16:57.704Z (over 1 year ago)
- Topics: c, mplab, mplabxide, pickit4, teraterm, uart
- Language: C
- Homepage:
- Size: 17.6 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Multimeter Project Using PIC24F16KA101 Microcontroller
This project demonstrates the design and implementation of a multimeter that reads and outputs **voltage**, **resistance**, and **capacitance** values. Utilizing a **PIC24F16KA101** microcontroller, the device is programmed to display measurements on a serial monitor. The project is built on a breadboard and programmed with **MPLAB X IDE** using **PICkit 4** as the in-circuit debugger. Readings are outputted via **UART2** to the **Tera Term** terminal application.
## Features
- Voltage Measurement: Reads and displays voltage on a connected component.
- Resistance Measurement: Calculates and outputs the resistance of a component.
- Capacitance Measurement: Measures capacitance values using a CTMU (Charge Time Measurement Unit) approach.
## Code Overview
The project’s code includes several critical files:
- **main.c:** Initializes the microcontroller, including clock and peripheral settings, and handles the measurement loops.
- **UART2.c:** Manages UART2 communication functions, including data transmission and interrupt handling.
- **IOs.c:** Handles input/output configurations, such as pushbuttons for triggering different measurement modes.
- **ADC.c:** Reads and processes the analog-to-digital conversions necessary for voltage and resistance measurements.
- **CTMU.c:** Configures and utilizes the CTMU module for capacitance measurement by timing charge and discharge cycles on the capacitor under test.
## Demonstration Video
Click below to watch a demonstration of the project
[](https://www.youtube.com/watch?v=2IUto0paSR4)