Cách thực hiện: Tạo một chiếc đồng hồ giấy điện tử từ tạp chí Esquire

Cách thực hiện: Tạo một chiếc đồng hồ giấy điện tử từ tạp chí Esquire

June 30, 2023 Digital Electronics 0

Nếu bạn chưa bao giờ nghe về giấy điện tử, bò ra khỏi bên dưới tảng đá đó và đọc lên trên Sony Reader và Amazon Kindle. E-Paper là một màn hình linh hoạt được làm bằng các hạt thay đổi màu mô phỏng giấy mực để đọc ánh sáng ban ngày dễ dàng. Điều mang tính cách mạng về E-Paper là sau khi nó được thiết lập, nó vẫn như vậy mà không có thêm sức mạnh.

Điều này nghe có vẻ tuyệt vời về lý thuyết, nhưng vỏ bọc của Esquire là lần đầu tiên mọi người có thể đủ khả năng để hack một màn hình giấy điện tử. Chúng tôi đã lấy bìa vào Hack một phòng thí nghiệm ngày để tài liệu, kiểm tra và hack. Cuối cùng, chúng tôi đã tái chế nó vào một cái gì đó có lợi cho thấy bất kỳ cá nhân nào có thể xây dựng. Chúng tôi đã có tất cả các chi tiết về cách màn hình hoạt động và những gì nó cần để sử dụng nó trong các dự án của riêng bạn. Đọc về hack đồng hồ giấy điện tử của chúng tôi dưới đây.

Tiểu sử

Vỏ giấy E của Esquire trúng lớn trên mạng, nhưng nhanh chóng xuất hiện. Notcot có quét đẹp của bảng mạch và giấy điện tử. Khoa học phổ biến được đăng các hướng dẫn để đọc mã bằng pickit2. [Slaxter] xác minh rằng chip ảnh có thể được đọc và các cầu chì bảo vệ mã bị tắt. [Matt] Thao tác các tế bào giấy điện tử trực tiếp với hàn khéo léo và một arduino. Cho đến nay, đã không có rất nhiều việc quan tâm đến việc tái sử dụng giấy điện tử hoặc lập trình lại vi điều khiển hiện có.

Tấm giấy điện tử

Các tấm giấy điện tử thực tế, được sản xuất bằng mực điện tử, không thú vị. Mỗi bảng có một tập hợp các phân đoạn được xác định trước, 11 trên bảng mặt trước và 3 trên quảng cáo Ford phía sau. Đây không phải là một ma trận mà chúng ta có thể lập trình lại thành một người đọc điện tử. [Just_Mike] có một tập hợp tuyệt vời các bức ảnh cực kỳ cận cảnh của các hạt riêng biệt tạo nên từng phân khúc.

Mỗi phân đoạn giấy điện tử có một kết nối riêng lẻ và một kết nối được chia sẻ với các ô khác trên bảng điều khiển. Các phân đoạn trở thành màu trắng hoặc đen tùy thuộc vào hướng hiện tại áp dụng cho tế bào. Khi phổ biến là thấp, bất kỳ phân khúc nào cũng được kết nối cao sẽ làm tối. Khi phổ biến là cao, mỗi tế bào được kết nối với mặt đất sẽ rõ ràng. PCB sử dụng 16 volt từ năm pin 3.3Volt để chuyển các ô, nhưng [Slaxter] cho thấy 5Volts là đủ với dự án Arduino của mình.

Kiểm tra năng suất
Chúng tôi đã thực hiện một số quan sát về các thông số kỹ thuật vận hành giấy điện tử.

Đầu tiên, phải mất gần 0,5 giây để làm tối hoàn toàn hoặc xóa một ô. Trong video, bạn có thể thấy các trạng thái một phần được tạo bằng cách chuyển đổi giấy điện tử quá nhanh. Chúng tôi không chắc chắn về thời gian thay đổi tối ưu, nhưng trong khoảng 0,25 đến 0,5 giây dường như là mức tối thiểu.

Điều này cũng nêu câu hỏi về thời gian thay đổi tối đa. Nó có làm hỏng giấy điện tử để áp dụng dòng điện lâu hơn mức cần thiết? Có phải giấy điện tử tiếp tục tiêu thụ dòng điện miễn là nó được áp dụng, lãng phí pin? Chúng tôi đã chăm sóc đặc biệt trong mã của chúng tôi để trả về tất cả các đầu ra với mặt đất sau khi thay đổi để tránh dòng điện liên tục thông qua bảng điều khiển.

Xóa và làm tối cần phải được thực hiện riêng. Phải mất hai thao tác hoàn chỉnh để làm mới hoàn toàn màn hình; một để xóa các phân đoạn cũ, một để làm tối các phân khúc mới. Một lập trình viên thông minh sẽ nghĩ rằng họ có thể lưu một chu kỳ khi chỉ thêm hoặc xóa các mục và không làm cả hai. Điều này đúng ở một mức độ nào đó, nhưng thao tác liên tục của một tế bào mà không làm mới các tế bào liền kề gây ra màu sắc ‘creep’. Trong video, một nền nhấp nháy mà không cần cập nhật cho bất kỳ phân đoạn nào khác nhanh chóng thúc đẩy các phân đoạn không hoạt động đến trạng thái trung bình giữa tối và ánh sáng.

Bảng điều khiển

Người lái xe bao gồm một microchip pic12f629, hai thanh ghi 4094 dịch chuyển và một số thành phần hỗ trợ.

Bấm vào đây để xem sơ đồ pin kích thước đầy đủ của bảng xe máy E-Paper (PNG).

Pin

Esquire mời các vụ hack bìa của họ với gợi ý khá khập khiễng thay thế pin. Điều này có ý nghĩa, các vỏ bọc đã được vận chuyển trên toàn thế giới trong các thùng chứa lạnh để giúp kéo dài tuổi thọ pin. Ngay cả với nỗ lực đó, Esquire nói rằng pin sẽ kéo dài vài tháng.

Pin 1-5 đang nối tiếp và cung cấp dòng điện chuyển đổi 15-16Volt cho giấy điện tử. Pin thứ sáu cung cấp 3Volts cho PIC. Không có từ nào mà pin chết đầu tiên. Nếu bạn muốn ‘thay thế’ pin của mình, bạn sẽ cần phải khử bỏ các pin cũ và cung cấp nguồn cung cấp giấy điện tử 5-16Volt và cung cấp vi điều khiển 3Volt, tại các điểm được chỉ định.

Cuối cùng chúng tôi đã phải thay thế pin vi điều khiển của chúng tôi vì chúng tôi đã lạm dụng nó một chút trong quá trình phát triển. Một nút giữ pin với khoảng cách pin 20 mm sẽ phù hợp với các lỗ hiện có. MOUSER # 534-106 có thể sẽ hoạt động, nhưng điều này là chưa được xác nhận.

Trình đăng ký dịch chuyển 4094 (IC1, IC2)

Các thanh ghi ca chuyển đổi các điều khiển phân đoạn giấy điện tử ở 16 volt.

Hai chiếc 4094 IC đang thay đổi thiết lập các trình đăng ký thành dữ liệu Cascade từ IC1 sang IC2. Đăng ký dịch chuyển cơ bản này là một biến thể nhỏ trên 74HTC595 chúng tôi đã sử dụng trong bức tường graffiti của chúng tôi. Sự khác biệt chính là dòng nhấp nháy 4094 thường thấp và được kéo ngắn nhanh để đặt các giá trị mới lên các chân đầu ra. Chúng tôi quan sát thấy rằng 4094 yêu cầu long Đồng hồ và xung nhấp nháy. Điều này có thể là do mạch ổ lười giữa ảnh và 4094, hoặc chỉ là bản chất của loạt 4000.

Bản đồ đầu ra phân đoạn 4094

Ic.

Đầu ra

Địa chỉ nhà

Sự liên quan

1.

Q1.

0x01.

Front_box_symbol_dna.

1.

Q2.

0x02.

Front_box_guy.

1.

Q3.

0x04.

Front_box_fireworks.

1.

Q4.

0x08.

Front_on_the_west_coast.

1.

Q5.

0x10.

Front_three_hours_Later.

1.

Q6.

0x20.

Front_esquire.

1.

Q7.

0x40.

Front_box_Girl.

1.

Q8.

0x80.

Front_now.

2.

Q1.

0x100.

Front_begins.

2.

Q2.

0x200.

Front_21st_century.

2.

Q3.

0x400.

Front_background.

2.

Q4.

0x800.

Front_Common.

2.

Q5.

0x1000.

Back_Common.

2.

Q6.

0x2000.

Back_left.

2.

Q7.

0x4000.

Back_center.

2.

Q8.

0x8000.

LƯNG BÊN PHẢI

12f629.

Bấm vào đây để vẽ sơ đồ kích thước đầy đủ (PNG). Một PIC12F629 tám pin12F629 đã thúc đẩy các thanh ghi 4094 dịch chuyển kiểm soát từng phân đoạn giấy điện tử. Hai chân không được sử dụng (GP4, GP5).

Tính năng MCLR được bật bằng điện trở R8. Thiết kế không bao gồm một diode để bảo mật ảnh từ dòng điện lập trình 13Volt. Microchip khuyến nghị điều này, nhưng không có ICS nhạy cảm nào khác chia sẻ mạch để có thể nhà thiết kế cảm thấy một điện trở là đủ khả năng bảo vệ.

Ba chân lái dữ liệu, đồng hồ và các dòng nhấp nháy của 4094 (GP0, GP1, GP2). 4094 phải được giao thoa ở cùng một điện áp, nó chuyển đổi, 16 volt, do đó, ảnh sẽ chuyển các chân giao diện thông qua các bóng bán dẫn. Theo như chúng ta có thể nói, các đường điều khiển 4094 được kéo cao với một điện trở. Bức ảnh chuyển một bóng bán dẫn trên và nó kéo đường xuống đất. Giao diện cho 4094 là ngược. Một chân cao ảnh được xem là thấp trong thanh ghi thay đổi và thấp được xem là cao. Giao diện sẽ không hoạt động trừ khi đảo ngược.

Các chân lập trình được đưa đến một tiêu đề ở đầu PCB. Chúng tôi hàn tiêu chuẩn .1 “Header Pin vào các lỗ được cung cấp (mouser # 571-41033290). Hai chân lập trình, PGD và PGC, được chia sẻ với mạch điều khiển các thanh ghi ca. Chúng tôi đã có thể đọc thiết bị với trình gỡ lỗi ICD2. Mặc dù vậy, chúng tôi không thể lập trình lại nó, có thể là do trình điều khiển đăng ký thay đổi. Có bất kỳ cá nhân đã thành công? Bất kể, sắp xếp pin dùng chung khiến bạn không thể gỡ lỗi trong mạch trên thiết bị này.

Kết nối PIC PIN

Ghim

Tên

Sự liên quan

1.

Vdd.

+ 3.3Volts.

2.

GP5.

3.

GP4.

4

GP3.

MCLR (Chương trình VPP)

5.

GP2.

4094 nhấp nháy

6.

GP1.

4094 Đồng hồ (Đồng hồ chương trình)

7.

GP0.

4094 Dữ liệu (dữ liệu chương trình)

số 8

Vss.

Đất

Chạm vào bảng

Thật dễ dàng để gõ vào bảng và sử dụng nó với vi điều khiển yêu thích của bạn. Tất cả trừ một trong những tín hiệu giao diện cần thiết đã được đưa đến một tiêu đề. Dòng nhấp nháy có thể được khai thác thông qua phương tiện được chỉ định bởi mũi tên. Bạn không muốn ảnh can thiệp vào bộ điều khiển mới của mình, vì vậy hãy tháo nó hoặc hủy kích hoạt nó bằng cách cắt giảm mã PIN POWER.

Thư viện giao diện

Nỗ lực đầu tiên của chúng tôi để lái bảng liên quan đến máy chủ web nhỏ dựa trên Pic24F của chúng tôi. Nó rất tiện dụng, và PIC24F dễ dàng làm việc với. Chúng tôi đã hoàn thiện thư viện giao diện của chúng tôi trên MSP430 công suất thấp. Cả hai phiên bản đều nằm trong kho lưu trữ dự án (ZIP), nhưng phiên bản MSP430 của thư viện trưởng thành hơn rất nhiều.

Thư viện bao gồm một phần mềm Bit-Bang ROUTINE, các chức năng để giao thoa bảng và định nghĩa địa chỉ cho phân khúc và các dòng chung. Các tùy chọn trong Esquire_eink.h cho phép độ trễ bit-Bang và đặt độ dài của nó; Chúng tôi tìm thấy 4094 lười biếng và cần một xung đồng hồ dài. Hàm initbang () đặt hướng của các chân và phải được thay đổi để phù hợp với vi điều khiển của bạn. Gọi nó, hoặc đặt ghim IO của bạn để đầu ra ở nơi khác:

1.
banginit (); // Đặt chân bitbang để đầu ra

Hàm SetSeg () đặt các đoạn được truyền tối (1) hoặc Xóa (0):

1.
2.
setseg (front_box_guy + front_background, 1); // bộ (tối) những phân khúc này
setseg (front_21st_century, 0); // rõ ràng (ánh sáng) các phân khúc này

Hàm SetSeg () bao gồm độ trễ thay đổi màu được xác định bởi eink_delay trong esquire_eink.h. Khi kết thúc sự chậm trễ, nó trả về các chân thanh ghi ca với mặt đất. Chúng tôi muốn tránh làm hỏng giấy điện tử hoặc lãng phí pin, mặc dù chúng tôi không thực sự biết nếu điều này là cần thiết.

Một điều chúng tôi quan sát được về setseg () là thao túng các tế bào đơn gây ra các tế bào liền kề lùi về phía giữa. Chúng tôi đã phát triển hàm SetDisplay () để chống lại điều này bằng cách làm mới hoàn toàn màn hình mỗi lần. setDisplay () bao gồm một tạm dừng cho mỗi thay đổi, sau đó trả về đầu ra thanh ghi thay đổi xuống đất. Chỉ cần vượt qua sự sắp xếp phân khúc cho một màn hình được làm mới hoàn toàn:

1.
setDisplay (Front_esquire + Back_left); // XX Dark, mọi thứ khác rõ ràng

Bạn có thể truy cập các trình đăng ký dịch chuyển trực tiếp với hàm Bangit (), nhưng hãy xem xét trả về các thanh ghi dịch chuyển đầu ra thành ‘0’ sau khi thay đổi màu giấy điện tử hoàn tất. Bạn có thể làm hỏng giấy điện tử hoặc gây ra cống hiện tại quá mức nếu bạn để nó trên, nếu đó thực sự là ‘một điều’.

1.
2.
3.
bangit (0b1110000000000000); // tất cả các phân đoạn bảng mặt sau trên
Tạm dừng (); // Chờ thay đổi màu sắc
bangit (0x0000); // trả lại tất cả các đầu ra vào mặt đất

Để chuyển thư viện đến mi của bạnCroconTroller, chỉ cần kiểm tra các cấu hình mã PIN trong esquire_eink.h và chức năng thiết lập pin banginit () trong esquire_eink.c. Hãy nhớ rằng các hướng pin được đảo ngược bởi các bóng bán dẫn giao diện.

Đặt nó để sử dụng, đồng hồ giấy điện tử

Chúng tôi muốn làm một cái gì đó có lợi với bảng giấy điện tử tiêu dùng giá rẻ đầu tiên. Nó phải là một cái gì đó khá dễ dàng để nhiều người có thể tái chế một phần công nghệ tuyệt vời này. Chúng tôi không thể cưỡng lại việc làm những gì rất giống với công nghệ cũ: Làm đồng hồ. Sơ đồ, phần sụn và mẫu nghệ thuật nằm trong kho lưu trữ dự án (.zip).

Có rất ít phân khúc trên giấy điện tử mà chúng ta chỉ có thể đại diện một phần thời gian. Sáu phân khúc hiển thị thời gian, mỗi mụn nhạt để tiết lộ thời gian đến mười phút gần nhất trong giờ. Chúng tôi cũng flash kẹo mắt trên các phân khúc phi thời gian của bảng điều khiển. Đây là bezel tùy chỉnh mà chúng tôi đã tạo. BEAZEL này và một chủ đề để làm cho riêng bạn, được bao gồm trong kho lưu trữ dự án (ZIP). Chúng tôi in bezel của chúng tôi nhân đôi để mực được bảo vệ khỏi trầy xước.

Phần cứng

Chúng tôi đã được lấy cảm hứng từ các tính chất công suất thấp của giấy điện tử để sử dụng dòng vi điều khiển 16 bit của Texas Cụ của Texas. Với cấu hình lý tưởng, MSP430 rút ra rất ít năng lượng mà nó chỉ bị giới hạn bởi thời hạn sử dụng của pin. Chúng ta thậm chí có thể cung cấp cho các nhà thiết kế ban đầu chạy tiền của họ và xem liệu chúng ta có thể tạo ra một thiết bị năng lượng thấp hơn không.

Điều tốt nhất về MSP430 là bạn có thể nhận được một bộ với lập trình viên / gỡ lỗi và bảng đột phá chỉ với 20 đô la. Nó đi kèm với một trình biên dịch C miễn phí giới hạn ở 4k, nhưng F2013 chỉ có 2k bộ nhớ. Đây là một công cụ phát triển hoàn chỉnh, không có hàn liên quan. Tìm hiểu nhiều hơn về việc làm việc với MSP430 trong cách này.

Sơ đồ này cho thấy cách chúng tôi kết nối MSP430 của chúng tôi với bảng lái xe điện tử. Bấm vào đây để có phiên bản kích thước đầy đủ (PNG). Điện trở 47K, MSP430 và đèn LED (không hiển thị) được bao gồm trên bảng đột phá.

Chúng tôi đã thêm một tinh thể 32.768kHz để giữ thời gian (Q1). Thông thường, chúng tôi cũng sẽ thêm một số tụ điện để tạo thành bộ tạo dao động, nhưng MSP430 có các tụ điện điều chỉnh tích hợp trên P2.6 và P2.7.

Chúng tôi cũng đã thêm một nút giữa P1.4 và P1.2 (S1). Điện trở kéo lên bên trong trên P1.4 giữ nút cao và chúng tôi nối đất qua P1.2. Đây không phải là sự sắp xếp tốt nhất, có lẽ sẽ khôn ngoan khi kết nối P1.2 xuống đất.

Chúng tôi trượt bảng đột phá MSP430 qua các chân điện và mặt đất của tiêu đề lập trình. Bạn cũng có thể kết nối đồng hồ và ghim dữ liệu với tiêu đề, nhưng chúng tôi đã đưa ra quyết định định tuyến tất cả chúng từ các VIAs bên dưới. Hãy nhớ xóa ảnh để nó không can thiệp vào các tín hiệu từ MSP430.

Các bộ phận

Con số

Trị giá

Ốp giấy E Esquire

Bộ phát triển MSP430 EZ430

EZ430USB.

$ 20.

Pha lê 32.768khz

815-AB26T-32.768KHZ

$ 0,27.

Nút nhấn

642-MJTP1250.

$ 0,16.

Firmware.

Phần mềm đồng hồ được viết với phiên bản demo miễn phí của trình biên dịch TI Kickstart C của Ti / IAR được bao gồm với lập trình viên EZ430.

MSP430 là công suất rất thấp. Nó chỉ sử dụng 220UA ở 1 MHz, nhưng ít hơn 6UA khi ngủ. Điều quan trọng đối với tuổi thọ pin dài là giữ cho con chip ngủ nhiều nhất có thể. Mã đồng hồ của chúng tôi được viết với điều này trong tâm trí.

Chúng tôi sử dụng Timer_A với tinh thể 32.768kHz để tạo một sự gián đoạn hai lần mỗi giây. Mã kích hoạt tĩnh mạch đầu tiên định cấu hình các phân đoạn sẽ được hiển thị, sẽ gửi các giá trị này vào giấy điện tử, sau đó ngủ trong 0,5 giây tiếp theo. Trong khi MSP430 ngủ, tất cả các phân đoạn ‘TẮT’ đều có thời gian để xóa. Ngắt tiếp theo lật các dòng phổ biến theo cách khác với XOR cơ bản, xuất ra các giá trị và đi ngủ trong 0,5 giây nữa. Lần sau chu kỳ sẽ bắt đầu lại. Chúng tôi không bận tâm để thiết lập lại các thanh ghi ca đến vị trí ‘0’ vì việc Freshen thường xuyên trong Flux. Phân đoạn Creep không phải là một vấn đề vì chúng ta làm mới mỗi phân khúc mỗi chu kỳ.

Một nút nhấn kích hoạt một ngắt đã tiến hành thời gian đến 10 phút tiếp theo. Để đặt đồng hồ, hãy đợi cho đến khi thời gian là một khía cạnh trong 10 phút qua giờ và nhấn nút để hiển thị CORRE

Leave a Reply

Your email address will not be published. Required fields are marked *