In an effort to eliminate unsolicited e-mail, I have installed = SpamEnder. You must REPLY to this e-mail, without modifying the subject = line, so that SpamEnder will release your original message to my Inbox. = Upon my approval, future e-mails you send to me will be released = automatically. If you do not REPLY to this e-mail, SpamEnder will block = all future e-mails from this address and will not give you another = opportunity to reply. =0A= ----------------------------------------------------------=0A= SpamEnder stops 100% of all SPAM e-mail and NEVER blocks the e-mail you = wish to receive. It even comes with a Money Back Guarantee. For more = information about SpamEnder, open your browser to = http://www.spamender.com/=0A= ----------------------------------------------------------=0A= Copyright 2003, Evolvian, Inc.=0A= =0A= Excerpt from original message: Robert, First, a major no-no ... although your method of coding could work, you = should=20 really, really, really (insert infinite loop here :-) use the = definitions=20 from the .inc files already created by Microchip. They're part of the = MPLAB=20 package. Otherwise, the code is difficult to read, and adds major = sources of=20 errors. Especially if, as you say, you're a programmer. :-) That said, assuming your code compiles okay and does have the correct = register=20 addresses, if the switch were in it's unpressed state, RA1 would be "1". = The=20 code would loop at BEGIN and the line after that (goto BEGIN). Now, if = the=20 switch were pressed, RA0 goes to "0", so the code sets PORTB to all = "1"'s=20 which would turn on the LED, BUT...assuming the switch "bounces", as is=20 expected, RA1 would flicker between "1" and "0" for a short time. But = long=20 enough that as it gets to KEEPON, RA1 could be at 0 and would not loop = at=20 KEEPON. It would go straight to clearing portB and exit. It could also = loop=20 at KEEPON a few times before exiting due to the same switch bounce = problem. =20 A few times is very fast, since the internal oscillator is 4Mhz, so you = would=20 not even see the LED come on. Quick test... try a really large capacitor at the input to RA1 (Cap +ve = to=20 RA1, cap -ve to gnd). If that solves your problem then you know it's = the=20 bounce issue. Cheers, -Neil On Tuesday 10 June 2003 19:47, rrc124+@PITT.EDU scribbled: > I can't get my inputs to work. I am using a pull up switch, have set = all > pins but 1 to outputs, then tied them to ground. I am using a = PIC16F628 > with the configs set to everything off/disabled except the power up = timer. > I have selected the internal oscillator. I'm a programmer..not EE, so > that's my weak point but i have been checking the circuit for 3 days = and > can't find what's wrong. The chip works because i got one of those LED > blinking things to work fine. Guys...thank you so much...it's very > upsetting when you're just starting out and can't get the easiest = thing to > work. The only odd thing i could find was that my programming software > (WinPicProg, from Dontronics) generates a different config word then = does > MPLAB with the same settings. > > Here is my code: > > TMR0 EQU 1 > OPTION_R EQU 1 > PORTA EQU 5 > PORTB EQU 6 > TRISA EQU 5 > TRISB EQU 6 > STATUS EQU 3 > ZEROBIT EQU 2 > CARRY EQU 0 > PCON EQU 0EH > COUNT EQU 20H > > LIST P=3D16F628 = =20 > ; tells which processor is use ;MPLAB generated = __CONFIG > 0x3F10 > __CONFIG 0x3D10 ;WinPicProg generated > > org 0 > goto START > > ; config section > > START bsf STATUS, 5 > movlw b'11111111' > movwf TRISA > movlw b'00000000' > movwf TRISB > > movlw b'00000100' > movwf OPTION_R > clrf PCON > > bcf STATUS, 5 > clrf PORTA > clrf PORTB > > ; program starts now > > BEGIN btfsc PORTA, 1 > goto BEGIN > movlw b'11111111' > movwf PORTB > KEEPON btfss PORTA, 1 > goto KEEPON > clrf PORTB > goto BEGIN > > END > > Here is my circuit: > GND > > [9V+ Battery]--[914 diode]--[7805 Volt Reg]--+ > > +-----[10k Res]----+ > > A1/PIN 18-----+--[switch]--GND | > > Vdd/PIN 14------------------------+ > > Vss/PIN 05------------------------GND > > B4/PIN 10--[470 Ohm Res]--[LED]--GND > > B3/PIN 09--[470 Ohm Res]--[LED]--GND > > All other pins set as output, tied to ground. The switch part of the > circuit allows 4.5V to A1 and when pressed drops the voltage down to = 0. I > checked with my multimeter. Thank you so much everyone. > > E-Mail: rrc124@pitt.edu > > Robert Campbell -- http://www.piclist.com hint: To leave the PICList mailto:piclist-unsubscribe-request@mitvma.mit.edu -- http://www.piclist.com hint: To leave the PICList mailto:piclist-unsubscribe-request@mitvma.mit.edu