Руководство предназначено тем, кто уже имеет MSP430-Launchpad, освоил микроконтроллеры MSP430-ValueLine и задумывается о том, чтобы перейти на более продвинутые МК MSP430, но пока не решился на то, чтобы приобрести профессиональный программатор MSP430-JTAG или MSP430-UIF. Но это не страшно. В качестве программатора можно пока будет использовать Launchpad. Ниже я расскажу как это сделать.
Оказывается, что программатор, входящий в состав платы Launchpad может прошить любой микроконтроллер (МК) MSP430, имеющий интерфейс SpyByWire (SBW). По этому интерфейсу программируется в том числе МК MSP430G2553 и MSP430G2452, которые идут в комплекте с платой. Убедиться, что в микроконтроллере есть интерфейс SBW можно посмотрев его даташит. Мы в качестве подопытной платы будем использовать самодельную отладочную плату с микроконтроллером MSP430F5438A. Интерфейс SBW в этом МК есть. Плата выглядит вот так:
Теперь нужно снять перемычки, которые соединяют верхнюю часть платы Launchpad с нижней и вывести провода с контактов RST,TEST,VCC,VSS. Эти провода нужно связать самодельным кабелем с ножками МК в следующем порядке (в скобках дана нумерация выводов для МК MSP430F5438A):
---------------------------
|Launchpad | MSP430F5438A |
---------------------------
VCC<--------->VDD(87)
RST<--------->SBWTDIO(96)
TEST<--------->SBWTCK(91)
GND<--------->VSS(88)
Должно получиться примерно так:
МК из розетки DIP-20 нужно извлечь. При этом МК будет запитан от Launchpad, который в свою очередь питается от USB. Теперь можно подключить USB кабель в Launchad и подключить его к компьютеру. Если всё сделано правильно, то на Launchpad должен гореть зелёный светодиод PWR. Если перепутаны VSS и VDD, то светодиод не горит.
Теперь проверим опознаётся ли наш МК. В консоли наберём:
mspdebug rf2500
Плата должна дать такой ответ:
vvk@linux-bmx0:~> mspdebug rf2500
MSPDebug version 0.21 - debugging tool for MSP430 MCUs
Copyright (C) 2009-2012 Daniel Beer <dlbeer@gmail.com>
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Trying to open interface 1 on 004
Initializing FET...
FET protocol version is 30394216
Set Vcc: 3000 mV
Configured for Spy-Bi-Wire
Device ID: 0x0580
Code start address: 0x5c00
Code size : 262144 byte = 256 kb
RAM start address: 0x1c00
RAM end address: 0x5bff
RAM size : 16384 byte = 16 kb
Device: MSP430F5438A
Number of breakpoints: 8
fet: FET returned NAK
warning: device does not support power profiling
Chip ID data: 05 80 17
Available commands:
= erase isearch opt run setwatch_w
alias exit load power save_raw simio
break fill load_raw prog set step
cgraph gdb locka read setbreak sym
delbreak help md regs setwatch verify
dis hexout mw reset setwatch_r verify_raw
Available options:
color gdb_loop
enable_bsl_access gdbc_xfer_size
enable_locked_flash_access iradix
fet_block_size quiet
Type "help <topic>" for more information.
Press Ctrl+D to quit.
(mspdebug) exit
В результате мы должны попасть в консоль mspdebug. Чтобы выйти оттуда, введите exit.
Если получили такой ответ, то МК распознался и можно его программировать командой:
mspdebug rf2500 "prog имя_файла_с_прошмвкой.elf"
Через Launchpad программирование идёт очень медленно. 8кБ прошивается несколько минут. В остальном каких-либо ограничений нет.
Ещё следует отметить,что после того, как мы отключили нижнюю часть платы Launchpad, кнопка RESET более не функциональна. Если на плате такой кнопки нет, то отправить МК в ресет можно с командной строки:
mspdebug rf2500 reset
Оказывается, что программатор, входящий в состав платы Launchpad может прошить любой микроконтроллер (МК) MSP430, имеющий интерфейс SpyByWire (SBW). По этому интерфейсу программируется в том числе МК MSP430G2553 и MSP430G2452, которые идут в комплекте с платой. Убедиться, что в микроконтроллере есть интерфейс SBW можно посмотрев его даташит. Мы в качестве подопытной платы будем использовать самодельную отладочную плату с микроконтроллером MSP430F5438A. Интерфейс SBW в этом МК есть. Плата выглядит вот так:
Теперь нужно снять перемычки, которые соединяют верхнюю часть платы Launchpad с нижней и вывести провода с контактов RST,TEST,VCC,VSS. Эти провода нужно связать самодельным кабелем с ножками МК в следующем порядке (в скобках дана нумерация выводов для МК MSP430F5438A):
---------------------------
|Launchpad | MSP430F5438A |
---------------------------
VCC<--------->VDD(87)
RST<--------->SBWTDIO(96)
TEST<--------->SBWTCK(91)
GND<--------->VSS(88)
Должно получиться примерно так:
МК из розетки DIP-20 нужно извлечь. При этом МК будет запитан от Launchpad, который в свою очередь питается от USB. Теперь можно подключить USB кабель в Launchad и подключить его к компьютеру. Если всё сделано правильно, то на Launchpad должен гореть зелёный светодиод PWR. Если перепутаны VSS и VDD, то светодиод не горит.
Теперь проверим опознаётся ли наш МК. В консоли наберём:
mspdebug rf2500
Плата должна дать такой ответ:
vvk@linux-bmx0:~> mspdebug rf2500
MSPDebug version 0.21 - debugging tool for MSP430 MCUs
Copyright (C) 2009-2012 Daniel Beer <dlbeer@gmail.com>
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Trying to open interface 1 on 004
Initializing FET...
FET protocol version is 30394216
Set Vcc: 3000 mV
Configured for Spy-Bi-Wire
Device ID: 0x0580
Code start address: 0x5c00
Code size : 262144 byte = 256 kb
RAM start address: 0x1c00
RAM end address: 0x5bff
RAM size : 16384 byte = 16 kb
Device: MSP430F5438A
Number of breakpoints: 8
fet: FET returned NAK
warning: device does not support power profiling
Chip ID data: 05 80 17
Available commands:
= erase isearch opt run setwatch_w
alias exit load power save_raw simio
break fill load_raw prog set step
cgraph gdb locka read setbreak sym
delbreak help md regs setwatch verify
dis hexout mw reset setwatch_r verify_raw
Available options:
color gdb_loop
enable_bsl_access gdbc_xfer_size
enable_locked_flash_access iradix
fet_block_size quiet
Type "help <topic>" for more information.
Press Ctrl+D to quit.
(mspdebug) exit
В результате мы должны попасть в консоль mspdebug. Чтобы выйти оттуда, введите exit.
Если получили такой ответ, то МК распознался и можно его программировать командой:
mspdebug rf2500 "prog имя_файла_с_прошмвкой.elf"
Через Launchpad программирование идёт очень медленно. 8кБ прошивается несколько минут. В остальном каких-либо ограничений нет.
Ещё следует отметить,что после того, как мы отключили нижнюю часть платы Launchpad, кнопка RESET более не функциональна. Если на плате такой кнопки нет, то отправить МК в ресет можно с командной строки:
mspdebug rf2500 reset
Комментариев нет:
Отправить комментарий