Mục lục:

LCD NGÀY / ĐỒNG HỒ Hãy quên RTC: 9 bước
LCD NGÀY / ĐỒNG HỒ Hãy quên RTC: 9 bước

Video: LCD NGÀY / ĐỒNG HỒ Hãy quên RTC: 9 bước

Video: LCD NGÀY / ĐỒNG HỒ Hãy quên RTC: 9 bước
Video: Hướng dẫn làm đồng hồ với LCD và DS1307 - Ngôi Nhà IoT 2024, Tháng mười một
Anonim
NGÀY / ĐỒNG HỒ LCD Quên RTC
NGÀY / ĐỒNG HỒ LCD Quên RTC

Đồng hồ logic lượng tử NIST 2010 dựa trên một ion nhôm duy nhất.

Vào năm 2010, một thí nghiệm đã đặt hai đồng hồ lượng tử nhôm-ion gần nhau, nhưng với đồng hồ thứ hai cao 12 in (30,5 cm) so với đồng hồ thứ nhất, làm cho hiệu ứng giãn nở thời gian hấp dẫn có thể nhìn thấy trong các quy mô phòng thí nghiệm hàng ngày. Do đó phản bác lại lý thuyết hấp dẫn của Einstein. Các đồng hồ đã được đảo ngược vị trí và hiển thị cùng một khoảng thời gian. Nhà nghiên cứu hậu tiến sĩ James Chin-wen Chou của NIST với chiếc đồng hồ chính xác nhất thế giới, dựa trên dao động của một ion nhôm (nguyên tử mang điện). Ion bị giữ lại bên trong hình trụ kim loại (giữa bên phải). Anh ấy nói 'giảm 1 giây trong 3,7 tỷ năm' … chúng ta hãy chờ xem!

SIÊU DUPER WOW.

Vì vậy, bằng cách sử dụng các rung động lượng tử thực sự nhanh, bạn nghĩ nhanh hơn là tốt hơn. Chip 328 trong Unos rất nhanh ở tốc độ 16mhz. Đó là nhanh hơn nhiều so với tinh thể đồng hồ (đồng hồ) thông thường là 32,768 khz. Đó là nhanh hơn 500 lần! Và 328 có cảm biến nhiệt độ để bù nhiệt cho đồng hồ.

Vậy tại sao 328 out không thể tạo ra một tinh thể đồng hồ cheep?

Bước 1: MONG ĐỢI ĐIỀU GÌ

MONG MUỐN GÌ
MONG MUỐN GÌ

Đây là nỗ lực thứ hai của tôi để tạo ra một chiếc đồng hồ CHỈ sử dụng chip 328. Mỗi 328 chạy ở những thời điểm khác nhau mặc dù chúng có tinh thể 16mhz. Vì vậy, bạn nhận được kết quả kém chỉ cần đếm mili (). Chạy ở tốc độ 1, 000 hz. Điều này làm cho MỘT mili (1) trung bình có độ chính xác khoảng + - 3,6 giây mỗi giờ. Các nhà máy Arduino () không tính các nhà máy riêng lẻ hoặc sử dụng phao nổi. Điều này làm cho việc đếm các phân số của một nhà máy là không thể. Vì vậy, sử dụng Arduino micros () là lựa chọn tiếp theo. Nhưng sử dụng micros () hết chỉ sau 71 phút. (điều này thực sự KHÔNG phải là một vấn đề). Vấn đề đối với tôi là xử lý số lượng lớn và thực hiện các điều chỉnh lặp đi lặp lại dựa trên thời gian đồng hồ gps. Một sự lựa chọn khác là một sự gián đoạn. Điều này đếm giây bất kể mã đang chạy ở đâu bên trong vòng lặp. Điều này làm cho 328 tốt như một RTC. Ngay cả khi các điểm của 'micros ()' được coi là ở + - 4 uS, thì đây vẫn là một đồng hồ 250khz. Đó là tốt hơn 7 lần so với 32,768khz.

Vì vậy, đây là đồng hồ LCD Arduino của tôi dựa trên bộ đếm thời gian 16 bit Một lần ngắt sử dụng micro giây. Nó không hoàn toàn tốt bằng việc đếm các ion nhôm! Nhưng nó dễ dàng và với một số hiệu chuẩn, nó có thể tốt như RTC. Tôi đã thực hiện 3 phiên bản của đồng hồ này. Từ kết nối với usb máy tính. Để độc lập với 4 nút. Để bên ngoài gps với nhiệt độ sử dụng HC12. Hướng dẫn này sẽ bao gồm 2 đồng hồ đầu tiên và tôi sẽ viết một 'chuyên sâu' khác cho HC12.

Xem hướng dẫn khác của tôi về các vấn đề phạm vi HC12.

Những gì bạn có thể mong đợi là một đồng hồ LCD / ngày dễ dàng sử dụng UNO và màn hình LCD 16x2. Tôi đã thực hiện một số số tùy chỉnh cho màn hình LCD. Thư viện 'số LỚN' chiếm 3 khoảng trắng, của tôi chỉ là 1. Nút 4 có kéo lên bên trong nên việc xây dựng rất dễ dàng. Tôi có một trường hợp cho điều này và một 2 LCD và mặt sau.

Thư viện công cộng ở thị trấn nhỏ của tôi có một máy in 3d mà ai cũng có thể sử dụng. Vì vậy, hãy kiểm tra một thư viện gần bạn để làm vỏ màn hình LCD.

Các bài kiểm tra của tôi hiển thị - + giây sau mỗi 24-48 giờ. Đó là khoảng một phút nghỉ trong hai tháng. Ba hoặc bốn lần điều chỉnh đặt đồng hồ vào vị trí. Chỉ giảm khoảng 12 giây trước THÁNG. Các nỗ lực lặp đi lặp lại để 'hiệu chỉnh' các đường nối để chỉ là những con số đuổi theo. Một tính năng BAD là sử dụng BẤT KỲ 'menu' đặt lại giây thành 00. Điều này thay đổi thời gian hiện tại. Tôi đã để lại thời gian chờ 60 giây cho lần nhấn nút để cho phép đồng bộ hóa với đồng hồ khác.

Bước 2: NÚT VÀ CHỐT

CÁC NÚT VÀ CHỐT
CÁC NÚT VÀ CHỐT
CÁC NÚT VÀ CHỐT
CÁC NÚT VÀ CHỐT
CÁC MÓN VÀ CHỐT
CÁC MÓN VÀ CHỐT
CÁC NÚT VÀ CHỐT
CÁC NÚT VÀ CHỐT

Dự án này là một đồng hồ STAND ALONE không có RTC, chỉ là màn hình LCD và LCD. 4 nút cho phép thiết lập thời gian / ngày và điều chỉnh múi giờ và hiệu chỉnh.

Các tệp máy in 3d có một hộp LCD một và hai cho các dự án khác.

Màn hình LCD có CÁC SỐ LỚN chỉ chiếm một không gian rộng. Điều này khiến tôi mất khá nhiều thời gian để làm

Vỏ có 8 lỗ cho các nút cho các dự án khác.

Chỉ cần kết nối một ổ điện 5v trên tường để cấp nguồn.

Kiểm tra THƯ VIỆN tại địa phương của bạn để sử dụng máy in 3d !!

Bước 3: GIỚI THIỆU TÒA NHÀ

GIỚI THIỆU TÒA NHÀ
GIỚI THIỆU TÒA NHÀ
GIỚI THIỆU TÒA NHÀ
GIỚI THIỆU TÒA NHÀ
GIỚI THIỆU TÒA NHÀ
GIỚI THIỆU TÒA NHÀ

Bất kỳ bảng Arduino nào có MEGA 328 micros đều hoạt động. Nó cần một tinh thể 16mhz và phải chạy ở tốc độ đó. Một 3,3 volt ở 8mhz có thể không hoạt động với thời gian ngắt. Đối với trường hợp bao vây, một pro-mini phù hợp nhất nhưng bạn có thể chèn nano vào nhưng cáp usb có thể là vấn đề. Đây là màn hình LCD 16x2 của Hitachi, rất phổ biến. Một số con kêu là DULL và chỉ mờ nhạt. Cần có đầu nối cạnh để phù hợp với mô-đun chuyển đổi I2c phổ biến. Chỉ cần 4 dây để kết nối với ống kính. Có rất nhiều hướng dẫn để chỉ ra cách kết nối màn hình LCD mà không cần mô-đun chuyển đổi nếu bạn không muốn. Đối với đồng hồ không nút, đó là tất cả những gì bạn làm.

Màn hình LCD có SỐ LỚN tùy chỉnh. Các số lớn chỉ chiếm MỘT chiều rộng.

Bước 4: 4 NÚT và TRƯỜNG HỢP

4 NÚT và TRƯỜNG HỢP
4 NÚT và TRƯỜNG HỢP
4 NÚT và TRƯỜNG HỢP
4 NÚT và TRƯỜNG HỢP
4 NÚT và TRƯỜNG HỢP
4 NÚT và TRƯỜNG HỢP

Tương tự như trên nhưng thêm 4 công tắc. Một bảng máy tính tiêu chuẩn 2 inch x 2,5 inch được sử dụng để lắp vỏ máy. Chỉ cần cắt đôi và cài đặt các công tắc để các chân đi từ trái sang phải. Nếu bạn đặt công tắc có chân lên, các lỗ sẽ không thẳng hàng trong trường hợp. Kiểm tra xem chúng có thẳng hàng với các lỗ của hộp trước khi hàn không. Tiếp đất các chân dưới cùng (tất cả) và chạy từng chân trên đến một chốt trên chiếc chưa. Xem sơ đồ kèm theo. Nếu bạn in trường hợp 3d, phần nút cần được gắn vào vỏ màn hình LCD. Nó KHÔNG dính vào như mặt sau. Bất kỳ ốc vít nhỏ nào sẽ giữ màn hình LCD tại chỗ. QUÁ lớn và bạn sẽ phá vỡ trường hợp. Keo dính nóng có thể là tốt nhất. Trước khi lắp màn hình LCD… hãy bôi đen vùng đèn led bằng băng keo đen. Nếu không, nó sẽ chiếu sáng qua vỏ máy. Tôi sử dụng băng keo 2 mặt trong 2 lớp để gắn mini pro. Băng này là một món hời tại 'cửa hàng cây đô la'. Tôi sử dụng dây điện từ tráng rắn khoảng 26 gauge. Tôi có một hướng dẫn tuyệt vời về 'một nồi hàn người nghèo' để sử dụng dây này trong móc nối.

Bước 5: MÀN HÌNH LCD

Màn hình LCD
Màn hình LCD
Màn hình LCD
Màn hình LCD
Màn hình LCD
Màn hình LCD

vấn đề lcd

Sau khi hoàn thành bản dựng, hãy tải xuống và cài đặt bản phác thảo. Màn hình LCD có thể không sáng màn hình. Đây là một số lời khuyên. 'LED' LCD sẽ sáng và làm cho màn hình hơi xanh. Nếu không có led hãy kiểm tra chân jumper đối diện với nồi điện trở. Điều này cần jumper hoặc điện trở 150 ohm. Cái nồi màu xanh luôn là vấn đề. Vì vậy, xoay cái nồi cho đến khi màn hình hiển thị 2 hàng hình vuông. Sau đó quay lại chỉ cho đến khi các hình vuông gần như không biến mất. Nếu vẫn không hiển thị, hãy kiểm tra kết nối SDA và SCL. Quá dễ dàng để làm cho chúng trở lại. Đó là A4 thành SDA và A5 thành SCL. Đây là các chân A không phải chân D và một số máy tính chuyên nghiệp có các chân này ở bên trong máy tính chứ không phải ở các cạnh. Tùy chọn cuối cùng là kiểm tra địa chỉ. Một số mô-đun chuyển đổi LCD có các địa chỉ khác nhau. Hoặc khi sử dụng nhiều thiết bị, tất cả đều cần các địa chỉ khác nhau. Hầu hết các mô-đun có 3 chân hàn để thiết lập 3 địa chỉ khác nhau. Hãy nhớ I2c chỉ chạy 2 dây đến bất kỳ và TẤT CẢ các thiết bị. Vì vậy, mỗi thiết bị PHẢI có một địa chỉ duy nhất. Bao gồm một máy quét địa chỉ I2c. Tải xuống cài đặt máy quét và đọc màn hình nối tiếp. Màn hình hiển thị địa chỉ cho BẤT KỲ thiết bị I2c nào. Kiểm tra Bản phác thảo đồng hồ cho đường ở trên cùng của bản phác thảo. 'Màn hình LCD LiquidCrystal_I2C (0x3F, 16, 2); '0x3F là địa chỉ chính xác cho bộ chuyển đổi của tôi. Nếu địa chỉ của bạn khác, hãy thay đổi địa chỉ chính xác từ máy quét. Thận trọng: sao chép và dán địa chỉ mới đôi khi bao gồm ký tự cuối dòng hoặc ký tự xuống dòng. Chỉ cần gõ vào địa chỉ khác. Các chữ cái đầu tiên luôn là số 0 và chữ hoa nhỏ x 0x. Điều này cho C ++ biết rằng nó là một hex. Sau 0x bất kỳ chữ cái nào là chữ hoa.

Bước 6: HOOKUPS

HOOKUPS
HOOKUPS
HOOKUPS
HOOKUPS
HOOKUPS
HOOKUPS

theo giản đồ và nối dây đơn vị.

Bước 7: CÁC ẢNH KHÁC

CÁC HÌNH ẢNH KHÁC
CÁC HÌNH ẢNH KHÁC
CÁC HÌNH ẢNH KHÁC
CÁC HÌNH ẢNH KHÁC
CÁC HÌNH ẢNH KHÁC
CÁC HÌNH ẢNH KHÁC

chúc may mắn VUI LÒNG xem các hướng dẫn khác của tôi

Bước 8: TRÒ CHUYỆN

hướng dẫn sẽ không cho phép tôi tải xuống tệp Arduino !!!! vì vậy tôi đã sử dụng văn bản. Bạn sẽ phải sao chép và dán văn bản vào một tệp mở arduino MỚI tại IDE ……. XIN LỖI

và các tệp văn bản cũng sẽ không tải !!! và cố gắng dán ở đây nhưng nó lộn xộn !!

cuối cùng !!! có bản phác thảo của tôi để tải về ở đây. 3-26-2020 cũng đã sửa một số thứ nhỏ.

Những người được trả tiền để viết mã đang lăn lộn trên sàn khi họ nhìn thấy mã của tôi. Bản phác thảo của tôi thường bắt đầu đơn giản. Sau đó, tôi thêm nhiều thứ để làm. Vì vậy, bản phác thảo bị xoắn thành một mớ hỗn độn. Tôi hy vọng bạn học được từ hai sai lầm lớn nhất của tôi. Cần có một đề cương và mục tiêu xác định khi bắt đầu. Không thêm hàng tấn thứ trong suốt bản phác thảo. Sai lầm tồi tệ nhất của tôi là sử dụng sai một FUNCTION. Nó phải ngắn gọn và trả về một tổng, và chỉ được sử dụng khi nó thay thế các dòng mã lặp lại trong suốt bản phác thảo. delay (100) là một ví dụ điển hình.

Việc sử dụng FUNCTION của tôi là để tách các phần của bản phác thảo. Điều này giúp tôi dễ dàng theo dõi phần thân chính cũng như cho phép gỡ lỗi các phần riêng biệt chỉ bằng cách gọi hàm. Tôi nghĩ rằng GOTO đã từng làm điều này nhưng nó không được ưa chuộng và KHÔNG BAO GIỜ được sử dụng. Nuff nói. Tôi đã kiểm tra ngày và giờ tốt nhất có thể. Các phần tương tự của bản phác thảo chạy đồng hồ 'TIME SQUARED' của tôi trong nhiều năm. Nếu tôi bỏ lỡ một cái gì đó hoặc có một lỗi, xin vui lòng cho tôi biết. Để hiệu chỉnh 'phác thảo không có nút', dòng với 'unsigned long tSec = 1000122; '(dòng 34) là những gì bạn thay đổi. Hằng số 277 trên giây mỗi giờ là đúng. Nhưng trong thực tế, tôi chỉ thực hiện từ 2 đến 8 thay đổi số lượng đối với giá trị 'tSec'. Ở thời điểm 1000122, nhiều đồng hồ của tôi chạy tốt như RTC. Hãy kiên nhẫn một sự thay đổi nhỏ chỉ từ 2-8 có thể trở thành một chiếc đồng hồ hoàn hảo. Mặt dưới của bất kỳ thay đổi nào đối với một trong hai đồng hồ có nghĩa là thời gian hiện tại SẼ bị thay đổi. Bạn sẽ cần phải thay đổi ngày / giờ hiện tại chính xác.

//// easy_one_lcd_clock_no_buttons // // đồng hồ arduino và LCD // sử dụng timerOne 16 bit timer // để hiệu chỉnh đồng hồ này: // sử dụng đồng hồ giây tốt như GPS. // sử dụng giờ làm đường cơ sở. Đếm giây // NÀY tắt. Nếu NÀY nằm sau GPS // GPS = 00.. THIS = 58 SUBTRACT 277 cho mỗi // giây / giờ. Vì vậy, nếu chậm hơn 2 giây trong // 3 giờ… (277 * 2) / 3 = 184 // HẤP THỤ từ tSec. // nếu NÀY phía trước GPS = 00… NÀY = 03 // cùng một phép toán chỉ THÊM vào tSec. // cauction, hầu hết đồng hồ chính xác ở 00. // 20 giây là kiểm tra bộ đếm thời gian tốt hơn.

Bước 9: Tệp STL CASE

Đây là các tệp trường hợp máy in 3d. Bàn phím cần được dán vào vỏ màn hình LCD. Mặt sau dính vào cả mặt trước của hộp một và hai màn hình LCD. Chụp phần trên vào trước sau đó làm việc theo cách của bạn để có được một bộ quần áo vừa vặn.

CHECH RA THƯ VIỆN tại địa phương của bạn để sử dụng máy in 3d.

Đề xuất: