2009-12-01 29 views
5

Tôi đã suy nghĩ khá nhiều về việc 'chuyển sang' lập trình MCU, nhưng vấn đề là tôi chưa bao giờ làm việc với bất kỳ vi điều khiển hoặc tương tự. Như tôi đã nói, AVR và PIC là vi điều khiển phổ biến nhất trong số những người có sở thích, và dường như hầu hết mọi người đều đề xuất AVR cho những người mới đến như tôi, do 'kiến trúc thân thiện với C' (bất kỳ điều gì có nghĩa), các trình biên dịch C và cộng đồng người nuôi cá. AVR hoặc PIC hay bất cứ thứ gì khác, không thực sự quan trọng với tôi, tất cả những gì tôi muốn, sẽ có thể viết mã C trên Linux với một trình biên dịch tốt, và cuối cùng có thể thêm một màn hình LCD trên MCU của tôi (chỉ để xuất các ký tự ASCII cơ bản và có thể vẽ một vài pixel ở đây và ở đó, đơn sắc, không có gì lớn). Tôi không cần bất cứ thứ gì phức tạp hoặc cực kỳ nhanh hay thậm chí là số lượng lớn trong bộ nhớ, vì tôi thích những thứ hạn chế (nhưng không quá giới hạn), nơi bạn cần một chút sáng tạo để đạt được mục tiêu. Tôi đã xem xét trên Internet, nhưng hầu hết các trang tôi tìm thấy đã nhiều thập kỷ và/hoặc không đề xuất bất kỳ gói 'tốt' nào tôi có thể mua (và điều đó sẽ hỗ trợ những điều được đề cập ở trên). Đó là lý do tại sao tôi hỏi bạn, hy vọng rằng bạn có thể giúp tôi một chút. :)Tôi muốn chuyển sang lập trình µC, nhưng tôi hoàn toàn không biết bắt đầu từ đâu từ

Cảm ơn, Hoffa.

Trả lời

7

Tôi đã sử dụng Arduino là AVR. Nó rất thân thiện với người mới bắt đầu và bạn có thể nhanh chóng kết nối mọi thứ để sử dụng C thuần túy thay vì sử dụng ngôn ngữ wiring mà họ sử dụng.

Tôi đã mua mỏ với giá $ 38 USD và có lập trình viên tích hợp và mọi thứ. Tôi đã nghe nói có một bộ khởi động arduino hoặc một cái gì đó với một màn hình LCD bao gồm .. nhưng tôi không chắc chắn

chỉnh sửa: Ồ, trong linux của bạn. Tất cả những gì bạn cần làm để chạy với Arduino là thực hiện pkg_add avr-gcc (hoặc tự xây dựng, điều này khá đơn giản) và pkg_add avrdude

Tôi sử dụng OpenBSD và bắt đầu với Arduino rất đơn giản và chỉ mất khoảng 2 giờ để có được một thế giới hello chạy (chủ yếu là nguyên nhân gây nhầm lẫn với avrdude và phải biên dịch một phiên bản cập nhật)

1

Bạn có thể muốn xem SparkFun's tutorials hoặc LadyAda's tutorials. Họ có một hướng dẫn Bắt đầu từ Điện tử nhúng thực sự tốt, giải thích cách lập trình Atmel AVRs trong C bằng cách sử dụng gcc, và có các bộ công cụ theo cùng với hướng dẫn của họ. Bạn cũng có thể muốn kiểm tra trang web của họ cho nhiều mục sở thích vi điều khiển khác. Giống như màn hình LCD, vi tracballs, EL điều khiển ánh sáng, và rất nhiều thứ tốt khác.

Lưu ý: Tôi không liên kết với SparkFun. Tôi tìm thấy hướng dẫn của họ để được thực hiện tốt, đó là tất cả.

0

Tôi nghĩ rằng nó phụ thuộc phần lớn vào mục tiêu của bạn. Nếu bạn đang muốn làm công việc sở thích, tôi muốn giới thiệu một nền tảng như Arduino. Nếu, mặt khác, bạn đang tìm kiếm để sản xuất một cái gì đó, AVR là một sự lựa chọn tuyệt vời.

1

Nếu bạn muốn một cái gì đó thực sự thú vị và giá rẻ, bạn không thể đi sai với một STM32 Primer2 mà bạn có thể tìm thấy tại DigKey với giá $ 59. Nó dựa trên phiên bản mới nhất của lõi ARM (Cortex-M3) vì vậy nó sẽ có nhiều tương lai phía trước. Nó cũng đi kèm với một người dùng thân thiện (nếu giới hạn 32Kb mã khi gỡ lỗi) IDE. Hãy dùng thử.

0

Như những người khác đã nói. Bảng Arduino rất tuyệt. Nó làm cho việc bắt đầu dễ dàng. Sau đó tôi xây dựng một lập trình usb vì vậy tôi không phải sử dụng bảng Arduino nữa, nhưng tôi vẫn sử dụng nó để tạo mẫu.

Lập trình viên tôi đã tạo là từ http://www.ladyada.net/make/usbtinyisp/.

Hướng dẫn sparkfun là tuyệt vời để hiểu những gì đang thực sự xảy ra.

Tôi không có liên kết với bất kỳ công ty nào khác ngoài việc nghĩ sản phẩm/trang web của họ có chất lượng tốt.

3

Bạn có thể thử đặt câu hỏi này tại chiphacker, trang web Stack Exchange. Không có hành vi phạm tội đối với khán giả xem hiện tại, nhưng không có nhiều người ở đây có kinh nghiệm mà bạn đang tìm kiếm.

Nếu câu trả lời này bị bỏ phiếu 300 lần, điều đó có nghĩa là 300 trong số (hiện tại) 110105 người dùng (hoặc 0,0027% người dùng SO) không đồng ý với tôi, điều này minh họa điểm tôi đang tạo dựng đại diện hiện tại của mình để minh họa.

Có thể là giá trị một thử :)

Điểm được để cung cấp một câu trả lời hữu ích, không phải là nó?

+0

Bạn đã sai toán học. Bạn có thể muốn kiểm tra tiến trình toán học. – Zano

+2

@tinkertim - cảm ơn bạn đã đăng bài này. Không biết có một cộng đồng ngăn xếp được nhúng. –

+0

@Zano: Đã sửa lỗi. Giới hạn 15 ký tự rất tệ. –

0

Tôi đã phải sử dụng AVR trong khóa học Đại học. Tôi tin rằng đó là một hội đồng phát triển AVR với một ATMega8 trên đó. Nó đi kèm với tài liệu rất tốt và nó đã có thư viện thực sự tốt đẹp trong C mà tiếp xúc với tất cả các tính năng của nó. Trang web của SparkFun là nơi mà giáo sư của tôi đã mua tất cả các nguồn cung cấp của mình và nó có nguồn lực tốt để làm cho đôi chân của bạn bị ướt. Tôi đã không chơi với màn hình LED, nhưng các tài liệu hướng dẫn làm cho nó có vẻ thực sự dễ dàng. Từ kinh nghiệm của riêng tôi, làm việc với đèn, quạt và truyền dữ liệu qua các kết nối nối tiếp thật sự rất hay. Chúc vui vẻ!

0

Nếu bạn sẵn sàng học một ngôn ngữ mới (nhưng dễ), tôi khuyên bạn nên sử dụng Tem cơ bản do Parallax thực hiện. Bạn lập trình nó trong pBasic, điều này thực sự dễ dàng. Tôi cũng yêu thích Propeller, cũng được thực hiện bởi thị sai, vì nó cực kỳ mạnh mẽ, nhưng không may, đòi hỏi phải học một ngôn ngữ mới (hơi ít dễ dàng hơn pBasic) gọi là Spin.

0

Dwengo có bộ khởi đầu tốt cho PIC 18F và rất nhiều hướng dẫn để giúp bạn bắt đầu.

Các vấn đề liên quan