реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> STM8L-Discovery первый шаг, не удается скомпилировать код
vazz
сообщение May 24 2018, 11:49
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 189
Регистрация: 21-01-10
Пользователь №: 54 971



Прикупил STM8L-Discovery, на борту STM8L152C6T6. Установил STVD 4.3.12 с оф.сайта вместе с дровами для платы. Создал пространство, в нем проект на ассемблере. Сначала не разобрался что такое STVP, поэтому запустил STVD и увидел пиктограмму “Programmer”, нажал (уж очень хотелось узнать увидит ли софт мою плату), получил AppCrash и закрытие STVD без моего на то желания. Избавился от этого безобразия путем, описанным STMщиками тут https://community.st.com/thread/45768-st-vi...rogramming-tool. Еще раз запустил STVD, подключил плату, открыл созданное пространство+проект, нажал на Programmer и увидел, что это некий Light Programmer, особо нифига не понял как там можно оптионал битс выставлять и т.д., закрыл. Скомбилировал и собрал проект, нажал на “Debug”. Отладка вроде как запустилась без ошибок, НО тут началось «непонятное». Во-первых, перед запуском отладки я установил чисто для интереса breakpoint на первой же инструкции, где инициализируется стек, думал, что после запуска отладки смогу нажать Run и отладчик, «добежав» до этой точки, остановится. Но отладчик этого делать и не думал, в момент запуска отладчика он что-то невнятное выругал и просто взял и удалил только что установленную мной точку останова. Я так и не понял почему. Ладно, хрен с ней с точкой, решил с помощью кнопок «перескока» (step in и др.) посмотреть как будет идти выполнение когда. Но, к моему сожалению отладчик не показывал маркер напротив строки, которую он сейчас выполняет. Но при этом показывает маркер в окне дизассемблера. Я немного поднапрягся, разбираться не стал. Решил посмотреть выходной файл, который после сборки проекта генерируется для прошивки в МК. Как я смог понять он выводится в папку Debug с расширением s19. Открыл блокнотом, посмотрел, там всего две строки. Закрыл. Решил изменить код в main.asm, добавив какую-нибудь инструкцию (одну), добавил инструкцию в основном цикле (после всех инициализаций и очистки ram, собрал проект и пошел смотреть этот самый выходной файл с расширением s19. Дата и время изменения файла изменились, но содержимое осталось ровно таким же, две строчки, цифра в цифру совпадает с содержимым файла до внесения изменений в код. В общем я в недоумении пока что. Может кто поделится своим первым проектом типа «помигать светодиодом» для STM8L-Discovery? Только чтобы проект был полностью со всеми инклудами, а то мой мозг убеждает меня, что без наглядного примера я так и . Кстати в свой проект после include mapping.inc я также добавлял STM8L152.inc и STM8L152.asm (скопированные в папку с проектом). Да и еще, отладчик при отключенном дискавери не запускается (пишет ошибку соединения), т.е. плату видит явно, хотя, мне кажется в моем случае это не так важно, так как у меня траблы уже на этапе простой компиляции кода в выходной файл.


--------------------
Не так страшна автоматизация, как её малюют.
Go to the top of the page
 
+Quote Post
VladislavS
сообщение May 24 2018, 13:36
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 475
Регистрация: 14-04-05
Из: Москва
Пользователь №: 4 140



А может ну его, этот ASM? С-ник сильно проще.
Go to the top of the page
 
+Quote Post
vazz
сообщение May 24 2018, 13:53
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 189
Регистрация: 21-01-10
Пользователь №: 54 971



Цитата(VladislavS @ May 24 2018, 16:36) *
А может ну его, этот ASM? С-ник сильно проще.


я планирую использовать STM8L только в максимально простых и дешевых проектах, с минимумом памяти. В общем сейчас поигрался с инклудами.. дело в некоем "правильном" включении файлов в проект, весьма пока дико для меня это все. В инклудах я встречаю даже END в конце отдельного файла. Видимо, так вот просто без оглядки эти инклуды нельзя включать в тексте основного файла, их все таки нужно именно добавлять в проект с помощью среды (типа правой кнопкой на папке проекта и затем "Add Files To Project"). Светодиод заморгал! Из непонятных косяков самой среды STVD еще вот чего - при установке ДВУХ И БОЛЕЕ точек останова при отладке отладчик может пропускать все точки кроме первой попавшейся, т.е. как будто бы я не установил точку (хотя красная точка отображается). Такое происходит при использовании кнопки "Run". А вот если смотреть выполнение кода пошагово (типа "Step Into"), то отладчик не пропускает ни одной точки останова. С одной стороны рад, что что-то уже получилось, с другой "терзают смутные сомненья" на счет правильности выбора среды разработки.. Еще поиграюсь конечно, может привыкнуть надо просто.

Сообщение отредактировал vazz - May 24 2018, 13:58


--------------------
Не так страшна автоматизация, как её малюют.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 16th April 2024 - 17:04
Рейтинг@Mail.ru


Страница сгенерированна за 0.01374 секунд с 7
ELECTRONIX ©2004-2016