Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
ob:o7:stm32f103 [2017/04/06 21:57] иван_денисов |
ob:o7:stm32f103 [2020/10/29 07:08] (текущий) |
||
---|---|---|---|
Строка 13: | Строка 13: | ||
===== 1 Написание простого модуля ===== | ===== 1 Написание простого модуля ===== | ||
- | |||
- | Компилятор [[ob: | ||
Создайте новый документ для вашей программы через меню **File-> | Создайте новый документ для вашей программы через меню **File-> | ||
- | < | + | < |
- | END MicroBlink.</ | + | END MyBlink.</ |
Название модуля начинается с заглавной буквы и содержит две части. Первая часть --- название подсистемы, | Название модуля начинается с заглавной буквы и содержит две части. Первая часть --- название подсистемы, | ||
Строка 30: | Строка 28: | ||
После всех объявлений следует секция `BEGIN`, в которой описан код, выполняющийся при загрузке модуля. | После всех объявлений следует секция `BEGIN`, в которой описан код, выполняющийся при загрузке модуля. | ||
- | < | + | < |
- | MODULE | + | MODULE |
IMPORT SYSTEM, MCU := MicroSTM32F10xxD, | IMPORT SYSTEM, MCU := MicroSTM32F10xxD, | ||
Строка 49: | Строка 47: | ||
SYSTEM.PUT(MCU.GPIOCBSRR, | SYSTEM.PUT(MCU.GPIOCBSRR, | ||
UNTIL FALSE | UNTIL FALSE | ||
- | END MicroBlink.</ | + | END MyBlink.</ |
Мы пользуемся готовым модулем **PinCfg** для настройки параметров вывода **PC13**. А затем идет бесконечный цикл, который формирует периодическую смену состояния вывода **PC13** путем записи 13-го и 29-го бита в управляющий регистр **BSRR** для порта **C**. | Мы пользуемся готовым модулем **PinCfg** для настройки параметров вывода **PC13**. А затем идет бесконечный цикл, который формирует периодическую смену состояния вывода **PC13** путем записи 13-го и 29-го бита в управляющий регистр **BSRR** для порта **C**. | ||
- | **BSRR** расшифровывается как Bit Set/Reset Register. Подробнее про все регистры вы найдете в файле [[http:// | + | **BSRR** расшифровывается как Bit Set/Reset Register. Первые 16 битов отвечают за подачу напряжения на пин, а с 16 по 31 — за сброс |
- | Для записи значений используется команда **SYSTEM.PUT**, | + | Для записи значений используется команда **SYSTEM.PUT**, |
- | + | ||
- | Подробнее про работу с типом **SET** читайте в статье Витра | + | |
===== 2 Компиляция ===== | ===== 2 Компиляция ===== | ||
Строка 70: | Строка 66: | ||
Для сборки надо указать целевой микроконтроллер в команде для сборки. | Для сборки надо указать целевой микроконтроллер в команде для сборки. | ||
- | ^Q O7ARMv7MLinker.Link STM32F103C8 | + | ^Q O7ARMv7MLinker.Link STM32F103C8 |
- | После нажатия на такой коммандер, | + | После нажатия на такой коммандер, |
+ | |||
+ | Файлы исходных кодов прошивок также лучше хранить в папке **My/Files**. | ||
Про то, как прошить полученным файлом микроконтроллер, | Про то, как прошить полученным файлом микроконтроллер, | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | |||
+ | ---- | ||
+ | |||
+ | Автор заметки: |