[otw_is sidebar=otw-sidebar-1]in this article I will discuss the Pic 16f676 Microcontroller Voltmeter and pic16f676 programming . In the previous article I have discussed the interface of Ultrasonic sensor and the Raspberry Pi using the Python language. So this post will be oriented around how to use Pic 16f676 Microcontroller as a Voltmeter and understanding about Pic Microcontroller programming
Pic 16f676 Microcontroller Voltmeter:
[otw_is sidebar=otw-sidebar-3]
After reading this post you will be able to understand the basics of the circuit Pic 16f676 Microcontroller Voltmeter and also you will learn about the important c code for pic voltmeter 7 segment So sit back keep reading and enjoy learning.
Equipment Required of project :
we are using these components
- common andoe 7segment displsy
- pic microcontroller 16f676
- 14 pin base
- resistor 10k,10k veriable resistors
- 7805 for voltage regulator
- 100uf .01uf capcitor
- led
- diode
- pic kit 2 for programming
[otw_is sidebar=otw-sidebar-2]
here is the code of reading adc in c language and it is compile in pic ccs c compiler
SET_ADC_CHANNEL(3); // for(i=0;i<2;i++) // { // delay_ms(1); mux(); mux();mux();mux(); mux();mux(); result=read_adc(); //} val2=result; // value = (int8) (read_adc() * 500)/1023; //val2 = read_adc (); value = (val2* 5000)/1023;
[otw_is sidebar=otw-sidebar-3]
pic voltmeter 7 segment:
3 digit 7 segment with pic 16f676 microcontroller. this is a very simple pic microcontroller voltmeter using 7 segment it can measure up to 99.9 voltage
here is the circuit of 7 segment voltmeter
pic16f676 voltmeter code:
in this code we are using pic ccs c compiler and read analog signal and convert in to digital
here is the full code of pic16f676 voltmeter
#include <16f676.h> #FUSES NOWDT //No Watch Dog Timer #FUSES INTRC //Internal RC Osc, no CLKOUT #FUSES NOMCLR //Master Clear pin used for I/O #FUSES NOBROWNOUT //No brownout reset #FUSES PUT #device ADC=10 #use delay(INT=4Mhz) #define aon output_LOW(PIN_C0); #define aof output_HIGH (PIN_C0); #define bon output_LOW(PIN_C1); #define bof output_HIGH (PIN_C1); #define con output_LOW(PIN_C2); #define cof output_HIGH (PIN_C2); #define don output_LOW(PIN_C3); #define dof output_HIGH (PIN_C3); #define eon output_LOW(PIN_C4); #define eof output_HIGH (PIN_C4); #define fon output_LOW(PIN_C5); #define fof output_HIGH (PIN_C5); #define gon output_LOW(PIN_A2); #define gof output_HIGH (PIN_A2); #define d1_of output_LOW(PIN_A1); #define d1_on output_HIGH (PIN_A1); #define d2_of output_LOW(PIN_A0); #define d2_on output_HIGH (PIN_A0); #define d3_of output_LOW(PIN_A5); #define d3_on output_HIGH (PIN_A5); int32 value=0,val2,ind=0,ind2=0,cnt5=0,d1; void off(); int thu,ten,unit,digit; void zero(){ aon; bon; con; don; eon; fon; gof; } void one(){ aof; bon; con; dof; eof; fof; gof; } void two(){ aon; bon; cof; don; eon; fof; gon; } void three(){ aon; bon; con; don; eof; fof; gon; } void four(){ aof; bon; con; dof; eof; fon; gon; } void five(){ aon; bof; con; don; eof; fon; gon; } void six(){ aon; bof; con; don; eon; fon; gon; } void seven(){ aon; bon; con; dof; eof; fof; gof; } void eight(){ aon; bon; con; don; eon; fon; gon; } void nine(){ aon; bon; con; don; eof; fon; gon; } void comp1(){ if(digit==0)zero(); if(digit==1)one(); if(digit==2)two(); if(digit==3)three(); if(digit==4)four(); if(digit==5)five(); if(digit==6)six(); if(digit==7)seven(); if(digit==8)eight(); if(digit==9)nine(); DELAY_MS(1);} void mux(){ d1_on;digit=thu;comp1();d1_of; d2_on;digit=ten;comp1();d2_of; d3_on;digit=unit;comp1();d3_of; //d3_on;digit=unit;comp1();d3_of;} void mdelay() { mux();mux();//mux();mux(); mux();mux();mux();mux(); mux();mux();mux();mux(); mux();mux();mux();mux(); mux();mux();mux();mux(); mux();mux();mux();mux(); //mux();mux();mux();mux(); //mux();mux();mux();mux(); } void getad(){ int32 result=0;int8 i; SET_ADC_CHANNEL(3); // for(i=0;i<2;i++) // { // delay_ms(1); mux(); mux();mux();mux(); mux();mux(); result=read_adc(); //} val2=result; // value = (int8) (read_adc() * 500)/1023; //val2 = read_adc (); value = (val2* 5000)/1023; thu = (value/1000); mux(); mux();mux();mux(); mux();mux(); ten = (value/100)%10; mux(); mux();mux();mux(); mux();mux(); unit = (value/10)%10; mux(); mux();mux();mux(); mux();mux(); /* putc(thu+48); putc(ten+48); putc(unit+48); unit = value%10; putc(unit+48); putc(10);putc(13); */ } void main () { DELAY_MS(1); /* //SETUP_ADC_PORTS(NO_ANALOGS); // set_tris_a(0); set_tris_c(0x00); setup_comparator(NC_NC_NC_NC); setup_adc_ports(sAN0 | VSS_VDD); setup_adc(ADC_CLOCK_INTERNAL); setup_adc(ADC_CLOCK_INTERNAL ); set_tris_c(0x00); set_tris_a(0xff); set_tris_a(0b00011001); setup_comparator(NC_NC_NC_NC); // not use comparator module setup_adc_ports( sAN3 | VSS_VDD); setup_adc(ADC_CLOCK_DIV_64); set_tris_a(0b00011001); zero();//DELAY_MS(1000); while(1) { // DELAY_MS(10); //pwmd(); getad(); mdelay(); }}
digital voltmeter using microcontroller:
you can download pic16f676 voltmeter hex file and source code below link
Pic16f676 Pinout
Here is the pinout of pic16f676 microcontroller
pic16f676 example c code:
pic16f676 is a 8 bit microcontroller and it has 14 pins.
[otw_is sidebar=otw-sidebar-2]
List of Pic16f676 Microcontroller Projects
here is the best and easy pic microcontroller projects
- Frequency Counter using Pic 16f676
- ac/dc voltmeter using pic microcontroller
- digital free fall
- timer circuit
- traffic signal
- mark space timer
- fridge timer
- 50hz comparator
- automatic battery monitor circuit
- stablizer timer and circuit
- multi steps battery charger circuit
- digital stop watch
- solar energy measurement
- ac dimmer using pic microcontroller
- ir remote control devices
- home automation using pic16f676
- digital clock
- lcd alarm clock
- temperature control +timer
- home automation with bluetooth hc04
- sonar sensor hcsr04 interfacing
- pir light on/off circuit
Pic16f676 Frequiency Counter
Solar Energy Measurement Using Pic Microcontroller
here is the circuit of solar energy meter or Solar Energy Measurement Using Pic Microcontroller
it can measure
- Solar Voltage
- Battery Voltage
- Solar Current
- Solar Power
temperature controller ds18b20 using pic16f676 microcontroller
[otw_is sidebar=otw-sidebar-3]
stepper motor control using pic
wapda ups voltage display
DOTMATRIX display pic microcontroller
DOTMATRIX display pic microcontroller
all
for more Engineering Projects click below link
Related Articles
- Introduction to PIC18F452 Microcontroller
- Pic18f4550 microcontroller Basic Tutorial
- pic16f887 microcontroller
[otw_is sidebar=otw-sidebar-3]
give me full circuit diagram
i cant find the link to download the HEX file of Pic Microcontroller. Please send me the link or send me the HEX file directly.
Wow, awesome weblog structure! How long have you been running a blog for?
you make blogging look easy. The whole look of your site
is magnificent, as well as the content! You can see similar here sklep internetowy
You have a gift for explaining things in an easily understandable way. Fantastic post!
Howdy would you mind sharing which blog platform you’re using?
I’m looking to start my own blog soon but
I’m having a difficult time selecting between BlogEngine/Wordpress/B2evolution and Drupal.
The reason I ask is because your layout seems different
then most blogs and I’m looking for something unique.
P.S Sorry for getting off-topic but I had to ask!
Also visit my web site vpn special code
Howdy! Do you know if they make any plugins to assist with Search
Engine Optimization? I’m trying to get my website to rank for some targeted keywords but I’m
not seeing very good gains. If you know of any please share.
Thank you! You can read similar art here: GSA Verified List
This is one of the most insightful articles I’ve come across in a while. Your expertise is evident.
Heya exceptional blog! Does running a blog like this take a lot
of work? I’ve no knowledge of computer programming but I was hoping to start my
own blog in the near future. Anyways, if you have
any suggestions or techniques for new blog owners please share.
I know this is off topic however I just wanted to ask.
Thanks!
my blog post: vpn special coupon code 2024
It’s in point of fact a great and helpful piece of info.
I am satisfied that you just shared this useful info with
us. Please stay us up to date like this. Thank you for
sharing.
my webpage vpn 2024
buy metformin over the counter us
Online medicine home delivery https://indiaph24.store/# buy medicines online in india
Online medicine home delivery
indian pharmacy paypal http://indiaph24.store/# india pharmacy
top online pharmacy india