Skip to the content
2 layers136.3 × 43.8 mmBcd counter using d flipfflop, the printed circuit board in 3D

Bcd counter using d flipfflop

nirav1385/BCD-counter-using-D_flipflop

BCD Counter (0-9) using D-Flip Flops (74LS74) — Complete KiCad project with schematic, PCB layout, Gerber files & 3D renders. Built with NE555 + 74LS74 + 74LS00 + 74LS47 + 7-Segment Display.

Size
136.3 × 43.8 mm
Copper layers
2
Thickness
1.6 mm
Parts
24
Nets
33
Pads
104
Tracks, vias
245, 0
Pours
1
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
2 Jul 2026
Updated
2 Jul 2026

Overview

Bcd counter using d flipfflop is an open-source printed circuit board by nirav1385, from the nirav1385/BCD-counter-using-D_flipflop repository on GitHub. It is a 2-layer board of 136.3 × 43.8 mm with 24 parts on 33 nets, routed with 245 tracks and 0 vias.

It is built around the 74LS74PC, 74LS00SC and HDSP-7401, with the NE555P among its other parts. Its parts include 9 resistors, 6 ICs, 2 capacitors and 1 connector.

Main components

4

README

README.md

🔢 BCD Counter Using D-Flip Flop

A complete BCD (Binary-Coded Decimal) Counter built from scratch using D-type Flip-Flops (74LS74), designed and routed in KiCad 10.0. This project demonstrates synchronous digital counter design using discrete TTL logic ICs with a 7-segment display output.


📸 Project Screenshots

Schematic Diagram

Schematic Diagram

PCB Layout

PCB Layout

3D View — Front Side

3D View Front

3D View — Back Side

3D View Back


🧠 How It Works

A BCD counter counts from 0 to 9 (binary 0000 to 1001) and then resets back to 0. This design achieves that using:

  1. NE555 Timer (Astable Mode) — Generates the clock signal for the counter.
  2. 74LS74 D-Flip Flops — Four flip-flops (Q0–Q3) form the 4-bit binary counter. Each flip-flop's complementary output (Q̅) is fed back to its D input, creating a toggle behavior.
  3. 74LS00 NAND Gates — Provide the combinational logic to detect count 10 (binary 1010) and force a reset, ensuring the counter wraps around after 9.
  4. 74LS47 BCD-to-7-Segment Decoder — Converts the 4-bit BCD output into signals to drive the 7-segment display.
  5. HDSP-7401 7-Segment Display — Displays the current count (0–9) visually.

📊 Count Sequence

DecimalQ3Q2Q1Q0
00000
10001
20010
30011
40100
50101
60110
70111
81000
91001
Reset1010

After reaching 9, the NAND gate logic detects 1010 (Q3·Q1) and resets all flip-flops to 0000.


🧩 Components Used (Bill of Materials)

RefComponentValue / Part No.QuantityDescription
U1NE555PNE555P1Timer IC — Clock generator (Astable)
U2, U374LS7474LS742Dual D-Type Flip-Flop (4 flip-flops)
U474LS4774LS471BCD-to-7-Segment Decoder/Driver
U5HDSP-7401HDSP-74011Common-Anode 7-Segment Display
U674LS0074LS001Quad 2-Input NAND Gate (reset logic)
R1Resistor1KΩ1NE555 timing resistor
R2Resistor15KΩ1NE555 timing resistor
R3–R9Resistor330Ω7Current-limiting resistors for display
C1Electrolytic Capacitor47µF1NE555 timing capacitor
C2Ceramic Capacitor0.01µF1NE555 decoupling/noise filter capacitor
J1Screw Terminal01×021Power input connector (+5V / GND)

Total ICs: 6  |  Total Passives: 11  |  Total Components: 18


⚡ Power Supply

ParameterValue
Supply Voltage+5V DC
Input ConnectorScrew Terminal (J1)
Logic Family74LS (TTL)

⚠️ Do NOT exceed 5.25V as the 74LS series TTL ICs have a maximum operating voltage of 5.25V.


🕐 Clock Signal (NE555 Timer)

The NE555 is configured in Astable (free-running) mode to generate a continuous square wave clock signal.

Timer Configuration

  • R1 (Ra) = 1KΩ
  • R2 (Rb) = 15KΩ
  • C1 = 47µF
  • C2 = 0.01µF (Decoupling)

Calculated Frequency

text
f = 1.44 / ((R1 + 2×R2) × C1)
f = 1.44 / ((1000 + 2×15000) × 0.000047)
f ≈ 0.99 Hz  (~1 count per second)

The counter advances approximately once per second, making the count changes easily visible on the 7-segment display.


📂 Project Structure

text
bcd_counter_using_d-flipfflop/
│
├── 📄 README.md                                    ← You are here
├── 📐 bcd_counter_using_d-flipfflop.kicad_sch      ← Schematic file
├── 🟢 bcd_counter_using_d-flipfflop.kicad_pcb      ← PCB layout file
├── ⚙️ bcd_counter_using_d-flipfflop.kicad_pro      ← KiCad project file
│
├── 📁 images/
│   ├── 🖼️ schematic_diagram.jpeg                   ← Circuit schematic screenshot
│   ├── 🖼️ pcb_layout.jpeg                          ← PCB layout screenshot
│   ├── 🖼️ 3d_view_front.jpeg                       ← 3D render (front side)
│   └── 🖼️ 3d_view_back.jpeg                        ← 3D render (back side)
│
└── 📁 Gerber/
    ├── bcd_counter_using_d-flipfflop-F_Cu.gbr       ← Front copper layer
    ├── bcd_counter_using_d-flipfflop-B_Cu.gbr       ← Back copper layer
    ├── bcd_counter_using_d-flipfflop-F_Mask.gbr     ← Front solder mask
    ├── bcd_counter_using_d-flipfflop-B_Mask.gbr     ← Back solder mask
    ├── bcd_counter_using_d-flipfflop-F_Paste.gbr    ← Front solder paste
    ├── bcd_counter_using_d-flipfflop-B_Paste.gbr    ← Back solder paste
    ├── bcd_counter_using_d-flipfflop-F_Silkscreen.gbr ← Front silkscreen
    ├── bcd_counter_using_d-flipfflop-B_Silkscreen.gbr ← Back silkscreen
    ├── bcd_counter_using_d-flipfflop-Edge_Cuts.gbr  ← Board outline
    ├── bcd_counter_using_d-flipfflop-PTH.drl        ← Plated through-holes
    ├── bcd_counter_using_d-flipfflop-NPTH.drl       ← Non-plated holes
    └── bcd_counter_using_d-flipfflop-job.gbrjob     ← Gerber job file

🏭 PCB Specifications

ParameterValue
PCB Layers2 (Front & Back Copper)
Track Width0.25mm (9.84 mils)
Total Pads104
Total Vias0
Track Segments245
Total Nets33
Unrouted Nets0 ✅
Mounting Holes4× M3 (3.2mm)
Design ToolKiCad 10.0

✅ All nets are fully routed — The PCB design is complete with zero unrouted connections.


🛠️ How to Use This Project

Prerequisites

Opening the Project

  1. Open KiCad
  2. Go to File → Open Project
  3. Navigate to this folder and select bcd_counter_using_d-flipfflop.kicad_pro
  4. The schematic and PCB layout will be available in the project window

Ordering the PCB

  1. The Gerber/ folder contains all manufacturing files
  2. Upload the contents of the Gerber/ folder to any PCB manufacturer:
  3. Use default settings (2-layer, 1.6mm thickness, HASL finish)

📚 Theory — BCD Counter with D-Flip Flops

Why D-Flip Flops?

A D-Flip Flop can be used as a toggle flip-flop by connecting its Q̅ (complementary) output back to the D input. On each rising edge of the clock, it toggles its state — this is the fundamental building block for binary counters.

BCD vs. Binary Counter

A standard 4-bit binary counter counts from 0000 to 1111 (0–15). A BCD counter is modified to count only from 0000 to 1001 (0–9) by adding reset logic that detects the invalid state 1010 (decimal 10) and immediately resets all flip-flops to 0000.

Reset Logic (74LS00 NAND Gates)

The NAND gates monitor Q3 and Q1. When both are HIGH (indicating count = 10 in binary, 1010), the NAND gate output goes LOW, which asynchronously clears (resets) all flip-flops back to 0000.


📝 License

This project is open-source. Feel free to use, modify, and share it for educational purposes.


👤 Author

Nirav Jain - Designed and developed as an electronics/digital logic project using KiCad EDA.


⭐ If you found this project helpful, give it a star! ⭐

Parts

24
QtyValueFootprintReferences
7330Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR3, R4, R5, R6, R7, R8, R9
274LS74Package_DIP:DIP-14_W7.62mmU2, U3
10.01uFCapacitor_THT:C_Disc_D5.0mm_W2.5mm_P5.00mmC2
115KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR2
11KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR1
147uFCapacitor_THT:CP_Radial_D5.0mm_P2.50mmC1
174LS00Package_DIP:DIP-14_W7.62mmU6
174LS47Package_DIP:DIP-16_W7.62mmU4
1HDSP-7401Display_7Segment:HDSP-7401U5
1NE555PPackage_DIP:DIP-8_W7.62mmU1
1Screw_Terminal_01x02TerminalBlock:TerminalBlock_MaiXu_MX126-5.0-02P_1x02_P5.00mmJ1

The 18 most common of 24 parts.

Similar boards

  • 2 layers48.5 × 45 mmSeven segment counter Circuit, the printed circuit board in 3D

    Seven segment counter Circuit

    Diinidu12/Simple_Seven_segment_Counter

    This is a simple PCB designing project for follow the all the professional steps and build a quality and manufacturable PCB

    15 partsApache-2.0
  • 4 layers194.5 × 188.6 mmMyCpu, the printed circuit board in 3D

    MyCpu

    fortinsylvain/MyCpu

    Home brew CPU Hardware with 1-bit ALU implementation using 74LSxx, a micro-code and assembler coded in C#.

    162 parts18MIT
  • 2 layers150 × 100 mmMemory loader, the printed circuit board in 3D

    Memory loader

    TomNisbet/sap-plus

    Simple As Possible (SAP) 8-bit computer with a modular PCB design

    66 parts11MIT
  • 2 layers385 × 230 mmMZ80K, the printed circuit board in 3D

    MZ80K

    Board-Folk/Sharp-MZ-80K

    Sharp MZ-80K Replica Public

    254 parts6
  • 2 layers486 × 306.3 mmMonacoGP, the printed circuit board in 3D

    MonacoGP

    stonedDiscord/MonacoGP

    Sega MonacoGP TTL Boards

    257 parts1
  • 2 layers630 × 300 mmSecretBase, the printed circuit board in 3D

    SecretBase

    stonedDiscord/SecretBase

    SEGA Secret Base Arcade Game

    441 parts
  • 2 layers114.3 × 95.9 mmACEDIAGBOARD, the printed circuit board in 3D

    ACEDIAGBOARD

    flypie/Ace-2019

    Reimplimentation of the Jupiter ACE with slightly more modern hardware. https://www.jupiter-ace.co.uk/ the KiCad versions are the up to date designs which are available at https://jupiterdeuce.blogspot.com and…

    48 parts13GPL-3.0
  • 2 layers101.6 × 134 mmI281 io, the printed circuit board in 3D

    I281 io

    brandtdamman/i281e-cpu

    Developed by SDMAY24-14 Senior Design group under Dr. Stoytchev, the i281e CPU is an extended design from the original i281 CPU for educational purposes.

    64 parts1

Questions

How big is the Bcd counter using d flipfflop PCB?

It measures 136.3 × 43.8 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Bcd counter using d flipfflop use?

24 parts, built around the 74LS74PC, 74LS00SC, HDSP-7401 and NE555P. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Bcd counter using d flipfflop KiCad files?

From the nirav1385/BCD-counter-using-D_flipflop repository on GitHub, at the commit this page was made from: the board is bcd_counter_using_d-flipfflop.kicad_pcb and its schematic bcd_counter_using_d-flipfflop.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Bcd counter using d flipfflop design in my own project?

Its repository states no licence, so its author keeps all rights: ask nirav1385 before reusing the design.