PIC12F675 microcontroller as Flip Flop

Code to make a 12F675 operate as a D-type or JK-type flip flop

Since I implemented a D type flip flop using the PIC Logic Elements I thought I might go the other way and implement an entire D type flip flop in a single PIC.  This uses the edge triggered and port change status interrupts and was an opportunity to have a play with interrupts on the PIC.

12F675 as Flip Flop

As written this code will cause a PIC to function as a negative edge triggered D type flip flop with active low Set and Reset inputs.

‘D’ type flip flop

Following the D type flip flop I’ve hacked it round to make a JK flip flop. This implementation has one extra ‘feature’  that a normal discrete logic device doesn’t have. After a reset, port GPIO5 (pin 2) is read and the logic level used to select either a positive or negative clock edge.
GPIO5 = 1, negative edge (GPIO5 uses weak pull-up, so no external resistor is needed)
GPIO5 = 0, positive edge


For more detail: PIC12F675 microcontroller as Flip Flop

About The Author

Ibrar Ayyub

I am an experienced technical writer holding a Master's degree in computer science from BZU Multan, Pakistan University. With a background spanning various industries, particularly in home automation and engineering, I have honed my skills in crafting clear and concise content. Proficient in leveraging infographics and diagrams, I strive to simplify complex concepts for readers. My strength lies in thorough research and presenting information in a structured and logical format.

Follow Us: