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

 
 
> codevision and i2c, туплю
dspy
сообщение May 29 2007, 05:50
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 49
Регистрация: 5-03-07
Пользователь №: 25 880



доброе время суток!
вот уже второй день роюсь в нете и мануалах и туплю
вот вопрос: есть число размером 2 байта, его нужно передать по i2c, как разбить это число
на старший и младший байт help.gif
заранее благодарен
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
CSB
сообщение May 29 2007, 20:58
Сообщение #2


Частый гость
**

Группа: Новичок
Сообщений: 100
Регистрация: 9-03-06
Пользователь №: 15 088



Еще в CV можно было объявить 8-разрядный указатель, присвоить ему адрес 16-разрядной переменной и обращаться к ней как к массиву, но это только для данного компилятора. Да и в текущей версии может не работать, но проверить стоит.

Код
    char ptr;
    int foo;

    ptr = &foo;
    ptr[0] = 0xCD;
    ptr[1] = 0xAB;

    //foo == 0xABCD;


Или можно сделать через объединение.
Код
    union u_tag
    {
        int foo;
        char bar[2];
    } u;

    u.bar[0] = 0x34;
    u.bar[1] = 0x12;

    //u.foo == 0x1234;
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 23:13
Рейтинг@Mail.ru


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