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

 
 
> short long=24бит Как?
ArtemKAD
сообщение Mar 1 2017, 08:51
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 508
Регистрация: 26-06-06
Из: Киев
Пользователь №: 18 364



Никто не подскажет как можно в IAR заставить работать с 24 битными переменными? Что-то типа short long PIC-овского компилятора...
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
ArtemKAD
сообщение Mar 1 2017, 16:59
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 508
Регистрация: 26-06-06
Из: Киев
Пользователь №: 18 364



В общем мыши плакали, кололись, но....

Пока что у меня получилось примерно такое решение:

Код
typedef struct
{
unsigned char m[3];
}u24;

typedef struct
{
unsigned long code     :12;
unsigned long galey     :12;
} p24;

/// использование

struct
{
    u24 a;
    u24 b;
    u24 c;
    u24 d;
} test_24={{0x12,0x34,0x56},{0x78,0x9A,0xBC},{0xDE,0xF0,5},{7,8,9}};

unsigned int g,c;

c=(*(p24 *)&test_24.a).code;    // c=0x0412
g=(*(p24 *)&test_24.b).galey;    // g=0x0BC9


Или еще проще:
Код
typedef struct
{
unsigned long code     :12;
unsigned long galey     :12;
} p24;

/// использование

struct
{
    unsigned char a[3];
    unsigned char b[3];
    unsigned char c[3];
    unsigned char d[3];
} test_24={{0x12,0x34,0x56},{0x78,0x9A,0xBC},{0xDE,0xF0,5},{7,8,9}};

unsigned int g,c;

c=(*(p24 *)&test_24.a).code;    // c=0x0412
g=(*(p24 *)&test_24.b).galey;    // g=0x0BC9


Кривовато, но уже что-то...
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- ArtemKAD   short long=24бит Как?   Mar 1 2017, 08:51
- - k155la3   Если без знака то char long24_mem_area[4]; // 24...   Mar 1 2017, 11:39
|- - ArtemKAD   Цитата(k155la3 @ Mar 1 2017, 13:39) Если ...   Mar 1 2017, 12:06
|- - scifi   Цитата(ArtemKAD @ Mar 1 2017, 15:06) Но м...   Mar 1 2017, 12:21
|- - k155la3   Цитата(ArtemKAD @ Mar 1 2017, 16:06) . . ...   Mar 1 2017, 12:51
||- - ArtemKAD   Цитата(k155la3 @ Mar 1 2017, 14:51) Нескр...   Mar 1 2017, 13:43
||- - k155la3   Цитата(ArtemKAD @ Mar 1 2017, 17:43) Пока...   Mar 1 2017, 14:24
|- - jcxz   Цитата(ArtemKAD @ Mar 1 2017, 14:06) Но м...   Mar 1 2017, 14:00
|- - zltigo   Цитата(jcxz @ Mar 1 2017, 16:00) __packed...   Mar 1 2017, 14:34
||- - jcxz   Цитата(zltigo @ Mar 1 2017, 16:34) int x ...   Mar 1 2017, 15:21
|- - ArtemKAD   Цитата(jcxz @ Mar 1 2017, 16:00) __packed...   Mar 1 2017, 15:10
|- - scifi   Цитата(ArtemKAD @ Mar 1 2017, 18:10) Попр...   Mar 1 2017, 15:22
||- - zltigo   Цитата(scifi @ Mar 1 2017, 17:22) В режим...   Mar 1 2017, 16:12
|- - jcxz   Цитата(ArtemKAD @ Mar 1 2017, 17:10) Попр...   Mar 1 2017, 15:26
|- - ArtemKAD   Цитата(jcxz @ Mar 1 2017, 17:26) На что? ...   Mar 1 2017, 15:31
|- - jcxz   Цитата(ArtemKAD @ Mar 1 2017, 17:31) На ...   Mar 1 2017, 15:35
- - adnega   Можно попробовать так, но я бы не стал так делать,...   Mar 1 2017, 12:22


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

 


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


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