------ =_NextPart_000_01BB129A.7FEE2E40 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Moshe, Here is your problem: Your interrupt ends in a RETFIE but there was never a call to return from. Change your GOTO PULSE_CHECK to CALL PULSE_CHECK and that should fix it. Dan Matthews dan.matthews@microchip.com ---------- From: Moshe Fish[SMTP:mfish@NETVISION.NET.IL] Sent: Thursday, March 14, 1996 4:05 PM To: Multiple recipients of list PICLIST Subject: !!Port B interrupt-most latest >Moshe, >I had a fairly large backlog of e-mail messages before I got to this one. However, >I bet you a buck (US) that suggestion 3 in my latest e-mail to the LIST will fix >your problem. Well, hang on a second. Maybe I should see your latest code before >making any wagers! Where in your code are you enabling the GIE bit? > >Scott > Scott Here is my latest code version A-this works, i.e gives me the test pulses on portA, NOTICE the parts that I have cut out (;) list P=16c65, f=inhx8m INCLUDE ORG 0 GOTO START ; ORG 4 ; GOTO PULSE_CHECK ;interrupt service vector ORG 0x10 START CALL INITPORTS TEST NOP NOP NOP MOVLW B'00001111' ;set pin hi-led on if to Vdd MOVWF PORTA NOP NOP NOP NOP NOP NOP NOP NOP MOVLW B'00000000' ;set pin lo-led off if to Vdd MOVWF PORTA NOP NOP MOVLW B'00001111' ;set pin hi-led on if to Vdd MOVWF PORTA NOP NOP NOP NOP NOP NOP NOP NOP MOVLW B'00000000' ;set pin lo-led off if to Vdd MOVWF PORTA LOOP GOTO TEST PULSE_CHECK BTFSS INTCON,RBIF ;PortB interrupt? GOTO MAIN ;If no int goto main MOVLW B'00001111' ;if interrupt MOVWF PORTA ;set pins hi-led on if to Vdd CLR_RBINTF MOVF PORTB,1 ;end mismatch-read portb to itself BCF INTCON,RBIF ;clear RB interrupt flag MOVLW B'00000000' ;set pins lo again-led off if to Vdd MOVWF PORTA RETFIE MAIN RETFIE INITPORTS BSF STATUS,RP0 ;select bank 1 CLRF TRISA ;set all to o/p-lower power consump ; MOVLW B'1111111' ;set portB<4:7> as i/p <0:3>o/p ; MOVWF TRISB CLRF TRISC ;set all to o/p-lower power consump CLRF TRISD ;set all to o/p-lower power consump CLRF TRISE ;set all to o/p-lower power consump ; BCF OPTION_REG,NOT_RBPU ;enable pullup BCF STATUS,RP0 ;select bank 0 CLRF PORTA ;portA all low CLRF PORTB ;init portB CLRF PORTC ;portC all low CLRF PORTD ;portD all low CLRF PORTE ;portE all low ; BCF INTCON,RBIE ;disable mask ; MOVF PORTB,W ;read port ; BCF INTCON,RBIF ;clear RB port interrupt change flag ; BSF INTCON,RBIE ;enable RBIF interrupt RETFIE ;enable global and return END My code version B includes the lines; MOVLW B'11111111' MOVWF TRISB and this seems to be where the problems start. I either get pulses on all portB pins (flat tops with narrow long V drops to Vdd) and nothing on portA or only RA3 will give me any pulses out and RB is zero. At the moment it seems only to want to generate the former (I'm telling you sometimes I believe these things are really alive and someone is playing a big joke on us ). For version C I changed the value above from 11111111 to 11110000 and I now get nothing from portB or portA. I do get this message from the assembler Message[302] C:\MOSHE\SOFTWARE\WMCS_PIC\WMPIC1C.ASM 87 : Argument out of range. Least significant bits used. for the lines that I write to TRIS but I get it for portA as well and that works fine in version A. The assembler has a FAQ on this WHEN I ASSEMBLE MY CODE, I GET DOZENS OF MESSAGES ABOUT TRUNCATIONS FOR REGISTER VARIABLES IN BANK 1. The full address is not contained in the generated machine code. Since it is necessary to define the variables with the full address, you may want to mask this message using the directive "ERRORLEVEL -302". Thanks once again Moshe PS has nobody else had this problem? I'm sure it's a standard thing to read pulses in on portB and send out on another port. PPS It was "feel" ------------------------------------- Name :Moshe Fish E-mail :mfish@netvision.net.il Date :03/14/96 Time :14:25:33 ------ =_NextPart_000_01BB129A.7FEE2E40 Content-Type: application/ms-tnef Content-Transfer-Encoding: base64 eJ8+IgYBAQaQCAAEAAAAAAABAAEAAQeQBgAIAAAA5AQAAAAAAADoAAENgAQAAgAAAAIAAgABBJAG AEABAAABAAAADAAAAAMAADADAAAACwAPDgAAAAACAf8PAQAAAFgAAAAAAAAAgSsfpL6jEBmdbgDd AQ9UAgAAAABwaWMgbWljcm9jb250cm9sbGVyIGRpc2N1c3Npb24gbGlzdABTTVRQAFBJQ0xJU1RA TUlUVk1BLk1JVC5FRFUAHgACMAEAAAAFAAAAU01UUAAAAAAeAAMwAQAAABcAAABQSUNMSVNUQE1J VFZNQS5NSVQuRURVAAADABUMAQAAAAMA/g8GAAAAHgABMAEAAAAmAAAAJ3BpYyBtaWNyb2NvbnRy b2xsZXIgZGlzY3Vzc2lvbiBsaXN0JwAAAAIBCzABAAAAHAAAAFNNVFA6UElDTElTVEBNSVRWTUEu TUlULkVEVQADAAA5AAAAAAsAQDoBAAAAAgH2DwEAAAAEAAAAAAAAA98+AQiABwAYAAAASVBNLk1p Y3Jvc29mdCBNYWlsLk5vdGUAMQgBBIABACMAAABSRTogISFQb3J0IEIgaW50ZXJydXB0LW1vc3Qg bGF0ZXN0AOQLAQWAAwAOAAAAzAcDAA8AEgAIABQABQAYAQEggAMADgAAAMwHAwAPABIABgARAAUA EwEBCYABACEAAABCMDRGMUYwOTg5N0VDRjExOEMwODQ0NDU1MzU0MDAwMADpBgEDkAYAyAwAABAA AAALACMAAAAAAAMAJgAAAAAACwApAAAAAAADADYAAAAAAEAAOQCgHEIR1RK7AR4AcAABAAAAIwAA AFJFOiAhIVBvcnQgQiBpbnRlcnJ1cHQtbW9zdCBsYXRlc3QAAAIBcQABAAAAFgAAAAG7EtUROAkf T7F+iRHPjAhERVNUAAAAAAMABhDjt6LhAwAHEPALAAAeAAgQAQAAAGUAAABNT1NIRSxIRVJFSVNZ T1VSUFJPQkxFTTpZT1VSSU5URVJSVVBURU5EU0lOQVJFVEZJRUJVVFRIRVJFV0FTTkVWRVJBQ0FM TFRPUkVUVVJORlJPTUNIQU5HRVlPVVJHT1RPUFVMAAAAAAIBCRABAAAAeAsAAHQLAAAYGwAATFpG dfRpskv/AAoBDwIVAqgF6wKDAFAC8gkCAGNoCsBzZXQyNwYABsMCgzIDxQIAcHJCcRHic3RlbQKD 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 AR4APQABAAAABQAAAFJFOiAAAAAAnBo= ------ =_NextPart_000_01BB129A.7FEE2E40--