Analog input(Variable resistor)
Analog input..
Analog input bahasa kasarnye
input yg de byk range volt contohnya 1.2v,1.5v,3v,4v,3v,5v..maksudnye
volt pada input tu berubah mengikut keadaan atau persekitaran..untuk paham analog
input kita boleh mula dengan variable
resistor dulu kot rasanye..hehe
Analog signal ialah satu signal yg x kekal nilai voltage nye.. berlainan dengan digita yg menghantar 2 nilai voltage sahaja iaitu 5v dan 0v.... analog signal boleh dilakarkan seperti berikut:
Contoh programnya:-
program ini akan menyalakan LED jika voltage dari variable resistor kurang daripada 25% dari nilai penuh..
program ini akan menyalakan LED jika voltage dari variable resistor kurang daripada 25% dari nilai penuh..
#include <18f4550.h>
//"header file pic"//
#fuses HS,NOLVP,NOWDT,PUT
#use delay(clock=20M)
#define lampu1 PIN_D0 //declare
pin D0 sebagai ‘lampu’.xdeclare pon xpe//
#define potential PIN_A0
void main()
{
int16 var1;
int16 var2;
setup_adc(ADC_CLOCK_INTERNAL);
// seting adc//
setup_adc_ports(AN0); // set
pot kt AN0 //
while(true)
{
delay_us(10);
set_adc_channel(0); // port adc //
delay_us(20); // DELAY
untuk mendapatkan nilai analog//
var1=read_adc(); //bace nilai voltage variable resistor
var2=var1*100/255; //quantization kita tuko kepada %//
if ((var2>=0) && (var2<=25)) // RANGE FROM 0 TO 25//
{
output_high(lampu1); // lampu 1 ON//
}
else if ((var2>=26) && (var2<=50)) //&& itu adalah
logic gate 26 ke 50//
{
output_low(lampu1);
// lampu 1 off//
}
}
}
Nilai % analog 25 nengok tu lampu sudah hidup… (v<=25)
Nilai % analog 27 nengok tu lampu sudah mati..(v>25)