ổ cắm zif 14 chân

Thiết bị logic lập trình phức tạp (CPLD) là một phần cứng thiết yếu trong kho công cụ của bạn. Như tên gọi cho thấy, bạn có thể lập trình các chip này để cung cấp các chức năng logic cần thiết. Điều này có thể là để thay thế các chip lỗi thời, hoặc đơn giản chỉ là một cách để học hỏi và thử nghiệm các công nghệ khác nhau. Còn cách nào tốt hơn để học hỏi ngoài việc sử dụng CPLD và tự mình thử nghiệm?
Tôi đã tạo một mô-đun CPLD để có thể cắm vào nhiều thiết bị, bao gồm cả các bảng mạch thử nghiệm không cần hàn, nhưng tôi đã làm sai. Có vẻ như không gian cắm có sẵn trên bảng mạch thử nghiệm không cần hàn chỉ là 1,1 inch. Tôi đã làm cho diện tích chân cắm rộng 1 inch, không còn chỗ cho một hàng dây ở cả hai bên. Ờm.
Nhưng hãy để tôi giải thích rõ hơn về những gì tôi đang làm. Tôi muốn tạo ra một hệ thống logic lập trình được, có thể lắp ráp thành bộ kit, dễ dàng hàn tại nhà, lập trình được trong mạch điện và hoạt động ở điện áp 3.3 hoặc 5 volt.
Để tạo ra một bộ linh kiện dễ hàn, tôi đã sử dụng một linh kiện CPLD cũ, cũng có sẵn các phiên bản 3.3V và 5V, và sẽ duy trì chương trình của nó bất kể nguồn điện. Bản thân mạch logic là một IC CPLD thuộc dòng Altera Max, có hai phiên bản, phù hợp với các bo mạch có 32 hoặc 64 macrocell. Macrocell là các khối xây dựng logic cơ bản được lập trình bằng các "thuật ngữ" logic và sau đó được kết nối với các macrocell khác thông qua các kết nối lập trình được.
Nhìn vào sơ đồ mạch, bạn có thể thấy nó không có nhiều thành phần: về cơ bản chỉ gồm CPLD, mạch lập trình trong mạch và bộ dao động điều khiển logic của CPLD.
Linh kiện này có tên gọi là EPM7032 và EPM7064, sử dụng đế chip dẫn nhựa 44 chân (PLCC), đôi khi được gọi là đế J do hình dạng chữ J của chân dẫn. Loại đế này có thể được cắm vào ổ cắm xuyên lỗ hoặc hàn trực tiếp vào mạch in (PCB).
Module này tích hợp bộ dao động, cho phép CPLD thực hiện các thao tác có trạng thái và tạo bộ đếm nhanh mà không cần xung nhịp ngoài. Nếu có xung nhịp ngoài, xung nhịp tốc độ cao trên module có thể được sử dụng để tạo sự kiện xung nhịp trên mỗi cạnh lên hoặc xuống của xung nhịp ngoài, và vẫn tuân theo các nguyên tắc của CPLD/FPGA, nghĩa là bạn nên sử dụng mạng xung nhịp toàn cục bên trong thay vì sử dụng chế độ "Không đồng bộ" để điều khiển đầu vào xung nhịp. Điện áp nguồn cung cấp định mức của bộ dao động này nằm trong khoảng từ 1,8 đến 5,5 volt.
Nếu bạn xem video, bạn sẽ thấy tôi thảo luận về sở thích cá nhân của mình trong việc xử lý chân "INH" trên bộ dao động; nói một cách đơn giản, sau khi kiểm tra xem bảng thông số kỹ thuật có hợp lệ hay không, tôi thường để nó ở trạng thái không kết nối.
Khi xử lý các chức năng như vậy, những lý do thoáng qua trong đầu tôi bao gồm việc tôi không thích kết nối trực tiếp các chân đầu vào với đường nguồn (nếu có thể). Nghĩa là, tôi thích sử dụng các điện trở mắc nối tiếp để hạn chế dòng điện trong các quá trình chuyển tiếp, ngay cả khi điều đó không cần thiết.
Qua nhiều năm, tôi đã gặp một số vấn đề trong quá trình sản xuất (với số lượng lớn), và đôi khi những việc như khởi động lại nguồn điện sẽ khiến các chân được kết nối trực tiếp với đường nguồn có điện áp cao hơn điện áp của chính chip, điều này là không tốt. Cuối cùng, nếu kết nối chân với đường nguồn thông qua một điện trở (điện trở nguồn hoặc điện trở nối đất), người ta có thể thay đổi ý định và sử dụng chân đó sau này. Điều này đặc biệt đúng với kinh nghiệm của tôi đối với các chân không sử dụng, chắc hẳn bạn cũng biết rằng những chân này không bao giờ được để hở hoặc không được kết nối. Bằng cách sử dụng điện trở kéo lên, bạn có thể kết nối tín hiệu và sử dụng chân cổng mà không cần cắt các đường mạch đồng.
Mạch lập trình được tạo thành từ đầu nối 10 chân và một vài điện trở. Nếu tất cả các điện trở đều là điện trở kéo lên, tôi sẽ sử dụng mạng điện trở, nhưng tiếc là một trong số chúng đã được nối đất.
Để lập trình một CPLD độc lập như vậy, cần có một thiết bị lập trình chuyên dụng. Điều này thì dễ nói đối với tôi, vì tôi thường có vài cái bên cạnh, nhưng nếu bạn không có, việc tìm mua cũng không quá khó khăn. Thiết bị "Altera USB Blaster" được chứng nhận có giá 50 đô la và có thể mua được từ Digikey và các nơi khác. Tôi có một vài bản sao từ Ebay, một trong số đó là bản sao hỗ trợ đồng thời Altera, Xilinx và Lattice. Có một dự án và mã nguồn trên Internet có thể được sử dụng để tạo ra bản sao của riêng bạn, tôi sẽ liệt kê nó trong danh sách các video có thể có cho dự án tạo bản sao thiết bị lập trình. Tôi cũng sẽ trình bày thiết kế mạch mở rộng (shield) mà trong đó bo mạch chủ, Arduino, PIC, v.v. có thể được lập trình.
Phần mềm cần thiết để biên dịch và lập trình CPLD có sẵn miễn phí từ Altera, nhưng linh kiện cũ này yêu cầu phiên bản 9.1. Tin tốt là đó lại là phiên bản cũ mà tôi thích nhất. Nó có một bộ phân tích thời gian trực quan, nhưng đã bị loại bỏ trong phiên bản sau này.
Mạch in (PCB) có thiết kế hai mặt đơn giản, miễn là bo mạch vừa khít, tôi thường dùng đồng để nối đất và đôi khi là cấp nguồn. Đôi khi quá trình đổ đồng bị gián đoạn đến mức có thể gây ra sự cố hoặc cho ra kết quả không đẹp mắt, vì vậy việc đổ đồng lại là một công cụ, nhưng cần phải được thực hiện cẩn thận.
Ngày nay, nhiều (nếu không muốn nói là hầu hết) phần mềm CAD đều có chế độ xem 3D của sản phẩm cuối cùng, mặc dù độ chính xác của hình ảnh chỉ chính xác bằng độ chính xác của các mô hình 3D được sử dụng để thể hiện các bộ phận. Ở đây bạn có thể thấy nơi tôi đã chọn mô hình 3D cho ổ cắm 44 chân, đầu nối lập trình và bộ dao động. Dưới đây là một số phần mềm 3D mà tôi thích sử dụng:
Nhiều công ty cũng có mô hình 3D của các linh kiện của họ. Molex chỉ là một ví dụ về một công ty đã làm tốt trong lĩnh vực này.
Lỗi tôi mắc phải không ảnh hưởng đến chức năng, ví dụ như về mặt thẩm mỹ, và đó cũng không phải là vấn đề chính, đó là việc nó không phù hợp với một mạch thử nghiệm không cần hàn đơn lẻ.
Ngay khi nghĩ đến việc chia sẻ thiết kế này với ai đó, tôi đã lập tức không hài lòng với các ký hiệu sơ đồ mạch của CPLD và sơ đồ chân của đầu nối 40 chân, cũng như kích thước tổng thể của nó. Tôi đã lấy một ký hiệu đầu nối hai hàng 40 chân và điều chỉnh nó cho phù hợp với kích thước 1 inch, nhưng số chân không phải là 1, 2, 3, 4... mà lại được đánh số 1 ở bên cạnh giống như gói DIP, 3, 5, 7... giống như các đầu nối cáp dẹt. Do đó, đây là một sơ đồ không trực quan, gây khó khăn trong việc xác định cách kết nối với mô-đun và khắc phục sự cố.
Tương tự, việc gán chân CPLD khá khó hiểu, và tôi đã sử dụng một bộ tiện ích dựa trên Ngôn ngữ Mô tả Quét Ranh giới (BSDL) để tạo ký hiệu. Hầu hết các nhà cung cấp lớn đều có sẵn các tệp BSDL cho các linh kiện chính của họ, cho phép bạn tạo ký hiệu và gói (bán) tự động. Giống như bất kỳ công cụ tự động hóa nào, nó cần được xem như một công cụ và có thể cần tinh chỉnh thêm để đạt được kết quả tốt nhất. Trong trường hợp này, tôi để nó liệt kê các chân theo thứ tự bảng chữ cái, điều này gần như ngẫu nhiên khi theo dõi các chân trên bo mạch. Tôi chỉ có thể nói rằng tôi đã rất lo lắng vào ngày hôm đó.
Bạn sẽ phải trả giá cho những lối tắt này sau này. Khi tôi chỉnh sửa mô-đun này, tôi sẽ xác định và bố trí vị trí chân sao cho phù hợp với chính linh kiện đó, để việc xác định vị trí đặt đầu dò máy hiện sóng dễ dàng như nhìn vào ký hiệu trên sơ đồ mạch.
Khi sử dụng mạch in, có những cải tiến khác chủ yếu mang tính thẩm mỹ hoặc hữu ích. Đèn báo chân số 1 cần phổ biến hơn trong nhiều loại bao bì, và tôi luôn thích một điểm nối đất đơn giản để kết nối dây nối đất của máy hiện sóng hoặc dây đo điện áp. Tôi có thể bổ sung điều này bằng cách thêm một đầu nối hai chân để cấp nguồn và nối đất trực tiếp vào bo mạch thay vì kẹp vào các chân phía dưới.
Trước khi sửa đổi mạch in, tôi muốn đảm bảo nó hoạt động đúng cách cả về mặt vật lý và thẩm mỹ. Sau khi bật nguồn và xác nhận bộ dao động hoạt động bình thường, tôi đã cắm bộ lập trình. Mặc dù phiên bản 3.3V mới hơn phần mềm lập trình, nhưng nó vẫn nhận diện được CPLD và hiển thị nó là thiết bị "không xác định".
Tiếp theo, tôi đã tạo một bộ đếm trong Quartus và gán số cho các chân. Quá trình biên dịch và tải xuống nhanh chóng cùng với chức năng bộ đếm được hiển thị trên máy hiện sóng xác nhận rằng thiết kế này khả thi.
Mạch kiểm tra nhanh bằng Verilog rất đơn giản. Mã nguồn được liệt kê bên dưới. Bạn có thể tải xuống tệp ZIP chứa sơ đồ mạch và mạch kiểm tra Verilog dưới dạng dự án Quartus II (yêu cầu phiên bản 9.1).
Như tôi đã đề cập, tôi sẽ thực hiện bản sửa đổi thứ hai của mạch in để chú trọng hơn đến các chi tiết cần thiết khi chia sẻ thiết kế hoặc thực hiện bất kỳ việc khắc phục sự cố nào. Vì tôi cần đặt chiều rộng của đầu nối phía dưới là 0,9 inch hoặc nhỏ hơn, tôi có thể tiếp tục đặt nó ở mức 0,6 inch, đây là kích thước tiêu chuẩn của gói DIP "rộng". Làm như vậy có nghĩa là các chân phía dưới sẽ nhô ra khỏi diện tích đế cắm CPLD. Tôi sẽ không làm điều này trong điều kiện sản xuất vì nó được lắp ráp thủ công vào thời điểm đó, nhưng một trong những mục tiêu là tạo ra một bộ dụng cụ hàn thủ công. Sự thỏa hiệp của việc hàn thủ công là bộ dao động cần phải nằm trong vỏ gắn bề mặt SMD, phiên bản xuyên lỗ rất lớn và thường không hỗ trợ dải điện áp mà tôi muốn.
Liệu có thể sử dụng các mô-đun này để xây dựng một máy tính đơn giản hoàn chỉnh không? Tôi nghĩ tôi cần thêm bộ nhớ.
Haha... đúng vậy, nó phụ thuộc vào loại máy tính nào. Tuy nhiên, các vi điều khiển/máy vi tính "thực sự" bị ảnh hưởng bởi "liên kết chân" của mô-đun, có nghĩa là bạn không thể lấy đủ thuật ngữ từ mô-đun để làm bất cứ điều gì hữu ích.
Tôi đã tạo ra một bộ điều khiển chế độ và thời gian quay phim NTSC hoàn chỉnh với kích thước 64 bit, vì vậy không cần bộ xử lý.
Ngôn ngữ Verilog cấu trúc và HDL được sử dụng trong cuốn sách "Nand ​​to Tetris" về cơ bản là giống nhau.
Tại sao lại cần các chi tiết xuyên lỗ? Hàn linh kiện 0805 rất dễ! Đây là thời điểm thích hợp để mọi người đam mê chế tạo học kỹ năng này.
Nếu tôi làm cho đế cắm phía trên chồng lên các chân được hàn từ phía dưới, thì tôi có thể sử dụng "6 tâm (mô phỏng chip 40 chân)" hoặc đường chéo, v.v. Điều này sẽ hoàn toàn là hàn thủ công các linh kiện để hàn các chân phía dưới. Đế cắm phía trên nằm phía sau các chân.
Nhưng việc hàn từ phía dưới rất khó đối với người mới bắt đầu. Khi tôi hàn các chân cắm cho mạch in của bảng mạch thử nghiệm (những bo mạch chuyển đổi SMD giá rẻ mà bạn có thể mua trên eBay rất phù hợp để tạo mẫu), tôi cắm các chân cắm vào bảng mạch thử nghiệm, sau đó đặt mạch in lên trên, và sau đó tôi có thể hàn dễ dàng. Nó rất phù hợp với bảng mạch thử nghiệm. Nếu bạn cần hàn từ phía dưới, thì thậm chí còn khó hơn.
Nếu CPLD nằm ở giữa (có thể dễ đấu dây hơn), nó có thể được lắp đặt theo đường chéo mà không chồng chéo lên nhau, có 4 hàng, hoặc CPLD có thể nằm ở một bên:
Cảm ơn bạn về lời khuyên cắm đầu nối vào bảng mạch thử nghiệm trước khi hàn. Mạch của tôi hơi không ổn định.
Vậy còn cách sử dụng các chân DIP trên một đầu của bảng mạch thử nghiệm và kiểu "dongle" của ổ cắm chip ở đầu kia thì sao? Chip có thể được treo ở đầu bảng mạch thử nghiệm. Việc đi dây sẽ khá chật chội.
|####### ******************** |. Vâng, tôi đã quyết định sử dụng phiên bản "miễn phí" của Altera, giống như Xilinx và Lattice cũng có các phiên bản "miễn phí". Tôi cần hoàn tất quá trình trao đổi với Al Williams để hiểu rõ tất cả các hỗ trợ mã nguồn mở, bao gồm cả các thuộc tính cụ thể của dòng thiết bị. Tuy nhiên, tôi đã làm được khá nhiều việc với phiên bản miễn phí.
Vâng, tôi tin là bạn đang chỉ ra rằng CPLD chồng lấn với các chân cắm. Nếu tôi hiểu đúng, đây có thể là phiên bản 2. Khi thiết kế cho sản xuất (hàng loạt), tôi luôn dị ứng với bước "lắp ráp hàn thủ công" vì chúng chồng lấn (thực ra là các chân hàn ở phía không có linh kiện). (Đây đã là một linh kiện được hàn thủ công rồi) nhưng đây chỉ là một bộ kit nhỏ, không phải là thiết kế hướng đến sản xuất hàng loạt. Tôi chỉ có một số thói quen khó bỏ ở tuổi này thôi. :)
Tôi nghĩ một bo mạch hình chữ T với CPLD và các linh kiện thụ động, có phần chữ T rộng sẽ rất hữu ích khi gắn vào cạnh của bảng mạch thử nghiệm. Một thiết kế tương tự như Adafruit RasPi T-Cobbler (http://www.adafruit.com/products/2028). Điều này sẽ giúp tận dụng tối đa diện tích của bảng mạch thử nghiệm.
Đáng tiếc là việc ngừng sản xuất sẽ hạn chế nghiêm trọng việc sử dụng nó trong các dự án cá nhân, giống như tất cả các máy tạo hàm dựa trên XR2206 và ICL8038.
Ý tưởng thú vị. Tôi thích hai con chip này. CPLD không hề lỗi thời, chỉ là cách mua rẻ hơn ở mức 3.3V thôi.
Về phần "những điều vô lý" của bạn... bạn thực sự không cần phải tạo một sơ đồ mạch mới để đặt nó lên bảng mạch thử nghiệm. Chỉ cần đặt dây lên bảng mạch thử nghiệm trước, rồi sau đó đặt linh kiện CPLD lên dây. Hoặc, nếu bạn có thể tháo các dải nguồn và nối đất ra khỏi một trong hai bảng mạch, hãy sử dụng 2 bảng mạch thử nghiệm.
Về Altium và Eagle. Bạn đã cân nhắc KiCad chưa? Nó không có bất kỳ hạn chế nào khiến bạn phải thích Altium hơn Eagle, và theo mặc định nó sẽ tạo ra lỗi DRC cho tất cả các chân không được kết nối. Nếu bạn thực sự muốn mở một chân, bạn phải tự khai báo. (Có thể chỉ dành cho đầu vào, không phải đầu ra, và điều này chưa được kiểm tra). Một tính năng tuyệt vời khác là nó rất dễ học. Tôi chỉ mất một buổi chiều và cuốn hướng dẫn sử dụng tuyệt vời đã giúp tôi bắt đầu.
Tôi thích loại SMD (loại lớn hơn) hơn loại xuyên lỗ. Chúng dễ sử dụng hơn. Bạn không cần phải xoay mạch in liên tục. (Đã từng xảy ra một số lỗi ngớ ngẩn do việc lật ngược mạch...). Và bạn không cần phải cắt chân của điện trở. Khi chia sẻ một thiết kế, nhiều loại linh kiện có thể được đặt thuận tiện trên cùng một mạch in hoặc trên cùng một linh kiện. Điện trở SMD xuyên lỗ. (Tuy nhiên, việc bố trí mạch sẽ phức tạp hơn một chút).
Tôi đã sử dụng tài liệu "KiCad Getting Started" ở định dạng PDF. Phiên bản cũ tôi dùng có 29 trang, còn phiên bản mới nhất có 52 trang. Bạn có thể tìm thấy nó trong các hướng dẫn khác (bao gồm cả liên kết video): http://kicad-pcb.org/help/tutorials/
Tôi biết rằng [Chris Gemmell] từ Hackaday và The Amp Hour đã thực hiện một loạt bài hướng dẫn về KiCad tại địa chỉ http://kicad-pcb.org/help/tutorials/
KiCad có thể hữu ích, để tôi xem điều gì sẽ xảy ra ở phiên bản Rev 2. Cảm ơn những gợi ý của bạn. Các đầu vào không được kết nối là điều tốt cho DRC (ERC), và đối với các đầu nối và những thứ khác giữ chúng ở dạng mềm hoặc IO, hầu hết các thông báo ngắt kết nối CAD thường có thể tránh được.
Chạy thử nhanh và cắm đầu nối vào một bảng trống, chạy chú thích và kiểm tra quy tắc thiết kế (DRC). Nó báo lỗi DRC cho từng chân. Tuy nhiên, việc đánh dấu các chân không được kết nối đã biết rất đơn giản.
Đặt thành chế độ thụ động. Tôi phải tìm kiếm (Chỉnh sửa linh kiện -> Chỉnh sửa bằng trình chỉnh sửa thư viện). Trình chỉnh sửa thư viện sẽ mở và tải linh kiện của bạn trong một cửa sổ riêng biệt, bạn có thể kiểm tra hoặc thay đổi bất kỳ phần nào của linh kiện. Linh kiện đã thay đổi có thể được lưu hoặc cập nhật trong sơ đồ của bạn. Điều này giúp việc thay đổi linh kiện trở nên rất dễ dàng. Tôi không quan tâm nhiều đến thư viện. Ví dụ, nếu bạn sử dụng cpld, bạn muốn gán tên có ý nghĩa cho các chân. Quan trọng hơn, có một giao diện tốt để thiết kế các linh kiện của riêng bạn.
Trong trình kiểm tra quy tắc điện (ERC) của KiCad, các chân "không kết nối" là một loại chân khác với "chân thụ động", và tất cả các chân "không kết nối" sẽ tạo ra lỗi. Cách hoạt động của ERC có thể dễ dàng được điều chỉnh theo sở thích của bạn: Công cụ -> Trình kiểm tra quy tắc điện -> Tùy chọn.


Thời gian đăng bài: 18/11/2021