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

 
 
> MSP430F2013 из eZ430-F2013 + IAR для начинающих, MSP430F2013 из eZ430-F2013 + IAR для начинающих
AlexandrM
сообщение Sep 18 2007, 06:10
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 46
Регистрация: 9-07-07
Пользователь №: 28 991



Я программист и раньше писал для ПК, Psion, PalmOS, PocketPC. Сейчас очень хочу изучить МК от TI. Имеется eZ430-F2013, IAR и желание. Но никак не могу понять принципов программирования МК. Прошу помощи. Вот есть такие вопросы:
1. на борту памяти 128Б флеша 2К:
1.1. Программа прошивается в флеш?
1.2. Мне для работы будет доступно 2К минус размер программы?
2. Имеется 100Б параметров (типа номер, пользователь и т.д.) они должны быть записаны во флеш
2.1. Есть стартове значения, как их при прошивки записать во флеш или нужно при первом запуске программы инитить?
3. Таймер. Имею код:
Цитата
#include "msp430x20x1.h"

void main(void)
{
WDTCTL = WDTPW + WDTHOLD; //выключили WD
P1DIR |= 0x01; //Порт работает на выход

TACTL = TASSEL_1 + MC_1; //Используем ACLK и движение от 0 до TACCR0
TACCR0 = 1000; //Предел 1000
TACCTL0 = CCIE; //Включить прерывание

_BIS_SR(LPM0_bits + GIE); //Перейти в режим сна
}

#pragma vector=TIMERA0_VECTOR
__interrupt void TIMERA0_ISR(void)
{
P1OUT ^=0x01; //Изменить состояние порта (как я понимаю в порт будет подавать/не подавать постоянно импульс)
}

3.1. Правильно ли я понял код?
3.2. Как сделать чтобы задержка была 1сек? Как вычислять эту цифру?
3.3. Генератор ACLK работает с одинаковой скорость в спящем режиме?
4. Как вычислять скорость выполнения каждой команды?
5. При отладке с использованием Z430-F2013 код прошивается или идет подобие эмуляции?
Пока все вопросы, надеюсь на ответы для человека с уровнем 0.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
rezident
сообщение Sep 18 2007, 08:34
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(AlexandrM @ Sep 18 2007, 12:10) *
1.1. Программа прошивается в флеш?

Да.
Цитата(AlexandrM @ Sep 18 2007, 12:10) *
1.2. Мне для работы будет доступно 2К минус размер программы?

Для какой именно работы? Для внутрипрограммной записи во Flash? У MSP430F2013 четыре сектора по 512Байт в основной памяти Flash (старший сегмент правда не совсем 512Байт, см. в datasheet) и четыре сектора по 64 байта в области INFO (это тоже Flash). Перед записью во Flash ее нужно стереть. Стирать Flash можно только посекторно (целыми секторами). Если ваша программа будет использовать хотя бы один байт в секторе, то стирать/перезаписывать этот сектор вы уже не сможете (если только не исхитритесь). Для записи констант обычно используются (они для этого и предназначены) сегменты INFO.
Цитата(AlexandrM @ Sep 18 2007, 12:10) *
2. Имеется 100Б параметров (типа номер, пользователь и т.д.) они должны быть записаны во флеш

Пишите в область INFO, как я уже и сказал выше.
Цитата(AlexandrM @ Sep 18 2007, 12:10) *
2.1. Есть стартове значения, как их при прошивки записать во флеш или нужно при первом запуске программы инитить?

Это как вам будет удобно. Только советую сгруппировать константные параметры в структуру и обращаться к ним по указателю как к элементам структуры.
Цитата(AlexandrM @ Sep 18 2007, 12:10) *
3. Таймер. Имею код:

3.1. Правильно ли я понял код?

В общем-то правильно. Только период перезагрузки таймера 1000+1, а не 1000. Состояние 0x0000 это тоже 1 такт. Чтобы период был ровно 1000 тактов в регистр TACCR0 нужно число 1000-1=999 записывать.
Цитата(AlexandrM @ Sep 18 2007, 12:10) *
3.2. Как сделать чтобы задержка была 1сек? Как вычислять эту цифру?

Вычислять как отношение тактовой частоты к значению регистра перезагрузки. В вашем случае как F(ACLK)/(1000+1). Частота переключения выхода P1.1 будет Fout(P1.1)=F(ACLK)/(1000+1)/2
Цитата(AlexandrM @ Sep 18 2007, 12:10) *
3.3. Генератор ACLK работает с одинаковой скорость в спящем режиме?

Да, т.к. его частота используется для тактирования таймера. А таймер работает (не остановлен).
Цитата(AlexandrM @ Sep 18 2007, 12:10) *
4. Как вычислять скорость выполнения каждой команды?

Время (количество тактов) каждой команды указано в руководстве (User's Guide).
Цитата(AlexandrM @ Sep 18 2007, 12:10) *
5. При отладке с использованием Z430-F2013 код прошивается или идет подобие эмуляции?
Пока все вопросы, надеюсь на ответы для человека с уровнем 0.

Да, программный код прошивается во Flash.

P.S. еще добавлю, что за счет ортогональной фон-Неймановской архитектуры MSP430 программа может выполняться как из Flash, так и из ОЗУ. Но компиляторы обычно размещают программный код в основной Flash. Чтобы разместить программу в области INFO или загрузить в ОЗУ компилятор нужно поднастроить (задать опции в виде своих собственных сегментов).
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- AlexandrM   MSP430F2013 из eZ430-F2013 + IAR для начинающих   Sep 18 2007, 06:10
- - jorikdima   Цитата(AlexandrM @ Sep 18 2007, 10:10) Я ...   Sep 18 2007, 07:56
|- - AlexandrM   Цитата(jorikdima @ Sep 18 2007, 10:56) 1....   Sep 18 2007, 08:39
|- - Юрий Санвальд   Цитата(AlexandrM @ Sep 18 2007, 12:39) Во...   Sep 18 2007, 08:58
|- - rezident   Цитата(AlexandrM @ Sep 18 2007, 14:39) Во...   Sep 18 2007, 09:03
|- - AlexandrM   Цитата(rezident @ Sep 18 2007, 12:03) Пос...   Sep 18 2007, 09:41
|- - jorikdima   Цитата(AlexandrM @ Sep 18 2007, 13:41) По...   Sep 18 2007, 09:53
|- - Юрий Санвальд   Цитата(jorikdima @ Sep 18 2007, 13:53) не...   Sep 18 2007, 11:21
|- - jorikdima   Цитата(Юрий Санвальд @ Sep 18 2007, 15:21...   Sep 18 2007, 11:33
|- - Юрий Санвальд   Цитата(jorikdima @ Sep 18 2007, 15:33) не...   Sep 18 2007, 11:42
- - AlexandrM   А существует какой-нибудь примерник элементарных к...   Sep 18 2007, 10:45
|- - Юрий Санвальд   Цитата(AlexandrM @ Sep 18 2007, 14:45) А ...   Sep 18 2007, 11:13
|- - jorikdima   Цитата(AlexandrM @ Sep 18 2007, 14:45) А ...   Sep 18 2007, 11:17
|- - AlexandrM   Цитата(jorikdima @ Sep 18 2007, 14:17) ht...   Sep 18 2007, 11:30
|- - Сергей Борщ   Цитата(AlexandrM @ Sep 18 2007, 14:30) Ес...   Sep 18 2007, 11:39
- - Юрий Санвальд   AlexandrM, разрешите вопрос, почему именно MSP? Дл...   Sep 18 2007, 11:38
|- - AlexandrM   Цитата(Юрий Санвальд @ Sep 18 2007, 14:38...   Sep 18 2007, 12:25
|- - Юрий Санвальд   Цитата(AlexandrM @ Sep 18 2007, 16:25) Во...   Sep 18 2007, 12:41
|- - AlexandrM   Цитата(Юрий Санвальд @ Sep 18 2007, 15:41...   Sep 18 2007, 13:16
|- - Юрий Санвальд   Цитата(AlexandrM @ Sep 18 2007, 17:16) Не...   Sep 18 2007, 13:42
|- - AlexandrM   Цитата(Юрий Санвальд @ Sep 18 2007, 16:42...   Sep 18 2007, 13:50
|- - Юрий Санвальд   Цитата(AlexandrM @ Sep 18 2007, 17:50) Из...   Sep 18 2007, 14:21
- - rezident   Я же вам привел формулу. Период перезагрузки тайме...   Sep 18 2007, 13:42
- - rezident   ЦитатаТут кто-нибудь работал со второй серией MSP?...   Sep 18 2007, 15:29
- - jorikdima   у автора нету кварца. А значит нет 32768! Авт...   Sep 19 2007, 08:18
- - Tech   По MSP430 читать здесь: http://www.compel.ru/libra...   Sep 19 2007, 09:01
- - Юрий Санвальд   Для AlexandrM: Только что проверил код представлен...   Sep 19 2007, 09:03


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

 


RSS Текстовая версия Сейчас: 21st August 2025 - 12:00
Рейтинг@Mail.ru


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