Trong bài này, mình sẽ hướng dẫn đọc Datasheet của một linh kiện điện tử bất kì, đây là một kĩ năng rất quan trọng, thế nhưng trong các trường đại học hay ngay cả trên mạng cũng không có hướng dẫn gì về vấn đề này.
Để trở thành một kĩ sư điện tử, hay lập trình chúng ta luôn luôn phải sử dụng kĩ năng này, vậy hãy cùng mình tìm hiểu về Datasheet nhé!
Datasheet là gì?
Datasheet (hoặc data-sheet, spec sheet) là loại tài liệu mô tả tổng quan hiệu năng và các thông số kỹ thuật của sản phẩm một cách chi tiết để khách hàng hiểu rõ công năng của sản phẩm trước khi mua.
Thông thường người xem datasheet là những kỹ sư, nhà quản lý kỹ thuật của tổ chức, cũng có thể là sinh viên nghiên cứu.
Datasheet là bắt buộc phải có với các sản phẩm công nghệ như linh kiện điện tử, máy móc, nguyên vật liệu, subsystem (như hệ thống điện), và đặc biệt là các phần mềm – software.
Tại sao chúng ta cần đọc Datasheet
Trong phạm vi bài viết này chúng ta sẽ xét tới Datasheet của linh kiện điện tử. Và vì sao cần đọc nó.
Datasheet lưu giữ toàn bộ các dữ liệu liên quan tới linh kiện đó như công dụng, tính năng, cách điều khiển, điện áp tiêu thụ, công xuất … vân vân và mây mây. Nói chung chỉ cần đọc qua datasheet là có thể rõ ràng được mọi việc.
Kĩ sư phần cứng có thể đọc datasheet để chọn linh kiện phù hợp với yêu cầu của mạch, xem các example schematic để vẽ mạch nguyên lý, xem recommend layout để khi vẽ mạch in không xảy ra lỗi.
Kĩ sư phần mềm (firmware) có thể đọc datasheet để hiểu các protocol interface ( Giao thức) giao tiếp với IC, cách tổ chức bộ nhớ và thanh ghi trong IC. Từ đó lập trình và điều khiển được IC đó
Vậy tại sao chúng ta Lười đọc Datasheet
Chẳng phải nói quá nhưng nếu bạn đã có kinh nghiệm lập trình hay thiết kế dựa trên datasheet, bạn chẳng cần phải đi tìm các nguồn hướng dẫn khác, các tutorial, hay đi xin các thư viện của người khác.
Mà tự bạn cũng đã có thể tự thiết kế và lập trình con IC đó dựa trên Datasheet rồi.
Có 3 lý do cơ bản khiến bạn lười đọc Datasheet
Lười đọc tiếng anh
Lý do tại sao các công ty lớn, các trường đại học lớn luôn có một yêu cầu là TOEIC hay IELTS trên một ngưỡng nào đó. Vì thực sự khi làm điện tử hay lập trình, bạn bắt buộc phải biết tiếng anh.
Không cần phải nói chuyện với người bản xứ vanh vách, hay cưa đổ một em tây nào đó, mà chỉ cần kĩ năng dịch (hoặc dùng google dịch) của bạn khá là được. \
Và cái quan trọng đó là không bị “Ngại” khi nhìn các tài liệu tiếng anh.
Khi tất cả những thứ bạn chỉ cần gõ là Tên linh kiện + datasheet trên google, và ngồi dịch cái tài liệu đó. Các bạn chọn cách tìm bằng keyword: Hướng dẫn điều khiển ABC sử dụng vi điều khiển XYZ, rồi lặn ngụp trên đó để tìm dc bài viết phù hợp.
Mình không nói các tutorial đấy không có tác dụng, nhưng nó nên chỉ hữu dụng với những người mới bắt đầu, khi đã quen với việc lập trình, các bạn nên nâng level lên bằng cách tự đọc Datasheet, tài liệu của hãng, hay datasheet. Bởi vì dù tutorial có viết chi tiết đến đâu cũng không thể bằng người tạo ra chúng viết được.
Không biết cách đọc Datasheet như thế nào
Bạn thấy thật mệt mỏi khi mỗi khi sử dụng một linh kiện mới lại phải ngồi dịch cả mấy chục trang tiếng anh phải không. Đôi khi cả trăm trang, mà bạn không biết được phần nào có ích phần nào không?
Đấy là do bạn chưa tiếp xúc nhiều với Datasheet mà thôi. Thực tế chúng đều có một format, bạn chỉ cần nắm rõ được cái format đấy, tìm đúng phần mình cần biết là được.
Một kĩ sư phần cứng thiết kế mạch in thì cũng không cần quan tâm con IC đó giao tiếp như thế nào với vi điều khiển.
Tương tự một kĩ sư phần mềm (firmware) cũng không cần quan tâm điện áp, công xuất tiêu thụ, cách vẽ schematic của linh kiện đó ra sao.
Đương nhiên nếu bạn là 1 full stack engineer thì nên đọc hết nhé. (nói vậy cho oai chứ mình không rõ ngành nhúng có định nghĩa full stack là gì ko nữa).
Ngay phần dưới đây mình sẽ giúp các bạn tìm hiểu về cấu trúc và cách đọc Datasheet sao cho đỡ mất thời gian nhất.
Không biết áp dụng ra sao trong điện tử và lập trình
Thường thì các bạn khi đọc blog của mình có thể là đang còn “Non và Xanh”, vậy nên tư duy lập trình chưa hình thành hoàn toàn trong bạn. Vậy nên khi tiếp xúc với một nồi kiến thức từ Datasheet tự dưng lại cảm thấy ngộ độc.
Bởi vì:
- Bạn chưa hiểu rõ về các protocol interface (giao thức) trong nhúng, chưa hiểu rõ vi điều khiển hoạt động ra sao.
- Bạn chưa bao giờ vẽ một mạch điện tử, hay tự thiết kế một mạch riêng
Vậy nên để có thể đọc Datasheet và làm việc với nó, thì tiên quyết đó là các bạn phải đã làm quen với MCU rồi, đã thành thạo các giao thức trong nhúng, đã từng vẽ một số mạch in.
Mà những kiến thức đó, các bạn nên bắt trước từ A tới Z, sau khi nắm vững mới tự mình thay đổi theo ý thích, đó mới là cách học lập trình đúng đắn.
Mình đã có những bài viết tổng hợp cho những bạn mới bắt đầu, tham khảo tai link:
Khi đã có trong mình tư duy lập trình, tư duy thiết kế mạch. Thì những kiến thức trong Datasheet mới thực sự có ích và quan trọng
Hướng dẫn đọc Datasheet linh kiện điện tử
Nói vã bọt mép nãy giờ chắc các bạn đã hiểu tầm quan trọng của việc đọc Datasheet rồi chứ. Không lòng vòng nữa đây là cách đọc datasheet hiệu quả nhất.
Định dạng chung của Datasheet
Mô tả chung – Overview and Description
Đây là phần nói khái quát về con linh kiện đó, nó dùng làm gì, tính năng gì nổi trội. Phù hợp với ứng dụng như thế nào. Khi chọn linh kiện cho một dự án, các bạn phải đọc kĩ phần này để biết nó có phù hợp hay không nhé!
Tính năng chính – Main feature
Mô tả chi tiết các tính năng của linh kiện đó. Đi kèm ngay saunó thường sẽ có Bảng định nghĩa về điện áp, dòng diện, công xuất… và các thông số quan trọng của linh kiện.
Sơ đồ khối – Block Diagram
Mô tả tổng quan về kiến trúc của IC đó, nếu là các linh kiện công xuất thì phần này có thể bị bỏ qua
Định nghĩa chân – Pin Descriptions
Định nghĩa các chân, mô tả chức năng và diện áp cấp vào chân đó
Giao thức điều khiển – Interface
Mô tả cách thức giao tiếp với vi điều khiển, phần này chỉ có các IC hay linh kiện có thể giao tiếp mới có nhé!
Có 2 mục rất quan trọng khi giao tiếp với bất kì linh kiện đó chính là:
- Timing Sequence: hay dạng sóng, bất kì giao tiếp nào cũng đều là sự dao động 0 – 1 trên các dây dẫn, vậy nên các bạn phải dựa vào dạng sóng nó tạo ra để lập trình cho đúng thời gian. Thông thường mỗi một dạng sóng sẽ đi kèm với một bảng Timing cho các khoảng thời gian cần duy trì mức 0 và 1. Nhưng trong ví dụ này, chuẩn giao tiếp là I2C nên không có
- Frame: hay khung truyền, cấu trúc gói tin, chính là định nghĩa việc chúng ta truyền cái gì sang cho linh kiện đó.
Cách tổ chức bộ nhớ, thanh ghi – Register
Mô tả bản đồ bộ nhớ của linh kiện, vị trí các thanh ghi. Phần này cũng chỉ có các IC có thể giao tiếp mới có nhé.
Sau khi học được cách truyền như thế nào, thì phải học cách truyền vào đâu. Truyền sai địa chỉ thì chắc chắn là linh kiện đó không chạy hoặc chạy sai đó.
Cách đóng chân và Kích thước – Package and Dimension
Mô tả cách đóng chân (package) theo chuẩn nào SOIC, SSOP, DIP, SMA….. Sau đó là khoảng cách giữa các chân, kích thước thực tế của linh kiện.
Mạch nguyên lý – Typical Application
Phần này sẽ có các mạch nguyên lý liên quan tới từng ứng dụng cụ thể cho linh kiện đó, nếu linh kiện đó chỉ có 1 công dụng thì chỉ có một mạch. Khi làm mạch nguyên lý đó, chắc chắn linh kiện đó sẽ hoạt động
Mạch in – Layout Recommend
Phần này có thể có hoặc không, thường sẽ có tại các chip driver công xuất động cơ, tải công xuất lớn … Sẽ giúp các bạn không mắc các lỗi khi layout linh kiện này trên mạch. Giúp chúng hoạt động tốt hơn.
Trên đây là những hạng mục cơ bản trong một Datasheet, có thể tùy linh kiện sẽ có thêm hoặc bớt các phần khác nhau. Nhưng về cơ bản các phần chính sẽ không khác biệt nhau là mấy.
Kĩ sư phần cứng cần đọc gì ở Datasheet
Nếu bạn là một kĩ sư phần cứng bạn phải đọc rõ các phần như:
- Mô tả chung: chọn linh kiện theo công dụng
- Tính năng chính và bảng đo: Xem các thông số về điện áp, dòng điện, công xuất có đáp ứng được không
- Mạch nguyên lý: Giúp vẽ mạch nguyên lý không bị sai
- Mạch in: Giúp việc layout không xảy ra lỗi
- Sơ đồ chân: Tạo thư viện nguyên lý
- Cách đóng chân: Giúp tạo thư viện linh kiện
Kĩ sư phần mềm cần đọc gì ở Datasheet
Nếu vạn là một kĩ sư phần mềm bạn phải đọc rõ các phần như:
- Sơ đồ khối
- Sơ đồ chân: Để cắm KIT khi trong giao đoạn chưa làm mạch in
- Interface: Cách giao tiếp với linh kiện đó
- Memory map, register: Địa chỉ đọc ghi các thanh ghi, lệnh …
Cách tìm Datasheet trên mạng
Các bạn có thể vào các trang như alldatasheet, datasheetcataloge …. để search hoặc đơn giản lên google search theo cú pháp: Tên linh kiên + Datasheet + type:pdf
Lúc này google sẽ hiển thị tất cả các kết quả dạng pdf. Nếu linh kiện đó có thể giao tiếp với MCU các bạn có thể cho thêm từ manual để ra kết quả chính xác nhất nhé.
Kết
Đọc Datasheet là một công việc khá nhàm chán, đôi khi còn hơi nhức đầu. Thế nhưng để trở thành một kĩ sư nhúng giỏi, chúng ta cần phải rèn luyện thường xuyên, cách tốt nhất đó là làm tự các dự án hay bài tập lớn. Khi đó kĩ năng đọc datasheet của bạn sẽ tăng lên rất nhiều
Nếu bạn thấy bài viết này có ích hãy để lại bình luận và đừng quên ra nhập Hội Anh Em Nghiện Lập trình nhé.
rất hay, rất cần những bài viết tương tự như này
Cám ơn bạn đã ủng hộ.
Hay quá anh ơi
Cám ơn em 😀
Thank you !
you’re welcome
ước gì ngày xưa hồi mới vào ngành cũng có người viết cho như này mà đọc, rất bổ ích bạn ơi
Haha, một tips nho nhỏ nhưng lại rất hữu ích