Tạo đồng hồ kỹ thuật số 7 đoạn này với mạch cảnh báo tiếng bíp

Hãy Thử Công Cụ CủA Chúng Tôi Để LoạI Bỏ Các VấN Đề





Trong bài này, chúng ta sẽ xây dựng một đồng hồ kỹ thuật số sử dụng màn hình LED 7 đoạn với thiết kế điều khiển bằng Arduino.

THEO:



Cách hoạt động của mạch

Mạch đồng hồ 7 đoạn được đề xuất không tốn kém và ngay cả những người mới bắt đầu sử dụng Arduino cũng có thể hoàn thành nó một cách dễ dàng. Đồng hồ này bao gồm bốn màn hình 7 phân đoạn, hai hiển thị giờ và hai hiển thị phút.

Màn hình được ghép nối với IC 4026 được thiết kế để điều khiển màn hình 7 đoạn. Mỗi IC 4026 được điều khiển bởi Arduino.



Đồng hồ này có chức năng cảnh báo tiếng bíp, tiếng bíp mỗi đầu giờ, cho biết sơ bộ về thời gian mà không cần nhìn vào đồng hồ. Đồng hồ này không có chức năng báo thức.

Mã Arduino không cần bất kỳ thư viện đặc biệt nào để biên dịch chương trình. Đồng hồ có thiết kế rất tối giản, chỉ có bốn màn hình và hai đèn LED cho chỉ báo AM / PM và không có chức năng lạ mắt nào ngoài tiếng bíp mỗi giờ.

Nguyên mẫu của tác giả:

Kết quả kiểm tra của đồng hồ kỹ thuật số 7 đoạn

Đây là một nguyên mẫu đã hoàn thành bằng cách sử dụng bìa cứng và vật liệu phế liệu:

Thiết kế:

Mạch bao gồm bốn IC 4026 để điều khiển bốn màn hình 7 đoạn và bộ não của đồng hồ arduino. Hai điện trở kéo xuống được nối với chân reset của IC 4026 để tránh tình trạng reset do tích điện tĩnh. Chỉ báo AM / PM kết nối với arduino kết hợp với điện trở giới hạn dòng 330 ohm.

Lưu ý: Điện trở 220 ohm đến 330 ohm phải được kết nối từng đoạn màn hình.

Đồng hồ kỹ thuật số 7 đoạn với mạch cảnh báo tiếng bíp

Cấu hình chân của IC 4026:

Cấu hình chân của IC 4026

Mạch bíp:

Mạch bíp chỉ là một bộ đa vi mạch đơn ổn được thiết kế sử dụng IC555. Khi một xung âm được cấp vào chân số 2 của IC555, nó sẽ phát ra tiếng bíp trong một giây. Cảnh báo bằng âm thanh này giúp người dùng nắm được thông tin sơ bộ về thời gian. Chân số 2 của IC555 phải được kết nối với chân số 10 của arduino.

Mạch còi IC 555

Mã chương trình:

//---------Program developed by R.Girish---------------//
int mint=13
int hrs=11
int beep=10
int rst=8 // reset to mint ic.
int rsth=9 //reset to hrs ic.
int am=7
int pm=6
int y=0
int t=0
int x=0
void setup()
{
pinMode(beep,OUTPUT)
pinMode(hrs,OUTPUT)
pinMode(am,OUTPUT)
pinMode(pm,OUTPUT)
pinMode(mint,OUTPUT)
pinMode(rst,OUTPUT)
pinMode(rsth,OUTPUT)
}
void loop()
{
digitalWrite(beep,1)
digitalWrite(13,0)
delay(10000)
delay(10000)
delay(10000)
delay(10000)
delay(10000)
delay(10000)
digitalWrite(13,1)
t=t+1
if(t==60)
{
digitalWrite(rst,1)
digitalWrite(rst,0)
digitalWrite(hrs,1)
digitalWrite(hrs,0)
digitalWrite(beep,0)
digitalWrite(beep,1)
x=x+1
y=y+1
t=0
delay(2000) // error fixing (varies with temperature)
}
if(x==13) // display 1'O clock after 12'O clock.
{
digitalWrite(rsth,1)
digitalWrite(rsth,0)
digitalWrite(hrs,1)
digitalWrite(hrs,0)
x=1
}
if(y<12)
{
digitalWrite(am,1)
digitalWrite(pm,0)
}
if(y>=12)
{
digitalWrite(pm,1)
digitalWrite(am,0)
}
if(y==24) y=0
}
//---------Program developed by R.Girish---------------//

Cách đặt thời gian:

Được thiết kế rất tối giản, 'nút đặt lại' có thể được sử dụng để đặt thời gian. Nhưng người dùng phải đặt thời gian với sự trợ giúp của đồng hồ tham chiếu. Người dùng phải thiết lập lại arduino đúng 12 giờ. Một điều này được thực hiện để đồng hồ tự cập nhật thời gian.

Lưu ý: Vì đồng hồ kỹ thuật số 7 phân đoạn được giải thích ở trên sử dụng Arduino không có 'chip đồng hồ thời gian thực', để duy trì thời gian chính xác, có khả năng thời gian có thể dẫn / trễ do thay đổi nhiệt độ môi trường.

Để khắc phục điều này, đây là các bước:

• Nếu đồng hồ của bạn dẫn trước thời gian của đồng hồ tham chiếu vài giây, nó cần phải chậm lại, hãy ghi lại sự khác biệt và nhập giá trị vào chương trình bằng mili giây.

delay (2000) // sửa lỗi (thay đổi theo nhiệt độ) Điều này sẽ làm chậm vài giây mỗi giờ.

• Thay thế 2000 bằng giá trị của bạn.

• Nếu đồng hồ của bạn bị trễ, hãy đặt “delay (0) // sửa lỗi (thay đổi theo thời gian)” và thực hiện các thay đổi sau trong chương trình:

delay(10000)
delay(10000)
delay(10000)
delay(10000)
delay(10000)
delay(10000)
to
delay(10000)
delay(10000)
delay(10000)
delay(10000)
delay(10000)
delay(9700)

Thay thế “delay (9700)” bằng giá trị của bạn để tăng tốc thời gian mỗi phút.

Các bước này không đảm bảo rằng thời gian sẽ luôn chính xác, nhưng nó giúp duy trì thời gian với độ chính xác tối thiểu. Thiết kế đề xuất là 12 giờ đồng hồ.




Một cặp: Mạch chỉ báo sạc đầy pin sử dụng hai bóng bán dẫn Tiếp theo: Bộ tạo hiệu ứng Corona