Почніть із вбудованого C із ATmega32 (серія ATmega AVR)


9

У мене прокладається плата ATmega32, і я вважаю, що було б ідеально починати з мікроконтролерів. Я колись робив лепетання у вбудованому С (ось коли я отримав цю дошку), але потік припинили через деякі речі. Зараз у мене є два питання:

  1. Який найкращий безкоштовний ресурс для початку із C для серії avr. Я знаю про AVR-GCC, але шукав підручники або безкоштовні книги, щоб почати мене.

  2. Чи слід прямо стрибати на C або спочатку пройти ASM? Я бачу, що навколо є багато книг про зомлі. То який кращий варіант?

Під час пошуку в Інтернеті я знайшов завантажувач Arduino для ATmega32 тут http://retrointerfacing.com/?p=30, але проблема полягає в тому, що я вагаюся зробити трохи повороту з бітами запобіжника і все. Чи безпечно це робити?

Відповіді:



6

Документація avr-libc є чудовим джерелом інформації для C на AVR. Ось ще один .

Особисто я вважаю за краще працювати в C. Використання avr-libc дає хорошу мобільність коду в сімействі AVR. Однак якщо ви робите що-небудь критичне значення, вам, можливо, доведеться вдатися до ASM.

Якщо у вас є паралельний або "високовольтний" програміст AVR, ви завжди можете перепрограмувати біти запобіжника. Якщо ви використовуєте послідовне (In-System-програмування, ISP), то будьте обережні, щоб не відключити біти SPIEN або RESETENABLE, оскільки це не дозволить вам перепрограмувати.

Там в програмуванні щит Arduino HV доступний.


4

Я б почав з C. Можливо, вам знадобиться час від часу фрагмент ASM, але для більшості програм, які стосуються цього. Винятком буде завантажувач, якщо ви вирішили скочувати свій власний.

Дейв Мелліс поклав навчальний посібник AVR на вікі MIT HLT. Він обговорює налаштування інструментів для ATmega328, але здається загальним, щоб допомогти вам із різними пристроями. Подивитися

http://hlt.media.mit.edu/wiki/index.php/AVR_Programming

Бібліотеки та приклади на сайті Atmel здаються непоганими. Я використав декілька фрагментів із своїх приміток до додатків. Бібліотека I2C (TWI), яку я використовую у своєму коді RTC, походить з сайту Atmel.


3

Я б поїхав спочатку з Ардуїно. Багато книг, навчальних посібників та приклад коду. І чудова і приємна громада. Тоді, якщо ви знайомі з Arduino, спробуйте C з AVR-GCC.

Я не можу рекомендувати ASM в ці дні. Можливо, є деякі куточки, де вам, можливо, доведеться використовувати ASM, але більшість речей можна вирішити за допомогою звичайної C. За допомогою ASM ви можете дізнатися деякі деталі про те, як працює мікроконтролер, але якщо ви хочете, щоб все відбувалося швидше, я б дотримувався C або C ++.


Проблема полягає в тому, що дуже важко отримати ардуїно, де я живу. Я планую зробити свій власний, але це теж не виходить (читати не встигаю).
Rick_2047

якщо у вас є можливість програмування чіпа, тоді ви можете завантажити на нього прошивку Arduino, а потім використовувати послідовне посилання + завантажувач для подальшої роботи.
галамін

0

Ви можете почати з програмування С для мікроконтролерів Джо Парду. Використовуйте AVRStudio5 і дотримуйтесь http://avrfreaks.net , тут ви можете отримати багато класних та корисних хлопців.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.