Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
dev:cortex_rus:tools [2015/11/16 15:18]
alexeyb
dev:cortex_rus:tools [2015/11/17 09:19] (текущий)
alexeyb
Строка 1: Строка 1:
-Для разработки потребуются следующие инструменты:​+====STM32F1xx LINUX==== 
 +====Для разработки потребуются следующие инструменты:​====
   - arm-none-eabi (компиляторы,​ сборщик,​ дебаггер) https://​launchpad.net/​gcc-arm-embedded/​+download   - arm-none-eabi (компиляторы,​ сборщик,​ дебаггер) https://​launchpad.net/​gcc-arm-embedded/​+download
   - openocd (собственно посредник между железом и дебаггером) http://​openocd.org/​repos/;​   - openocd (собственно посредник между железом и дебаггером) http://​openocd.org/​repos/;​
  
-Далее используем следующий makefile+===Далее используем следующий makefile ​(STM32F1xx)=== 
 +<​file>​
  
 EXECUTABLE = $(notdir $(CURDIR)).elf EXECUTABLE = $(notdir $(CURDIR)).elf
Строка 59: Строка 61:
 INCPATH +=-I./​cmsis_boot -I./​init/​inc -I./ INCPATH +=-I./​cmsis_boot -I./​init/​inc -I./
 INCPATH +=-I./​common/​inc -I./​cycle/​inc -I./​uscntr/​inc -I./​view/​inc INCPATH +=-I./​common/​inc -I./​cycle/​inc -I./​uscntr/​inc -I./​view/​inc
- 
- 
-STARTUP = ./​cmsis_boot/​startup/​startup_stm32f10x_md.o ./​cmsis_boot/​system_stm32f10x.o 
- 
  
 # ========== can change src,obj,bin ========== # ========== can change src,obj,bin ==========
Строка 112: Строка 110:
 clean: clean:
  rm -f $(OBJECTS) -f $(DBJECTS) -f $(BINDIR)/​$(EXECUTABLE) -f $(BINDIR)/​$(EXECBIN) -f $(BINDIR)/​$(EXECLIST) -f $(BINDIR)/​$(EXECHEX) ​ -f $(BINDIR)/​*.map  rm -f $(OBJECTS) -f $(DBJECTS) -f $(BINDIR)/​$(EXECUTABLE) -f $(BINDIR)/​$(EXECBIN) -f $(BINDIR)/​$(EXECLIST) -f $(BINDIR)/​$(EXECHEX) ​ -f $(BINDIR)/​*.map
 +</​file>​
 +
 +   - TOOLROOT - указываем свой путь до arm-none-eabi;​
 +   - SRCDIR ​  - также свои сырцы, нужно указать;​
 +   - INCPATH ​ - пути до своих инклудов.
 +   - CMSIS    - путь до стд библиотеки арм,
 +   - STINC    - путь до стд библиотеки st,
 +   - STSRC    - путь до стд библиотеки st, **(при использовании расскоментировать USE_STDPERIPH_DRIVER)** ​
 +
 +
 +=== Отладка ===
 +Если **make** прошла успешно,​ можно пользовать отладку файлом **flash_openocd.sh**
 +состоящим из:
 +<​code>​
 +#!/bin/bash
 +openocd -f ./​openocd.cfg
 +</​code>​
 +==openocd.cfg==
 +<​code>​
 +source [find interface/​stlink-v2.cfg]
 +set WORKAREASIZE 0x4000
 +source [find target/​stm32f1x.cfg]
 +</​code>​
 +Далее цепляемся gdb на порт 3333
 +
 +=== Прошивка ===
 +<​code>​
 +#!/bin/bash
 +openocd -f ./​openocd.cfg -f ./​openocdflash.cfg
 +</​code>​
 +где **openocdflash.cfg**
 +<​code>​
 +init
 +reset init
 +halt 
 +flash write_image erase name.hex
 +verify_image name.hex
 +reset
 +shutdown
 +</​code>​
 +
 +=== Среда разработки ===
 +Рекомендую Eclipse for C/C++;
 +   - Создаем проект Makefile project/ Empty Project,
 +   - кормим ему свои наработки в том числе makefile
 +   ​- ​
dev/cortex_rus/tools.1447676288.txt.gz · Последние изменения: 2015/11/16 15:18 — alexeyb
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0