воскресенье, 8 февраля 2015 г.

Создаем первый проект для STM8S в среде ST Visual Develop

Запускаем ST Visual Develop:


Выбираем меню Debug instrument->Target settings... Для STM8S-discovery в окне указываем способ связи: Swim ST-Link. Нажимаем ОК:
 

ИЛИ

Если в наличии нет физической платы МК, можно воспользоваться симулятором. Для этого в окне указываем способ связи: SimulatorНажимаем ОК. Если будут появляться окна с настройками виртуального МК, нажимаем ОК.


Меню File->New workspace... Далее идут разные окна, вводим данные и нажимаем ОК:




На плате STM8S-discovery установлен МК STM8S105C6. Важно точно указывать модель МК, чтобы не возникало непонятных ошибок и "глюков":


Будет создан новый проект (project) и рабочее пространство (workspace), в котором размещается этот проект. К проекту будут добавлены файлы исходного кода. Файл main.c содержит главную функцию main() на языке Си. Программа на языке Си начинает выполняться с этой функции (до этого выполняется подготовка МК к работе и инициализация окружения языка Си, но для программиста на Си эта часть программы незаметна и добавляется автоматически компилятором и средой разработки). 


Сохраняем - меню File->Save workspace

Изменим настройки проекта, меню Project->Settings...

Эта настройка позволяет избежать сообщения об ошибке, что область памяти .ubsct слишком мала (у меня эта ошибка возникла, когда моей программе понадобился глобальный массив на 255 байт). Это сделать желательно:


Эта настройка включает генерацию файла карты памяти (*.map). Это делать необязательно. Этот файл полезен, чтобы посмотреть, как программа располагается в памяти, сколько памяти занимает, по какому адресу расположены переменные и функции, и др:


Далее из исходных файлов на языке Си необходимо подготовить двоичный образ программы для записи в память МК. Этот процесс называется компиляцией и сборкой программы. 

Выбираем конфигурацию Debug (это значит, что выходной elf файл будет содержать информацию, необходимую для отладки), далее меню Build->Build или F7 на клавиатуре. Если компилятор языка Си Cosmic C Compiler был успешно установлен и нашел свою лицензию, то программа будет успешно собрана с сообщением "0 errors(s), 0 warning(s)":


Подключаем плату STM8S-discovery к USB, выбираем меню Debug->Start Debugging. Если настройки связи были выбраны верно, то программа будет записана во Flash память МК (и будет хранится там после выключения питания), МК будет остановлен на первой команде и показано окно отладчика:


F5 запускает программу на выполнение. Shift+F5 останавливает программу в отладчике. Видно, что программа всё время выполняет цикл while(1). Также видно, по какому адресу происходит выполнение, и видно команду на языке ассемблера (JRT 0x80d3).


Таким образом создаётся минимальный проект в среде ST Visual Develop, который собирается, записывается в память МК и запускается под отладчиком.

Меню Debug->Stop Debugging прекращает отладку.

1 комментарий:

  1. Mgm Casino & Hotel - Mapyro
    Mapyro of 논산 출장안마 the Mgm Casino & Hotel. Find 남양주 출장안마 your way around the casino, find where everything is located, see 포천 출장안마 activity, 경상남도 출장샵 speak to people and 김해 출장안마 talk about the

    ОтветитьУдалить