c + + ngôn ngữ cho AVR?

7

7rots51

Guest
Nếu chúng ta sử dụng C / C + + IAR trình biên dịch cho AVR. Lợi thế của việc sử dụng là gì c + + lập trình hướng đối tượng cho thiết kế nhúng AVR có thể giải quyết một số vấn đề một cách dễ dàng đó là khó khăn để giải quyết với C không c? + + Làm giảm số lượng các dòng chương trình? kinh nghiệm của bạn là gì? : Kính trọng
 
Theo ý kiến của tôi (nhưng tôi không nói ra kinh nghiệm với C + + trong AVR) nguy hiểm để sử dụng C + + cho UC. Tôi đoán vấn đề lớn nhất là bộ nhớ phân bổ! Bạn cần phải theo dõi của bộ nhớ mà bạn sử dụng vì nó có thể hạn chế. Tôi cũng nghĩ rằng mã kích thước lớn hơn một chút (sau khi biên dịch, có lẽ bạn có thể viết mã nhỏ hơn) nhưng điều này là một giả định. Tôi nghĩ rằng nếu bạn sẽ sử dụng nhà điều hành quá tải, các mẫu, suối, thừa kế với các chức năng ảo, ... bạn phải có một ý tưởng tốt về những gì bạn làm. (Nếu có một C + + trình biên dịch cho AVR hỗ trợ những điều này) những kỷ niệm nhỏ có thể là kẻ thù lớn nhất của thiết kế hướng đối tượng. Đối với thời điểm này, tôi cố gắng chỉ sử dụng một tập hợp con của thư viện tiêu chuẩn C cho AVR, ví dụ như không phải là phương pháp scanf hoặc sprintf vì chúng làm tăng phân bổ biên soạn kích thước mã (3-5 kB) Antharax
 
một vài tháng trước, tôi bắt đầu với AVR và c + +. Nó khá đau đớn phiêu lưu, nhưng bây giờ hầu hết những điều dường như làm việc. Vì vậy, tôi quyết định chia sẻ kinh nghiệm nhỏ của tôi, có thể nó sẽ có ích cho bạn.
 
stevejack bạn đã cố gắng C + + mã hóa cho AVR trình biên dịch IAR?
 
Theo ý kiến của tôi (nhưng tôi không nói ra kinh nghiệm với C + + trong AVR) nguy hiểm để sử dụng C + + cho UC. Tôi đoán vấn đề lớn nhất là bộ nhớ phân bổ! Bạn cần phải theo dõi của bộ nhớ mà bạn sử dụng vì nó có thể hạn chế. Tôi cũng nghĩ rằng mã kích thước lớn hơn một chút (sau khi biên dịch, có lẽ bạn có thể viết mã nhỏ hơn) nhưng điều này là một giả định. Tôi nghĩ rằng nếu bạn sẽ sử dụng nhà điều hành quá tải, các mẫu, suối, thừa kế với các chức năng ảo, ... bạn phải có một ý tưởng tốt về những gì bạn làm. (Nếu có một C + + trình biên dịch cho AVR hỗ trợ những điều này) những kỷ niệm nhỏ có thể là kẻ thù lớn nhất của thiết kế hướng đối tượng. Cho thời điểm này tôi cố gắng sử dụng chỉ một tập hợp con của các thư viện C chuẩn cho AVR, ví dụ như không các scanf hoặc sprintf phương pháp kể từ khi họ gia tăng phân bổ biên soạn kích thước mã (3-5 kB)
Tại sao sẽ C + + được nhiều bộ nhớ chuyên sâu hơn so với C ? Nó hoạt động chính xác như C khi được biên dịch nên sự khác biệt sẽ là không ai sánh kịp. Ngoài ra, tại sao bộ nhớ phân bổ sẽ là một vấn đề lớn hơn trong C + + hơn là trong C? Sau khi tất cả các newlib sử dụng cùng một thủ tục để cấp phát bộ nhớ với C + + như trong C. Bạn có thể sử dụng phân bổ ngăn xếp trong C + + quá mặc dù nó là khá hạn chế. Simon
 

Welcome to EDABoard.com

Sponsor

Back
Top