Mục lục:
- Bước 1: Vật liệu
- Bước 2: Thiết lập đầu vào và đầu ra
- Bước 3: Làm đồng hồ
- Bước 4: Đếm đến mười
- Bước 5: Hiển thị số
- Bước 6: Cách hiển thị đồng hồ bấm giờ
- Bước 7: Kết hợp tất cả lại với nhau
- Bước 8: Ràng buộc
- Bước 9: Kiểm tra
Video: Đồng hồ bấm giờ cơ bản sử dụng VHDL và Bảng Basys3: 9 bước
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:33
Chào mừng bạn đến với tài liệu hướng dẫn về cách chế tạo đồng hồ bấm giờ bằng bảng VHDL và Basys 3 cơ bản. Chúng tôi rất vui mừng được chia sẻ dự án của chúng tôi với bạn! Đây là dự án cuối cùng cho khóa học CPE 133 (Thiết kế kỹ thuật số) tại Cal Poly, SLO vào mùa Thu năm 2016. Dự án chúng tôi xây dựng là một chiếc đồng hồ bấm giờ đơn giản có thể khởi động, đặt lại và tạm dừng thời gian. Nó có ba nút nhấn trên bảng Basys3 làm đầu vào và thời gian được hiển thị trên màn hình bốn chữ số bảy phân đoạn của bảng. Thời gian đã trôi qua được hiển thị ở định dạng giây: centiseconds. Nó sử dụng đồng hồ hệ thống của bo mạch làm đầu vào để theo dõi thời gian đã trôi qua và xuất thời gian thành bốn chữ số của màn hình bảy đoạn.
Bước 1: Vật liệu
Các tài liệu bạn sẽ cần cho dự án này:
- 1 máy tính có cài đặt Vivado Design Suite WebPack từ Xilinx (ưu tiên phiên bản 2016.2)
- 1 Digilent Basys 3 Xilinx Artix-7 FPGA bảng
- 1 cáp cổng USB
Bước 2: Thiết lập đầu vào và đầu ra
Hình trên cho thấy sơ đồ khối cấp cao nhất của mô-đun đồng hồ bấm giờ chính. Đồng hồ bấm giờ nhận các đầu vào "CLK" (đồng hồ), "S1" (nút bắt đầu), "S2" (nút tạm dừng) và "RST" (đặt lại) và có đầu ra 4 bit "Cực dương", 7 bit đầu ra "phân đoạn" và đầu ra một bit "DP" (dấu thập phân). Khi đầu vào "S1" ở mức cao, đồng hồ bấm giờ bắt đầu đếm thời gian. Khi "S2" ở mức thấp, đồng hồ bấm giờ sẽ tạm dừng thời gian. Khi "RST" ở mức cao, đồng hồ bấm giờ sẽ dừng và đặt lại thời gian. Có bốn mô-đun con trong mạch: bộ chia đồng hồ, bộ đếm chữ số, trình điều khiển hiển thị bảy đoạn và bộ mã hóa hiển thị bảy đoạn. Mô-đun chính của đồng hồ bấm giờ liên kết tất cả các mô-đun con với nhau và với các đầu vào và đầu ra.
Bước 3: Làm đồng hồ
Mô-đun bộ chia đồng hồ lấy đồng hồ hệ thống và sử dụng đầu vào số chia để tạo ra đồng hồ có tốc độ bất kỳ không lớn hơn tốc độ của đồng hồ hệ thống. Đồng hồ bấm giờ sử dụng hai mô-đun đồng hồ khác nhau, một mô-đun tạo ra đồng hồ 500 Hz và một mô-đun khác tạo ra đồng hồ 100 Hz. Sơ đồ cho bộ chia đồng hồ được hiển thị trong hình trên. Bộ chia xung nhịp nhận đầu vào một bit "CLK" và đầu vào 32 bit "Bộ chia" và đầu ra bit đơn "CLKOUT". "CLK" là đồng hồ hệ thống và "CLKOUT" là đồng hồ kết quả. Mô-đun cũng bao gồm một cổng NOT, cổng này sẽ chuyển tín hiệu "CLKTOG" khi số đếm đạt đến giá trị của số chia.
Bước 4: Đếm đến mười
Bộ đếm chữ số đếm từng chữ số từ 0 đến 10 và tạo ra một đồng hồ khác để chữ số tiếp theo hoạt động khỏi dao động đó khi số đếm đạt đến 10. Mô-đun nhận 3 đầu vào bit đơn "S", "RST" và "CLK "và kết quả là đầu ra một bit" N "và đầu ra 4 bit" D ". Đầu vào "S" là kích hoạt đầu vào. Đồng hồ bật khi "S" ở mức cao và tắt khi "S" ở mức thấp. "RST" là đầu vào đặt lại để đồng hồ đặt lại khi "RST" ở mức cao. "CLK" là đầu vào đồng hồ cho bộ đếm chữ số. "N" là đầu ra đồng hồ trở thành đồng hồ đầu vào cho chữ số tiếp theo. Đầu ra "D" trình bày giá trị nhị phân của chữ số mà bộ đếm đang ở.
Bước 5: Hiển thị số
Bộ mã hóa hiển thị bảy đoạn sẽ mã hóa số nhị phân nhận được từ mô-đun trình điều khiển hiển thị bảy đoạn và biến nó thành một luồng bit sẽ được hiểu là giá trị '1' hoặc '0' cho mỗi phân đoạn của màn hình. Số nhị phân được mô-đun nhận dưới dạng "chữ số" đầu vào 4 bit và kết quả là "phân đoạn" đầu ra 7 bit. Mô-đun bao gồm một khối xử lý trường hợp duy nhất chỉ định một luồng 7 bit cụ thể cho mỗi giá trị đầu vào có thể có từ 0 đến 9. Mỗi bit trong các luồng bảy bit đại diện cho một trong bảy phân đoạn của các chữ số trên màn hình. Thứ tự của các phân đoạn trong luồng là “abcdefg” với ‘0 là đại diện cho các phân đoạn sáng lên cho một số nhất định.
Bước 6: Cách hiển thị đồng hồ bấm giờ
Trong mô-đun trình điều khiển hiển thị bảy đoạn, có bốn đầu vào 4 bit "D0", "D1", "D2" và "D3", mỗi đầu vào đại diện cho bốn chữ số sẽ được hiển thị. Đầu vào "CLK" là đầu vào xung nhịp của hệ thống. Đầu ra một bit "DP" đại diện cho dấu thập phân trên màn hình bảy đoạn. Đầu ra 4 bit "Cực dương" xác định chữ số nào trên màn hình bảy đoạn được hiển thị và "nhiệt độ" đầu ra 4 bit phụ thuộc vào trạng thái của đầu vào điều khiển 2 bit "SEL". Mô-đun sử dụng 4 bộ ghép kênh cho đầu vào điều khiển "SEL" và ba đầu ra; "Cực dương", "nhiệt độ" và "DP".
Bước 7: Kết hợp tất cả lại với nhau
Một khối quy trình 'nếu' chạy trên đồng hồ 500Hz được sử dụng để tạo các nút bắt đầu và tạm dừng. Sau đó, liên kết tất cả các mô-đun con với nhau trong mô-đun chính của đồng hồ bấm giờ bằng cách khai báo các thành phần của từng mô-đun con riêng lẻ và sử dụng các tín hiệu khác nhau. Các mô-đun con chữ số nhận đầu ra xung nhịp của mô-đun con chữ số trước đó với mô-đun đầu tiên nhận xung nhịp 100Hz. Các đầu ra "D" của các mô-đun con chữ số sau đó trở thành đầu vào "D" của mô-đun trình điều khiển hiển thị bảy phân đoạn. Và cuối cùng, đầu ra "tạm thời" của mô-đun trình điều khiển hiển thị bảy đoạn sẽ trở thành đầu vào "tạm thời" của mô-đun bộ mã hóa bảy đoạn.
Bước 8: Ràng buộc
Sử dụng 3 nút nhấn (W19, T17 và U18) cho đầu vào "RST", "S1" và "S2". W19 là nút khởi động lại, T17 là nút khởi động (S1) và U18 là nút tạm dừng (S2). Một ràng buộc đối với đầu vào đầu vào xung nhịp cũng được yêu cầu bằng cách sử dụng cổng W5. Ngoài ra, hãy nhớ thêm dòng này vào ràng buộc đồng hồ:
create_clock -add -name sys_clk_pin -period 10.00 -waveform {0 5} [get_ports {CLK}]
Đồng thời liên kết các Cực dương và các phân đoạn với bảng để đồng hồ bấm giờ được hiển thị trên màn hình bảy phân đoạn như được thấy trong tệp ràng buộc.
Bước 9: Kiểm tra
Đảm bảo thiết bị của bạn hoạt động bằng cách chơi với ba nút: nhấn và giữ chúng theo mọi thứ tự có thể để tìm bất kỳ sự cố nào có thể xảy ra với mã của bạn.
Đề xuất:
Đồng hồ bấm giờ Arduino sử dụng I2C LCD: 5 bước
Đồng hồ bấm giờ Arduino Sử dụng I2C LCD: Trong dự án này, tôi sẽ dạy bạn sử dụng màn hình LCD và Arduino làm đồng hồ bấm giờ tương tác. Khi dự án của bạn kết thúc với mã được cung cấp, nó sẽ giống như ảnh ở trên. Hãy chuyển sang bước tiếp theo để tìm hiểu nơi bắt đầu
Đồng hồ bấm giờ sử dụng Pic18f4520 trong Proteus với 7 phân đoạn: 6 bước
Đồng hồ bấm giờ sử dụng Pic18f4520 trong Proteus với 7 phân đoạn: Tôi vừa mới bắt đầu làm việc với bộ điều khiển pic, một người bạn của tôi đã yêu cầu tôi chế tạo đồng hồ bấm giờ từ nó. Vì vậy, tôi không có hình ảnh phần cứng để chia sẻ, tôi đã viết mã và mô phỏng nó trên phần mềm Proteus. Ở đây tôi đã chia sẻ sơ đồ cho cùng. T
Cách tạo đồng hồ bấm giờ kỹ thuật số sử dụng 555: 3 bước
Cách tạo đồng hồ bấm giờ kỹ thuật số bằng cách sử dụng 555: Tôi đã tạo một chiếc đồng hồ bấm giờ đơn giản bằng cách sử dụng 3 màn hình LED bảy đoạn, trong đó đầu tiên bạn hiển thị phần thứ 10 của giây khác cho phần giây và phần thứ ba cho bội số của 10 giây. Tôi đã sử dụng 555 bộ hẹn giờ ở chế độ ổn định cho tín hiệu mỗi 1 giây tới
VHDL Đồng hồ bấm giờ một phút: 5 bước
VHDL Đồng hồ bấm giờ một phút: Đây là hướng dẫn về cách tạo đồng hồ bấm giờ một phút bằng VHDL và bảng Basys 3. Một thiết bị như vậy là lý tưởng cho các trò chơi mà mỗi người chơi có tối đa một phút để di chuyển. Đồng hồ bấm giờ hiển thị chính xác giây và mili giây o
Đồng hồ bấm giờ VHDL: 8 bước (có hình ảnh)
Đồng hồ bấm giờ VHDL: Đây là hướng dẫn về cách tạo đồng hồ bấm giờ bằng VHDL và bảng mạch FPGA, như Bảng Basys3 Atrix-7. Đồng hồ bấm giờ có thể đếm từ 00,00 giây đến 99,99 giây. Nó sử dụng hai nút, một cho nút khởi động / dừng và một cho