Миландр

Ключевым подразделением нашей компании
является Центр Проектирования интегральных микросхем
Текущее время: 2019-дек-11 15:07

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 90 сообщений ]  На страницу « 1 2 3 4 5 6 »
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: 2010-янв-12 17:45 
Не в сети

Зарегистрирован: 2009-май-25 15:07
Сообщения: 158
Откуда: АО "ПКК Миландр"
DimonD писал(а):
компилятора CC7A
IDE 1886 7.5
EVAL12A
----------------------
#include <mil1886BE5.h>
а если написать:
#include <VE5_CC.h> то ошибок нет.
-----------------------------------------------------------------------------
И еще вопрос, что необходимо для отладки программы в режиме Debug.
В наличие:
Отладочный комплект для микроконтроллера 1886ВЕ5У
В компьютере отсутствует LPT :(
-----------------------------------------------------------------------------
P.S.
Демонстрационно-отладочная плата Eval12.
Техническое описание.

7.1.4.3. Сторожевой таймер: включен предделитель 1. В этом режиме не работает!!! Надо WDT disabled
1. Правильно. Для СС7А требуется VE5_CC.h. mil1886BE5.h для РIСС.
2. Если нет LPT, то Вы можете приобрести у нас USB программатор.
Режим Debug описан в руководстве пользователя IDE1886.
3. Да, WDT должен быть отключен. Eval12_тех_описание.doc будет исправлен.


Вынести предупреждение
Вернуться к началу
 Заголовок сообщения:
СообщениеДобавлено: 2010-янв-13 12:49 
Не в сети

Зарегистрирован: 2009-ноя-30 12:20
Сообщения: 31
Откуда: СПБ
Про режим Debug я что-то не понял. Тот что USB программатор, который входит “отладочный комплект для микроконтроллера 1886ВЕ5У” не годится я вас правильно понял?
И еще прошу совета, каким программным симулятором МК воспользоваться, чтобы прогнать сишный фаил. Пишу на С, компилятор СС7А.
Заранее спасибо.


Вынести предупреждение
Вернуться к началу
 Заголовок сообщения:
СообщениеДобавлено: 2010-янв-13 14:56 
Не в сети

Зарегистрирован: 2009-май-25 15:07
Сообщения: 158
Откуда: АО "ПКК Миландр"
DimonD писал(а):
Про режим Debug я что-то не понял. Тот что USB программатор, который входит “отладочный комплект для микроконтроллера 1886ВЕ5У” не годится я вас правильно понял?
И еще прошу совета, каким программным симулятором МК воспользоваться, чтобы прогнать сишный фаил. Пишу на С, компилятор СС7А.
Заранее спасибо.
Для режима Debug в IDE1886 может использоваться как LPT, так и USB программатор.
Того, что у Вас есть, достаточно.
Для симуляции можно использовать MPLAB фирмы Microchip.
Т. к. СС7А сильно оптимизирует код и напрямую не поддерживается симуляторами, используйте следующую последовательность действий:
1. Скомпилируйте исходник с ключами, которые генерит для СС7А IDE1886. Вы получите на выходе ассемблерный файл.
2. Отлаживайте этот файл в симуляторе MPLAB или в режиме Debug в IDE1886.


Вынести предупреждение
Вернуться к началу
 Заголовок сообщения:
СообщениеДобавлено: 2010-фев-16 16:47 
Не в сети

Зарегистрирован: 2009-ноя-30 12:20
Сообщения: 31
Откуда: СПБ
Выложите, пожалуйста, пример многозадачного приложения с применением режима LEANSLICE компилятора СС7А для отладочной платы 1886ВЕ5У(Eval12) хотя бы моргание светодиодам. Что-то у меня не получается...


Вынести предупреждение
Вернуться к началу
 Заголовок сообщения:
СообщениеДобавлено: 2010-фев-16 17:36 
Не в сети

Зарегистрирован: 2009-май-25 15:07
Сообщения: 158
Откуда: АО "ПКК Миландр"
DimonD писал(а):
Выложите, пожалуйста, пример многозадачного приложения с применением режима LEANSLICE компилятора СС7А для отладочной платы 1886ВЕ5У(Eval12) хотя бы моргание светодиодам. Что-то у меня не получается...
Здесь уже было:
download.php?id=46


Вынести предупреждение
Вернуться к началу
 Заголовок сообщения:
СообщениеДобавлено: 2010-фев-17 12:11 
Не в сети

Зарегистрирован: 2009-ноя-30 12:20
Сообщения: 31
Откуда: СПБ
Читал
Вот взял за основу пример и немного изменил
Что я не так делаю?


Вложения:
Комментарий к файлу: EVAL12A LEANSLICE компилятора СС7А
main.zip [1.33 КБ]
383 скачивания
Вынести предупреждение
Вернуться к началу
 Заголовок сообщения:
СообщениеДобавлено: 2010-фев-17 19:23 
Не в сети

Зарегистрирован: 2010-фев-17 19:07
Сообщения: 2
Откуда: АО "ПКК Миландр"
DimonD писал(а):
Читал
Вот взял за основу пример и немного изменил
Что я не так делаю?
Пример взяты Вами из перевода описания leanslice нами не проверялся.
В ситуации с OPTION разберемся в ближайшее время.
download.php?id=42 здесь лежит пример приложения "часы/будильник/таймер" отлаженный на ВЕ2. Можно пока попробовать его.


Вынести предупреждение
Вернуться к началу
 Заголовок сообщения:
СообщениеДобавлено: 2010-фев-18 14:54 
Не в сети

Зарегистрирован: 2009-ноя-30 12:20
Сообщения: 31
Откуда: СПБ
Помогите разобраться в LEANSLICE, это мой первый опыт в многозадачности и еще плохо понимаю механизм работы.

Вот простенький набросок программы:
#include <VE5_CC.h>
#pragma taskOptions 1

#define LED2 PORTD.6
#define LED3 PORTD.7
#define LED4 PORTE.0
#define LED5 PORTE.1
#define LED6 PORTE.2
#define LED7 PORTE.3

static uns32 pause1, pause2, i;
static unsigned char inter1, inter2, inter3;

Task Process1(void)
{
while(1)
{
if (inter1 == 1) {LED7=1; LED6=0; inter1=0;}
else {LED7=0; LED6=1; inter1=1;}
for(pause1=0; pause1<1000000; pause1++){}
waitState();
}
}

Task Process2(void)
{
while(1)
{
if (inter2 == 1) {LED4=1; LED5=0; inter2=0;}
else {LED4=0; LED5=1; inter2=1;}
for(pause2=0; pause2<50000; pause2++){}
waitState();
}
}

void main(void)

{
DDRE = 0; DDRD = 0;
inter1=0; inter2=0; inter3=0;
LED2=0; LED3=0; LED4=0; LED5=0; LED6=0; LED7=0;

startTask(Process1);
startTask(Process2);

while(1)
{
if (inter3 == 1) {LED2=1; LED3=0; inter3=0;}
else {LED2=0; LED3=1; inter3=1;}

for(i=0; i<50000; i++){}
taskSlicer();
}
}

Данная программа выполняет последовательно операции, и не какой многозадачности нет. Просто taskSlicer() запускает последовательно функции Process1, Process2. Как сделать, что бы была псевдо параллельность выполнение Process1, Process2 и основной программы?


Вынести предупреждение
Вернуться к началу
 Заголовок сообщения:
СообщениеДобавлено: 2010-фев-19 13:00 
Не в сети

Зарегистрирован: 2010-фев-17 19:07
Сообщения: 2
Откуда: АО "ПКК Миландр"
Цитата:
Помогите разобраться в LEANSLICE, это мой первый опыт в многозадачности и еще плохо понимаю механизм работы.
Leanslice реализует разделение по коду, т.е. задачи переключаются
после выполнения некоторого небольшого фрагмента кода. При этом все переменные неактивных задач автоматически сохраняются.
При переключении программа вываливается в main, где и осуществляется управление задачами.

Подробнее об этом можно прочесть в статье "Реализация многозадачных приложений на МК серии 1886" (журнал "ЭЛЕКТРОНИКА: Наука, Технология, Бизнес" (№6, 2009). Публикации.


Вынести предупреждение
Вернуться к началу
 Заголовок сообщения:
СообщениеДобавлено: 2010-апр-13 10:36 
Не в сети

Зарегистрирован: 2009-ноя-30 12:20
Сообщения: 31
Откуда: СПБ
Чем отличается новая версия компилятора от старой и где можно ее скачать(не демо)


Вынести предупреждение
Вернуться к началу
 Заголовок сообщения:
СообщениеДобавлено: 2010-апр-13 11:00 
Не в сети

Зарегистрирован: 2009-май-22 09:01
Сообщения: 1299
Откуда: АО "ПКК Миландр"
DimonD писал(а):
Чем отличается новая версия компилятора от старой и где можно ее скачать(не демо)
Маркетинг блин! Лишь бы что нить написать....

Пока это бета версия. Она еще тестируется. Как будет финальная версия тем у кого лицензионные копии, будет выслана новая версия привязанная к ключам.


Вынести предупреждение
Вернуться к началу
 Заголовок сообщения:
СообщениеДобавлено: 2010-апр-13 11:17 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 2009-янв-20 10:05
Сообщения: 777
DimonD писал(а):
Чем отличается новая версия компилятора от старой и где можно ее скачать(не демо)
Программное обеспечение.


Вынести предупреждение
Вернуться к началу
 Заголовок сообщения:
СообщениеДобавлено: 2010-апр-13 13:15 
Не в сети

Зарегистрирован: 2009-ноя-30 12:20
Сообщения: 31
Откуда: СПБ
-=Sergei=-

ОК! бум ждать...


Вынести предупреждение
Вернуться к началу
 Заголовок сообщения:
СообщениеДобавлено: 2010-апр-14 12:05 
Не в сети

Зарегистрирован: 2010-янв-08 02:11
Сообщения: 23
Откуда: Азов
Вопрос по использованию компилятора Си CC7A.

Есть код на асме который необходимо переписать на Си:
Cap3:
                PUSH        ; макрос сохранения контек
	movlr	BANK3
	movfp	ADR_JUMP+BAIT0,PCLATH
	movfp	ADR_JUMP+BAIT1,PCL
			
	
       CAP3_REGIM_00:
			
	...

	movc16	CAP3_REGIM_01,ADR_JUMP
	POP
	retfie
	
	
       CAP3_REGIM_01:

	...
			
	movc16	CAP3_REGIM_02,ADR_JUMP
	POP
	retfie
			
	
       СAP3_REGIM_02:

	...
			
	movc16	CAP3_REGIM_03,ADR_JUMP
	POP
	retfie
... и далее таких блоков идет много :D
CAP3_REGIM_65:

	...
			
	movc16	CAP3_REGIM_03,ADR_JUMP
	POP
	retfie

Оператор SWITCH не подходит слишком громоздко, если можно использовать SKIP(X), то как вычислять смещение?
Попытался написать с использованием втроенного ассемблера, но он видит метки которые были обьявлены ранее. Плохо что указателей на функции в компиляторе нет.
КАК НА СИ НАПИСАТЬ ПОДОБНЫЙ КОД?


Вынести предупреждение
Вернуться к началу
 Заголовок сообщения:
СообщениеДобавлено: 2010-май-05 08:10 
Не в сети

Зарегистрирован: 2010-янв-08 02:11
Сообщения: 23
Откуда: Азов
Как работает SKIP разобрался. Пример переписанного кода:
skip(AddressSkip);
	LineGoto;
	#pragma computedGoto 0

           CAP3_REGIM_00:
                    ...
	AddressSkip++;
	return;

           CAP3_REGIM_01:
                    ...
	AddressSkip++; 
                    return;

           CAP3_REGIM_65:
                     ...
                    AddressSkip = 0; 
                    return; 
LineGoto мокрос:
#define LineGoto \
	goto CAP3_REGIM_00;\
                    goto CAP3_REGIM_01;\
                    goto CAP3_REGIM_02;\
                    ...	
	goto CAP3_REGIM_65;\


Вынести предупреждение
Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 90 сообщений ]  На страницу « 1 2 3 4 5 6 »

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость


Быстрые действия:
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти: 

Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB