Перейти к содержанию
    

Помогите пожалуйста перенести программу написанную на С на Code Composer Studio.

#include "stdafx.h"

#include <iostream>

 

using namespace std;

 

int main()

{

const int SIZE = 10;

int mas = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};

cin >> mas;

 

const int DIGIT = 5;

 

for (int i = 0; i < SIZE; i++)

mas *= DIGIT;

cout << mas

return 0;

}

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Гость pdk

А Вы уверенны что для этой программы нужен 6678?

Скачайте PDK там есть готовые работающие примеры, в примерах уже настроен вывод в консоль, меняете Ваш cout на вывод в консоль, а вместо cin по аналогии дописываете чтение из консоли....все.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Мне просто дальше надо будет программировать именно этот процессор. А сейчас только пытаюсь разобраться.

 

Мне просто дальше надо будет программировать именно этот процессор. А сейчас только пытаюсь разобраться. Где его скачать? Можете скинуть ссылку.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Щас набегут и просто будут стебаться :)

Дружеский совет-переделайте на "чистый" C для начала свои cin и cout

ну а начинать нужно совсем не с этого-

обычно я изучаю новый камень (любой) просто написав драйвер последовательного порта.

посидите денек-глядишь камень и чуток освоите!

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Щас набегут и просто будут стебаться :)

Дружеский совет-переделайте на "чистый" C для начала свои cin и cout

ну а начинать нужно совсем не с этого-

обычно я изучаю новый камень (любой) просто написав драйвер последовательного порта.

посидите денек-глядишь камень и чуток освоите!

Спасибо за совет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Встала необходимость освоения процов TMS320C66x. До этого писал для ADSP- TS101,201. Отладочной комплекта пока нет, т.к. еще не определились конкретно с камнем. Так что пока симулятор. Набросал первую молотилку пока на C.

 

Вопрос: в каком регистре или области памяти посмотреть счетчик тактов (CPU cycle counter). В регистрах обнаружил пока только PC.

Изменено пользователем su_evgeniy

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Встала необходимость освоения процов TMS320C66x. До этого писал для ADSP- TS101,201. Отладочной комплекта пока нет, т.к. еще не определились конкретно с камнем. Так что пока симулятор. Набросал первую молотилку пока на C.

 

Вопрос: в каком регистре или области памяти посмотреть счетчик тактов (CPU cycle counter). В регистрах обнаружил пока только PC.

 

Нашел отображение в самой нижней панели, но откуда он считываеся?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Нашел отображение в самой нижней панели, но откуда он считываеся?

Если работаете с симулятором, то он виртуальный. Если с эмулятором и реальной железякой, то он доступен только через JTAG, через подсистему реалтайм-анализа процессора, если нужно считать что-то в программе самому, то юзать надо таймер.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

в программе пишите:

typedef unsigned int U32;
extern volatile cregister U32 TSCL, TSCH;

U32 tsc32(void)
{
  U32 x = TSCL;

  return x;
}

 

потом где-нибудь ниже, например в main:

int  main(void)
{
  U32 t1, t2;

  // ...

  t1 = tsc32();
  my_data_processtor( my_data );
  t2 = tsc32();

  printf( "My data processing consumed CPU cycles: %u\n", (t2-t1) );

  return 0;
}

 

Если уж очень длинные интервалы (более 2^32 / частоту CPU), то можно использовать 64-разрядный TSC = ((TSCH<<32) | TSCL);

 

 

Да, про фичу забыл сказать. Чтобы TSC начал считать, нужно записать в TSCL 0 как-нибудь после сброса, а то он по умолчанию стоит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо! Через таймеры так через таймеры и разбираться уже с ними не надо все подсказали!

Еще вопрос: как в С определять комплексный тип данных, чтобы потом правильно подставлялись инструкции ассемблера комплексного умножения. Может include какой? Или же все-таки макросами нужно самому описывать?

Изменено пользователем su_evgeniy

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Нужно добиться параллелизма в программе под этот процессор, как это сделать. На VS использовал Openmp но в CCS естественно не работает. Что и как делать. Спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Судя по эмулятору, функция main вызывается для всех ядер. Так что в ней можно написать

extern cregister volatile unsigned int DNUM;

прочитать из этого регистра номер ядра, и в зависимости от этого номера выполнять ту или иную ветку программы. Может быть, получится.

Интересно, какому ядру будут приходить прерывания - всем сразу или какому-нибудь случайному.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Помогите пожалуйста написать программу на С что бы она работала на CCS (хотя бы чтоб происходило сложение двух чисел) но задействовались к примеру пару ядер процессора. Спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Помогите кто работал в Code Composer Studio 5.0!!!

В Code Composer Studio 5.0 в новом проекте при создании NewTargetConfiguration.ccxml, нужно указать серию процессора. В списке значатся 2 девайса:

С6678 Device Cycle Approximate Simulator, Big Endian

С6678 Device Cycle Approximate Simulator, Little Endian

Вопрос: чем они отличаются?

 

Создал новый проект по типу Hello Word,

Компилируется удачно, но когда нажимаю на "зеленого жука" выдается ошибка по адресу 0x8000000, либо load program error. Что делать?

 

 

и еще: Code Composer Studio 5.0 постоянно "вылетает". Не только у меня?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Отличаются Endianess-ом (к своему стыду я не знаю русскоязычного термина, короче это порядок следования байт в слове, либо младший первый, либо старший первый). Надо выбирать тот вариант, в котором будет запущен реальный процессор и под который соответственно будет компилироваться программа.

 

Насчет вылетания композера, да бывает изредка.

 

лоад програм еррор - проверьте карту памяти у симулятора. скорее всего у него там нет памяти, куда программа загружается

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...