Học phát triển hệ thống nhúng mà không cần giám sát [đóng]


10

Tôi đã tốt nghiệp năm nay và có công việc đầu tiên liên quan đến lập trình C, quản trị Linux và phát triển hệ thống nhúng. Tôi cảm thấy khá hài lòng với công việc của mình, nhưng tôi sợ mình sẽ không trở thành một lập trình viên thành công trong lĩnh vực này. Bây giờ tôi là một nhà phát triển đơn độc, với các đồng đội là chuyên gia phần cứng, không có ai hướng dẫn hay dạy tôi cách lập trình nhúng, tôi phải tự mình nghiên cứu.

Vì vậy, đây là những câu hỏi của tôi. Có thể trở thành một nhà phát triển hệ thống nhúng tốt bắt đầu từ một vị trí cấp đầu vào mà không có sự giám sát của các lập trình viên cao cấp? Làm thế nào tôi có thể trở thành một (có lẽ với sự trợ giúp của các diễn đàn, kênh IRC, sách giáo khoa tốt)? nó sẽ kéo dài bao lâu?

CẬP NHẬT: Cho đến nay, tôi đã nhận được một số câu trả lời hữu ích, nhưng tôi nhận ra rằng tôi cần một số gợi ý cụ thể về chủ đề này.

Vì vậy, đây là những câu hỏi cụ thể của tôi:

  1. Một số sách giáo khoa tốt người ta có thể sử dụng để học phát triển nhúng là gì?
  2. Những cộng đồng trực tuyến chuyên biệt nào có thể hữu ích cho một nhà phát triển nhúng đầy tham vọng (không tính các công cụ chung như Stack Overflow, Reddit, v.v.)?
  3. Các blog thú vị nhất dành riêng cho phát triển nhúng là gì?

Câu trả lời:


3

Bạn đúng rằng trong trường hợp của bạn sẽ làm cho mọi thứ khó khăn hơn một chút. Tuy nhiên, có nhiều giải pháp để giải quyết vấn đề của bạn.

  1. Trước tiên hãy thử tham gia vào các cộng đồng như thế này, nhưng có thể chuyên sâu hơn trong lĩnh vực của bạn. Khi tham gia, bạn sẽ tăng kiến ​​thức của mình, và quan trọng hơn là gặp gỡ những người khác.

  2. Cố gắng tham gia vào các trại mã , hoặc bất kỳ sáng kiến ​​nào mà bạn gặp các nhà phát triển khác như bạn trong thực tế. Chia sẻ kiến ​​thức sẽ dễ dàng hơn khi bạn có người trước mặt.

  3. Yêu cầu sếp của bạn đặt cho bạn ít nhất 10 ngày đào tạo một năm . Không cần phải giải thích những lợi thế ở đây, nếu anh ta từ chối, anh ta thật ngu ngốc.

  4. Cố gắng đi đến 1 đến 2 hội nghị hoặc triển lãm thương mại liên quan đến doanh nghiệp của bạn.

  5. Cố gắng đọc một cuốn sách kỹ thuật hai tháng một lần . Nếu bạn có thể đọc thêm, đừng ngần ngại.

  6. Nhận một người cố vấn . Tất nhiên đó không phải là điều dễ dàng nhất để đạt được.

  7. Dành một chút thời gian trong tuần để thử nghiệm và thực hiện nghiên cứu & phát triển , bằng cách thử các công nghệ mới của những thứ bạn đọc trong sách, cộng đồng, triển lãm thương mại, đào tạo, v.v ... Dành thời gian để thực hành những gì bạn đã học là RẤT quan trọng.

  8. Hôm nay bạn là nhà phát triển duy nhất, nhưng nhờ vào sự chăm chỉ của bạn, công ty bạn đang làm sẽ phát triển và có thể sẽ cần phải thuê thêm người của bạn .


3

Bây giờ tôi là một nhà phát triển đơn độc trong công việc, với các đồng đội của tôi là chuyên gia phần cứng

Đừng ngần ngại sử dụng chúng như một nguồn tài nguyên. Một trong những điều khó nhất đối với các lập trình viên nhúng không phải là EE là cảm thấy thoải mái với phần cứng. Nó rất hữu ích để có thể đọc sơ đồ (ngay cả khi bạn không thể thiết kế một cái) và hiểu cách sử dụng một phạm vi để xem xét các tín hiệu phát ra từ vi điều khiển.


0

Đã được một thời gian kể từ khi bạn hỏi câu hỏi này, vì vậy tôi hy vọng bạn đang đi đúng hướng. Dưới đây là một vài gợi ý bổ sung mà tôi hy vọng sẽ giúp được.

Trao đổi ngăn xếp và blog

Thật đáng ngạc nhiên, Stack Exchange không có trang web Hỏi & Đáp riêng cho các hệ thống nhúng. Một đã được đề xuất khoảng hai năm trước, nhưng nó vẫn đang trong giai đoạn cam kết, mòn mỏi mà không có đủ người đăng ký để hỗ trợ nó. Nếu bạn muốn tạo sự khác biệt, hãy vào đây:

http://area51.stackexchange.com/proposeals/15961/embedded-system-design-and-development

Đọc đề xuất và nếu bạn đồng ý, nhấp vào cam kết để tham gia.

Linked In cũng có một nhóm Hệ thống nhúng, cộng với một vài nhóm liên quan chặt chẽ có thể được quan tâm:

Những hệ thống nhúng

Chương trình cơ sở

CÁNH TAY

Tài nguyên web

EETimes có các tính năng về hệ thống nhúng.

http://www.eetimes.com/design/embedded

Tiến sĩ Dobbs là một người bạn lâu năm với các lập trình viên thuộc mọi loại hình và có những thứ tuyệt vời trên nhúng.

http://www.drdobbs.com/embedded-systems

Cộng đồng Arduino rộng lớn, nhiệt tình và đã loại bỏ nhiều rào cản gia nhập chương trình nhúng bao gồm giá cả và đào tạo trước đó.

http://www.arduino.cc/

Nếu bạn là một nhà phát triển phần mềm nữ hoặc một nhà phát triển nam không được làm sáng tỏ, những thứ mà các hệ thống nhúng chủ yếu là một câu lạc bộ "Good-Old-Boys", hãy xem trang web này. Tác giả là một sinh viên tốt nghiệp tại MIT, đã thực hiện một cách sắc sảo, trong số đó (hoặc đôi khi trong hộp, như bộ sạc iPhone hộp của cô ấy), và dường như rất chuyên nghiệp trong việc thiết kế, viết và viết blog video.

http://www.youtube.com/watch?v=QkmtHqsYCbw&feature=player_embedded# !

http: //www.adafbean.com/tutorials

Nhiều nhà cung cấp sẽ có bộ sưu tập lớn các bảng dữ liệu, ghi chú ứng dụng, sách trắng và bản sao miễn phí hoặc đánh giá của các công cụ phát triển. Các công ty hàng đầu trong không gian này bao gồm ARM, Atmel, Freescale, intel, Microchip Technologies, NXP (trước đây là Phillips), TI và nhiều công ty khác.

Sách

Không chắc bạn có thể tìm thấy nó không, nhưng tôi có một cuốn sách tôi nghĩ kể rất nhiều câu chuyện cho các hệ thống nhúng về các công cụ (trình biên dịch, trình liên kết, trình tải) và những điều cơ bản xảy ra trong bộ vi xử lý (ngắt, I / O, đơn giản quản lý tác vụ và lập lịch, cấu trúc tệp đơn giản). Lập trình hệ thống cho máy tính nhỏ, Daniel Marcellus.

Một tài liệu tham khảo hiện đại hơn là Embedded Linux Primer. Các chương đầu thảo luận về lý do đằng sau việc chạy Linux trên các hệ thống nhúng và một số cơ chế liên quan. Chương 3 có một cuộc thảo luận thú vị về bộ xử lý + chipset hỗ trợ và các tùy chọn SOC (System On a Chip) có thể được xem xét để sử dụng trong các thiết kế hiện tại. Trên thực tế, mục tiêu đang di chuyển, vì vậy nó đưa ra một điểm khởi đầu hiện đại với việc xuất bản cuốn sách. Chương 3 là tuyệt vời, nhưng nên được bổ sung với một số nghiên cứu sâu hơn trên web và thảo luận với các nhà cung cấp. Thông thường, kỹ sư điện và kỹ sư phần mềm dẫn đầu trong dự án sẽ chọn bộ xử lý, vì vậy nếu bạn ở trong một công ty và học các hệ thống nhúng, hãy tìm hiểu sâu về phần cứng họ chọn.

Các chương sau bao gồm các mô tả mở rộng về nhiều khía cạnh thực tế của việc nhắm mục tiêu Linux vào phần cứng, nhưng hợp tác với nhà cung cấp và sử dụng một thiết kế tham chiếu tiêu chuẩn khá có thể làm giảm đáng kể nỗ lực.


0

Nó chủ yếu phụ thuộc vào chính bạn. Nếu bạn sẵn sàng tìm hiểu và biết cách thu thập đủ thông tin về chủ đề này, bạn có thể tự dạy mình bất cứ điều gì. Nhưng không phải tất cả mọi người đều thành công như nhau khi làm điều đó:

Tôi bắt đầu ở một môi trường tương tự, và nếu tôi thấy tôi đang ở đâu so với 5 năm trước (tốt nghiệp kỹ sư điện tử, thực tế không có nền tảng lập trình), tôi thấy thật tuyệt vời khi bộ não con người có khả năng. Khi tôi bắt đầu, tôi chưa bao giờ nghe về các mẫu thiết kế, TDD, ... và chưa bao giờ thấy mã của một chương trình thực sự. Bây giờ tôi biết những điều này khá tốt, và biết cách sử dụng chúng. Điều duy nhất tôi làm là tìm kiếm trên mạng, đọc mã từ những người khác và một số cuốn sách (một lần nữa, tôi tìm thấy trên mạng), và quan trọng nhất, viết hàng tấn mã, gỡ lỗi, học hỏi từ những sai lầm của tôi. Học hỏi từ một sai lầm là một cách tốt hơn nhiều để học một cái gì đó trái ngược với việc chỉ đọc một mẫu và sao chép hành vi. Điều đó rất lạ, nhưng tôi chỉ nói chuyện trong đời thực với những gì tôi gọi là một lập trình viên giỏi một vài lần.

Lập trình viên duy nhất khác ở đây là những gì bạn gọi là tiền bối (vì anh ta đã làm việc hơn 15 năm). Anh ấy làm việc theo một cách hoàn toàn khác so với tôi. Và anh ấy vẫn đang viết một dạng C bị tê liệt với các lớp, không bao giờ sử dụng STL, không biết mẫu thiết kế là gì, v.v. (Có lẽ tôi sẽ sớm bắt đầu một câu hỏi về vấn đề này, tôi đang gặp khó khăn khi cố gắng khiến anh ấy chấp nhận ít nhất một số phương pháp của tôi ..)


-1 Đối với một ý nghĩa có thể tốt, nhưng mở đầu "Nếu bạn đủ thông minh ...". Xin vui lòng, đừng bao giờ đặt câu hỏi về trí thông minh của bất kỳ ai, đặc biệt nếu không có bằng chứng rõ ràng. Tôi không nghĩ mục tiêu của bạn là không thân thiện, nhưng với Olga, nó có vẻ như vậy. Cô ấy dường như đã đăng một câu hỏi này, và sau đó không làm gì thêm trên Stack Exchange.
Nhà phát

@ Nhà phát triểnDon mục tiêu của tôi thực sự không phải là không thân thiện nhưng bạn đã đúng, khi tôi đọc câu bây giờ có vẻ như tôi đang ngồi trên một tòa tháp là tất cả vượt trội. Một điều đáng xấu hổ, vì vậy tôi loại bỏ nó.
stijn
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.