1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.

Учебник С/С++ в приложении к ARM (Cortex M0)

Тема в разделе "Программирование", создана пользователем Pashtet, 15.07.16.

  1. Pashtet

    Pashtet Активный участник

    19.917
    32
    В общем, на старости лет, ударило мне в голову контроллеры программировать :). В давние времена программировал AVR и то на ASM
    Сейчас же, есть желание изучить архитектуру ARM (ядра Cortex M0 M3...)
    Соответственно программировать на ASM тут уже не айс.
    Нужен С/С++
    А вот опыта общения с ним у меня.... несколько "лаб" в универе :d + 12 лет прошло.... Можно сказать, что ноль.
    В идеале, конечно, сначала изучить язык, а потом его плавно применять в программировании контроллеров. Но это все долго :shuffle:
    Хотелось бы изучать язык непосредственно в русле применения его в контроллерах.
    Для начала, можно даже реальные железяки не мучить, а моделировать все в PROTEUS
    Но вот найти нужную литературу, или ресурсы не могу.
    Полно ресурсов и книг по контроллерам. Но там, по умолчанию - типа вы должны знать Си.
    А вот, что бы рассказывать о о контроллерах и параллельно синтаксис языка описывать - такого не нашел.
    Может кто в курсе, есть такое? :)

    Как вариант - хватило бы описания команд, применимо к какой нибудь библиотеке.
    По типу, что записать в порт D значение 0x00 нужна команда DDRD=0x00
    Ну и т.д.
     
  2. Дмитрий Н

    Дмитрий Н Активный участник

    531
    17
    ИМХО C++ тут лишним будет, только с толку собъёт своей сложностью и применимостью всех его сильных сторон в контексте железа. По Си берите классику - Кернигана и Ритчи, а по контроллерам думаю тут и без меня найдутся советчики.

    Ещё как вариант, ищите литературу по Raspberry Pi, как ни странно, её любят начинающие эмбеддеры.
     
  3. Иной гость

    Иной гость Активный участник

    14.420
    106
    А если коды для Arduino посмотреть?
    ааа, там ARM. Тогда предложение снимается :)
     
  4. Elektronik

    Elektronik Новичок

    84
    0
    А почему именно ARM? Можете также на С пописать для AVR - тем более архитектура знакомая - полегче пойдет, да и примеров и книг найдете поболее. Среду разработки можете выбрать одинаковую для AVR и ARM (например IAR C) - затем свои проекты на AVR попробуете портировать для ARM. ИМХО - заниматься программированием ARM "с нуля" на голом С/С++, без операционной системы - тяжкий труд и изобретение "велосипедов". Современные ARMы заточены под использование c Linux и там у вас будет гораздо меньше проблем с привязкой различных периферийных устройств используя готовые драйверы, не говоря уже об организации многопоточных процессов в устройстве и поддержке файловой системы. Поэтому если цель изучить АРМ чтобы "дрыгать" его ногами на СИ - то лучше наверное это делать на более мелких камнях (типа AVR, MCS51, PIC). Скорости и тактовые частоты в этой группе тоже сейчас неслабые. Хотя есть и "мелкие" ARMы, в свое время тоже баловался такими от Philips - еще те "дрыгалки" получались:look: Пока писал, вспомнил, что есть еще STM32 (кстати Cortex M3) и видел на него уроки для начинающих на С - вот ссылочка, может поможет:
    http://cxem.net/mc/mc131.php

    Если будете сильно углубляться в тему, то зарегистрируйтесь на форуме разработчиков электроники:
    http://electronix.ru/forum/

    Новичков там правда не очень балуют, но если правильно задавать вопросы, на которые несколько дней сам искал ответ и не нашел, то помогут. Я там "свой", если понадобится какой либо софт для разработки, то смогу для вас скачать из закрытого архива. Ну и литература там по ARM есть кое-какая, правда все более на англ.