Hello, What is the best way to sense a push button press? I am multiplexing the PORTB data lines as a data bus and using PORTA as chip select as shown to me by Steve Smith. Will the below circuit work? An HC74 D Flip-Flop is used to capture a push button press since inputs will only be scanned briefly and I don't want to miss the press. The inputs are selected by selecting RD1 and storing to a register. If PB0 reads as set then I know that the button was pressed. I then reset the F/F by selecting WR1 and tickling PB7. Is there a better way to achieve this??? I need to multiplex the pins since there are many inputs and outputs (LCD display, ISD voice chip etc) All comments are appreciated (but go easy on me -- I am also a newbie!) Thanks in advance! -Randie Ohtsji rohtsji@glenayre.com PS I hope my crude schematic shows what I am doing. Vcc +--------------To PIC16F84 | | PORTB0-7 / | \ | / | \ | / | N.O. Push button | | _|_ | __________ | | | | +-----0 0-------Gnd | 8 | Q0|---- | +----/---------| HC373 Q1|---- | | | __ Q2|---- ____0___ | GND-----0 OE Q3|---- | _ | | | Q4|---- +----|D S Q|------------+ | | Q5|---- | | HC74 | | | | Q6|---- | | _| | | WR1----|LAT Q7|-------------->CLK _ Q|-----+ | | |__________| | |____R___| | | | | 0 | | | | | | | | +-------------------+ | | | | | __________ \ | | | | / | | | A0|------------------ \ ---------------+ | 8 | HC244 A1| / +-----/--------| A2| \ | ___ A3| / RD1--+----0 OE1 A4| | | | ___ A5| Vcc +----0 OE2 A6| | A7| |__________| __________ | __ | WR1-----0 Y0 A0|------- \ | __HC138 | \ RD1-----0 Y1 A1|------- \ To PIC16F84 | __ | / PORTA0-2 0 Y2 A2|------- / | __ | 0 Y3 CS1|-----/\/\/\----Vcc | __ ___| 0 Y4 CS20---+------GND | __ ___| | 0 Y5 CS30---+ | __ | 0 Y6 | | __ | 0 Y7 | |__________|