IAR AVR C, низкая / высокая байт переменной INT

G

Guest

Guest
Нуждаются в доступе к байт целое (16 бита).

Я могу делать это в случае, если я знаю целое адрес:
знаков * variable1 = (символ *) 0xXXX (адрес целое)
знаков * variable2 = (символ *) 0xXXX 1 ( 1 адрес целочисленного)

Есть ли какие-либо другим образом?
знаков * variable1 = (символ *) IntVariable;-не может быть составлен

Перемещение целое влево /
вправо на получение Низкий / Высокий байтовой --- это не идея для меня.

... Нужна помощь передовых программист ...

 
Чем лучше это делать через профсоюз

типа структуры Чара
(
символ char1;
символ char2;
) Символов;

типа союза Талль
(
int16 НИТС;
charn символов;
Mynumber);

mynumber tnum1.intn = 65535;
символ first_byte = tnum1.charn.char1;
символ second_byte = tnum1.charn.char2;

 
Что об этом:

профсоюз
(
INT целое;
Неподписанный символ байт [2];
) переменная;

variable.integer доступа к ней, как целое
variable.byte [0] и variable.byte [1], чтобы доступ к нему bytewise

надеюсь, что это полезно для вас

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

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Улыбка" border="0" />
 
Спасибо большое, это идеальный выход!!!
Я забыл о союзы ...

Off: собираюсь идти о союзах.

 
отладки были успешными, благодаря опять

 
Или примерно так:

INT целое;
символ byteHi, byteLo;

byteHi = целое / 256;
byteLo = целое% 256

----------------------
или
byteHi = целое>> 8;
byteLo = целое;

 
Эскимосский, этот код нуждается additionals переменных в памяти, который будет создан, я получил их нету вообще

 

Welcome to EDABoard.com

Sponsor

Back
Top