thắc mắc Kiến thức cần để trở thành master lập trình nhúng ?

Ở đây có thím nào làm ở panasonic ở vị trí software ( ghi là software nhưng là nhúng ) ko, e đang cày tiếng anh để nộp CV, có thím nào từng hoặc đang làm cho xin ít kinh nghiệm với
 
Nhúng nhưng cụ thể là cái gì: MCU hay Linux??
Nhưng nhìn chung cần có:
1. Ngôn ngữ cần: Embedded C, python 2.x và 3.x, batch/shell script, C++, VBA,..có khi cũng cần đến Perl và Ruby
2. Điện tử cơ bản + mạch điện (chỉ cần đọc hiểu là đủ)
3. Vi xử lý (nắm vững các chuẩn giao tiếp như SPI, I2C, QSPI, UART, RS232,...)
4. UML2.0: vẽ activity diagram, flowchart, waveform, sate machine ....
5. Trình biên dịch: nắm rõ cách hoạt động của trình biên dịch C, tự mình tạo ra 1 project và cấu hình cho nó từ A-Z.
6. Hệ điều hành: chủ yếu dành cho bạn nào đi theo Linux, bên MCU thì khỏi cần vì gần như làm trên windows.
7. Lập trình IOS/Android giao tiếp PC/Kit Nhúng điều khiển các thiết bị
8. Build Linux trên Kit Nhúng: dành cho dân Linux
9. Lập trình Kernel, Bootloader: dành cho dân Linux
10. Code Clean: code cho đẹp
11. Design Pattern: dành cho người chuyên nghiệp muốn design hệ thống, source code sao cho nó dễ maintain và reuse về sau này
Bổ sung thêm
12. Yêu cầu về các protocol giao tiếp phần mềm :
  • network tcp-ip, ftp,...
  • Nfc
  • Bluetooth
  • USB
...
Tất cả các giao tiếp có trên 1 cái OS. Ko cần nhớ nhưng phải biết vọc vào khi cần.
13. Các API của hệ thống gần như framework bên application vậy.
 
nhúng bạc bẽo vãi, kiếm freelancer làm mà khó, làm hao mòn kiến thức + kinh nghiệm quá.

Sent using vozFApp
Không phải do ngành nhúng bạc bẽo đâu bác. Mà nhúng liên quan tới hardware , việt nam mình phần hardware ko có thì nhúng khó bật lên lắm.
 
Gọi Nhúng thì nó mông lung vl ra ấy.
Làm app Android cho thiết bị cũng gọi là nhúng.
Code assembly cho vđk cũng gọi là nhúng.
Code C cho Arduino cũng gọi là nhúng.
Viết VHDL cho FPGA cũng gọi là nhúng.
Làm giao diện web cho thiết bị cũng gọi là nhúng.
Mình ra trường gần chục năm rồi, vẫn bám với nghề, khuyên thật mấy bạn sinh viên năm đầu cứ học cho tốt đi đã rồi sẽ biết mình phải làm gì. Nhiều khi ra trường nghề chọn người chứ người không được chọn nghề, quan trọng là phải cố gắng thu nhận càng nhiều kiến thức lúc còn đi học càng tốt. Mấy thằng kêu bỏ ĐH vẫn thành tài thì đấm bỏ mẹ nó đi, có mà tài lanh, chỉ bọn vô học mới khuyên vậy. Bỏ mấy cái đoàn đội, có tham gia thì lướn phướn cho vui, năm 3 năm 4 lên lab theo các thầy hoặc kiếm công ty be bé nào mà theo.
Nhân lực làm nhúng nói riêng, cntt nói chung thì 5-10 năm nữa không lo thừa, nhất là ở VN càng đào tạo càng thiếu. Nghề này không lo chết đói, thằng giỏi thì làm cái khó nhiều tiền, thằng dốt luôn có cơ hội học hỏi, thu nhập là tốt so với mặt bằng, chỉ có cái hơi khó giàu, dễ trĩ.
Còn về học cái gì thì chú ý mấy thứ sau:
  • Ngôn ngữ lập trình phải có căn bản về C, sau đó muốn học gì nữa thì học, thằng nào bảo C thế này thế kia cứ đấm vào mồm. Muốn hiểu về nhúng tốt nhất chỉ có học C hoặc assembly, assem thì cho try hard thôi, C là ổn. Nghe mấy thằng lìn kêu học Java hay Python bản thân cái ngôn ngữ đã support tận đít, C++ cắm đầu vào OOP thì hiểu thế đéo nào được thanh ghi, bộ đếm, sắp xếp dữ liệu ... mà đòi nhúng với nhiếc, nhúng cái máy tính à? Ừ thì C++ cho arduino, nhưng một thứ lai căng phục vụ mục đích mỳ ăn liền có nên lấy làm cơ bản để học không?
  • Kiến thức cơ bản về điện tử, arduino cũng được, biết thiết kế mạch thì càng tốt, không thì ít nhất cũng phải lập trình được mấy con vi điều khiển, nắm được thanh ghi, tập lệnh, sắp xếp bộ nhớ, kiến trúc cơ bản của vđk, vxl ... ra trường chưa chắc đã trực tiếp dùng nhưng hiểu biết mấy cái này rất lợi thế. Làm nhúng nó không như làm app PC hay mobile, nạp code toàn phải debug board hoặc hệ thống riêng, có kiến thức về điện tử học rất nhanh. Đừng bập vào Arduino sớm quá, lười đấy, cố thiết kế 1, 2 mạch cho biết rồi hẵng arduino.
  • Tiếng Anh, giao tiếp có thể kém nhưng đọc mà không nổi datasheet thì vứt mẹ đi. Đọc tài liệu tiếng Việt hoặc là outdate hoặc là dịch sai.
Tóm lại là lúc đi học cố gắng có càng nhiều kiến thức càng tốt, mỗi thứ biết một ít cũng được nhưng cố gắng có 1 2 cái thế mạnh đặc biệt, biết càng nhiều thì càng gặp nhiều cơ hội. Còn mới năm 1 năm 2 đã nghĩ ra trường đi làm cái này đi làm cái kia á? Dòng đời xô đẩy có cứt mà được chọn ấy.
 
T
nhúng bạc bẽo vãi, kiếm freelancer làm mà khó, làm hao mòn kiến thức + kinh nghiệm quá.

Sent using vozFApp
Tại bạn không có môi trường để làm việc thôi, chứ lập trình nhúng dính tới phần cứng và hệ điều hành không đơn giản và ở VN ít có công ty startup nào có nhu cầu, công ty lớn thì họ lại làm ở chỗ khác, vn chỉ là râu ria. Theo ngành này mình nghĩ là nên xuất ngoại.
 
Back
Top