When I give PORTA.1 +5V, LED1 dosent shine..
Whats wrong with my code?
Code:LED1 var PORTB.1
PRESS var PORTA.1
loop:
If press = 1 then
high led1
else
low led1
endif
goto loop
end
Printable View
When I give PORTA.1 +5V, LED1 dosent shine..
Whats wrong with my code?
Code:LED1 var PORTB.1
PRESS var PORTA.1
loop:
If press = 1 then
high led1
else
low led1
endif
goto loop
end
Does your PIC have ADC?
If it does...
http://www.picbasic.co.uk/forum/showthread.php?t=562
http://www.picbasic.co.uk/forum/showthread.php?t=561
I dont know its a PIC16F648A
According to the data sheet it has two comparators.
The above links will explain why
CMCON=7
is needed.
Ok, thanks.
But it still dosent work as I want it :/
When i transfer it LED1 starts to shine directly even if PortA.1 doesnt have +5VCode:@ device pic16F648A, hs_osc, wdt_off, mclr_on, lvp_off, protect_off
DEFINE OSC 20
LED1 var PORTB.1
PRESS var PORTA.1
CMCON=7
loop:
If press=1 then
high led1
else
low led1
endif
goto loop
end
:/
Maybe the LED is backwards:)
Do you have PORTA.1 tied to ground with a resistor (10K) so it is not floating?
Floating ?
Should it be like this?
http://img168.imageshack.us/img168/3927/floatej7.jpg
Yes, that is correct.
I added it and it worked!
Thanks.
If I make the code like tis:
Should it be like this?Code:@ device pic16F648A, hs_osc, wdt_off, mclr_on, lvp_off, protect_off
DEFINE OSC 20
LED1 var PORTB.1
PRESS var PORTA.1
CMCON=7
loop:
If press=0 then
high led1
else
low led1
endif
goto loop
end
http://img528.imageshack.us/img528/1509/floatqs4.jpg
No. The first way is what you want. When the switch is open the pin is "0"LOW. When the switch is closed the pin is "1"HIGH.
If you are using push buttons, you will need to use either a normally open "NO" or a normally closed "NC".
The resistor keeps the pin LOW (no float). High resistance is used to minimize the current through the switch (just a little short).
Depending on how you look at it this is called a pull up or a pull down.