01/10/2018, 01:14

Bắt đầu học lập trình nhúng như thế nào?

Dạ em chào các anh, hiện tại em đang muốn theo Embedded System nhưng trên trường em không có cái ngành này, nó chỉ có bên tự động hóa của khoa điện mà em lại bên CNTT nên em lên đây nhờ vả các anh tư vấn cho em những bước đầu tiên( tài liệu căn bản, nơi học … ), mong được các anh giúp đỡ, em cảm ơn rất nhiều

Killua viết 03:29 ngày 01/10/2018

Học cái này có phải thật sự giỏi mới sống đc ko nhỉ , mình thấy nhiều người bảo ngành này nó vậy , cũng định theo mà sợ ko theo đc , mà học nhúng cũng phải có nền điện tử vững nữa , mình thấy làm theo mạch đt nhiều

Phạm Hoàng nam viết 03:21 ngày 01/10/2018

Anh ơi anh còn ít thông tin nào không bày cho em với

Killua viết 03:15 ngày 01/10/2018

@Duong_Act Hỏi anh này nè bạn , Anh cho e hỏi là nhúng thì kiến thức điện tử có cần thực sự giỏi mới nên theo ko ạ , nhất là nhúng mà làm cả mạch điện đó ạ

Nguyen Ba Duc viết 03:29 ngày 01/10/2018

Bạn lên trang codientu.org sẽ rất hữu ích cho chuyên ngành này

Konosuke viết 03:24 ngày 01/10/2018

Mình nghĩ là bạn nên bắt đầu từ những cái đơn giản nhất. Làm 1 cái gì đó hay ho có liên quan đến vi điều khiển và cảm biến. Lúc khởi đầu có thể bạn xây dựng dựa trên những bo mạch có sẵn như arduino chẳng hạn. Sau đó trình cao hơn có thể tự làm mạch, code trực tiếp trên vi điều khiển. Bạn có thể tham khảo các project trên trang này http://arduino.vn/.

Văn Dương viết 03:16 ngày 01/10/2018

Thực sự giỏi thì cần rồi. Nhưng mà ở mức nào thôi. Bởi vì nhúng nó cũng rất rộng, có lĩnh vực cần hiểu biết về điện tử rất khủng nhưng có phần thì chỉ cần bình thường thôi. Ví dụ :

Lập trình vi điều khiển : Cần biết layout mạch điện tử, phân tích, xây dựng được mạch điện tử, phải đọc được datasheet của chip (dễ thôi), biết lập trình C. Arduino (AVR) là phần nhỏ trong bọn này. Ngoài ra còn có PIC, 8051, MSP,ARM…
Lập trình FPGA,CPLD…: Phần này là kết nối các khối logic thành một con chip nên cần hiểu biết rất sâu về logic, kỹ thuật số, chức năng các khối logic, phép toán và phép biến đổi logic. Đây có lẽ là phần khó nuốt nhất trong lập trình nhúng. Phần này có mấy con chip FPGA như Cylone II, Cylone III…
Lập trình máy tính nhúng : Mình không biết gọi là gì nên gọi vậy. Đây là phần cần hiểu biết về điện tử ít nhất. Bởi vì phần cứng thường có sẵn rồi. Sẽ đổ một cái OS nho nhỏ lên và nó che đi gần hết phần điện tử rồi. Phần mình là viết ứng dung từ các APIs do OS cung cấp. Điển hình cái này là mấy cái router, wifi, modem, Rasberry Pi…

Phú Lê viết 03:29 ngày 01/10/2018

Câu trả lời rất hay ạ. không biết anh học ngàh nào

Hà Vĩnh Phú viết 03:20 ngày 01/10/2018

FPGA là thiết kế vi mạch mà, liên quan gì nhúng

Phạm Hoàng nam viết 03:18 ngày 01/10/2018

Chà nhiều thông tin quá, em cảm ơn các anh đã giúp đỡ rất nhiều cho em, qua đây em cũng xin các anh cho em ít thông tin để bước vào nó, nếu có tài liệu hoặc tựa sách nào đó nói về tổng quan thì hay qua ạ

Văn Dương viết 03:28 ngày 01/10/2018

Bạn tìm hiểu thêm đi. Nó là nhúng.
Thiết kế vi mạch là thiết kế cấu tạo một con IC để từ bản thiết kế này chế tạo ra những con IC thực tế (chế tạo từ cát và các chat bán dẫn khác).
FPGA là một con chip tích hợp nhiều cổng có thể lập trình. Nó có thể dung để mô phỏng một thiết kế của một IC trước khi sản xuất thử. Nhưng đa phần nó dùng luôn FPGA để tạo ra một con chip riêng nếu số lượng yêu cầu ít không có mục đích sản xuất đại trà để thương mại.

Phạm Hoàng nam viết 03:19 ngày 01/10/2018

Dạ dạ em cảm ơn anh nhiều, để em tìm hiểu thêm

Văn Dương viết 03:26 ngày 01/10/2018

Đầu tiên bạn sẽ học ngôn ngữ C.
Học các từ khóa (int, unsigned, define, include, void…).
Học các cấu trúc (if-else, while, for,…);
Sau khi đã thuộc thuộc thì có thể chọn 1 con chip và làm thử (PIC hoặc AVR, STM32F10x- đề nghị PIC16F887 hoặc ATMEGA32 vì nó dễ). Bài đầu tiên sẽ là LED_BLINK (làm cho 1 cái đèn led nhấp nháy). Cũng đơn giản thôi nên không cần căng thẳng quá

Phạm Hoàng nam viết 03:27 ngày 01/10/2018

Dạ em cảm ơn anh nhiều

viết 03:23 ngày 01/10/2018

Bạn có thể tự học. Có nhiều khoá chất lượng dạy online từ các trường đại học hàng đầu thế giới trên 3 nguồn, đó là edX, Coursera và Udacity.

Có một khoá gần như là bắt buộc là

  1. Embedded Systems của University of Texas trên edX. Tiếp theo mình sẽ liệt kê vài khoá rất đáng để tự học (và mình cũng đang theo).

  2. Real-time Bluetooth Networks trên edX

  3. Intro to Operating System trên Udacity

  4. Control of Mobile Robot trên Coursera

Ngoài ra bạn cần vào trang tuyển dụng của Itviec và vietnamworks với từ khoá là: embedded để biết thêm về các yêu cầu của họ để tự học từ các nguồn tài liệu tiếng Anh.

Văn Dương viết 03:29 ngày 01/10/2018

Bước đầu vui vui có thể làm cái này chơi. Hồi trước mình làm với chip PIC16F877A của microchip (mua 80K 1 con).

Hà Vĩnh Phú viết 03:29 ngày 01/10/2018

Thì biết là vậy. Tôi đồng ý FPGA là một con chịp nhúng, nhưng người ta không lập trình cho nó mà là dùng nó để mô phỏng một con chip được mô tả bằng ngôn ngữ verilog, vhdl. Nhưng chủ thớt đang hỏi Embeded system programming, là lập trình vi điều khiển, máy tính nhúng thôi. Còn FPGA là IC design rồi. Thiết kế vi mạch không gọi là lập trình, và VHDL, verilog không phải là ngôn ngữ lập trình, mà là “ngôn ngữ mô tả phần cứng” (Hardware description language không phải programming language). IC design là thiết kế chip (bằng ngôn ngữ mô tả), Embedded là lập trình cho chip (bằng c, c++)

Phạm Hoàng nam viết 03:18 ngày 01/10/2018

Chà có vẻ hấp dẫn, để em kiếm trên google thế nào, em cảm ơn anh nhiều

Nguyễn Đức Hoàng viết 03:24 ngày 01/10/2018

Làm led ma trận này, khi lập trình hiệu ứng phải lập trình cho từng con lead hả bác

Văn Dương viết 03:22 ngày 01/10/2018

Không !
Người ta tạo ra 1 ma trận dữ liệu m x n trên. Rồi sau đó dung thuật toán xử lý ma trận dữ liệu này (dịch trái, phải, xoay…).
Rồi sau đó đẩy ma trận dữ lieu này ra các IC ghi dịch 74HC595 qua giao thức SPI để hiển thị ra led.

Nguyễn Ngọc Huy viết 03:17 ngày 01/10/2018

Nghe như Arduino ấy anh nhỉ

Bài liên quan
0