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

 
 
> КИХ фильтр в CCS под C55xx
Skaf
сообщение May 15 2011, 11:32
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 228
Регистрация: 4-06-09
Пользователь №: 49 940



Всем привет. Стоит задача написать простенький КИХ фильтр под процессор C55xx фирмы TI в Code Composer Studio.

Это домашнее задание в универе. СИльно не пинайте пожалуйста, т.к. пока не шибко в этом разбираюсь.

Я написал КИХ фильтр для компьютера на обычном Си. Проверил, все работает. Но в CCS не хочет.

Я сразу подумал, что дело в типах данных. Оказалось, что sizeof(int) у CCS равен 1, sizeof(long int)=2, sizeof(long long int) = 4

Я создал свои типы

typedef long int myINT16;
typedef long long int myINT32;

Создал бинарный файл, куда записал 0x01 0x02 0x03 0x04

Делаю чтение
Код
fread(&inValue, sizeof(myINT16), 1, fp);


Переменная inValue становится равной 65538, что 10002 в HEX.
На копьютере был бы результат 0201.... а тут не пойми что..

Собственно вопрос- как всетаки сделать нормально, чтобы получать ожидаемые данные. Вообще эти процессоры BigEndian или LiteEndian или какие вообще?

Заранее спасибо.

Сделал файл 0x12 0x34, в переменную считалось 0x120034 откуда 00 по середине взялся?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Skaf
сообщение May 16 2011, 20:12
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 228
Регистрация: 4-06-09
Пользователь №: 49 940



Цитата
Если кратко и по-русски, то тип int хоть и 16-битный, но sizeof'ом будет все равно 1, а не 2


Ну в таком случае объявил переменную как int.

читаю файл с содержимым 0x12 0x34 так

Код
fread(&inValue, 2, 1, fp);


Жестко указываю что читать 2 байта. Смотрю что в памяти творится- переменная 0x0012, а следующая часть памяти 0x0034- там кстати уже другая переменная. Он в ее память залезает. Вобщем не понятно как сделать чтобы переменная стала таки 0x1234
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 19th July 2025 - 22:43
Рейтинг@Mail.ru


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