0 / 0 / 0
Регистрация: 03.11.2010
Сообщений: 3
1

Преобразование типов при передаче переменных в процедуру

03.11.2010, 10:45. Показов 740. Ответов 5
Метки нет (Все метки)

Есть код

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
void GLCD_WriteData(unsigned char dataToWrite)
{
SED1335_DATA_PORT = dataToWrite;
SED1335_DATA_DIR = 0xFF;
SED1335_CONTROL_PORT &= ~(SED1335_CS | SED1335_A0 | SED1335_WR);
asm("nop");
SED1335_CONTROL_PORT |= (SED1335_CS | SED1335_A0 | SED1335_WR);
}
 
void Set_X_Y(int x,int y)
{
//unsigned char l,h=0;
unsigned int line=0;
line=x*240+y;
unsigned char l=line&0x00FF;
unsigned char h=((line&0xFF00)>>8);
  GLCD_WriteCommand(0x46);
  GLCD_WriteData(l);
  GLCD_WriteData(h);
  
  POS_X=x;
  POS_Y=y;
}

Почему то l и h неправильно передаются в функцию GLCD_WriteData.
Но если написать GLCD_WriteData(0x1F), то все работает
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.11.2010, 10:45
Ответы с готовыми решениями:

Несоответствие типов переменных при создании символьного стека
как задать правильно символьный стек,чтобы компилятор не ругался на меня? #include <stdio.h>...

Преобразование типов переменных
Доброго вечера. Можете показать при пример преобразования переменной TString в AnsiString ...

Преобразование типов переменных
Возник небольшой вопрос Конвертировать следующие форматы BIT в FLOAT NVARCHAR в INT DATETIME...

Преобразование типов переменных
Осуществить преобразование типов переменных явным и неявным способом по следующим схемам: float...

5
4 / 4 / 1
Регистрация: 03.06.2010
Сообщений: 55
03.11.2010, 10:55 2
C++
1
2
unsigned char l=line&0x00FF;
unsigned char h=((line&0xFF00)>>8);
Ты в дебуге смотрел, чему равны l и h? Может быть формула неверная?
0
0 / 0 / 0
Регистрация: 03.11.2010
Сообщений: 3
03.11.2010, 10:59  [ТС] 3
В дебуге смеотрел. Причем и в процедуру вроде данные при отладке тоже попадают верные и такие как надо..
0
4 / 4 / 1
Регистрация: 03.06.2010
Сообщений: 55
03.11.2010, 12:39 4
А в чем тогда проблема? Значит переменные передаются правильно.
0
0 / 0 / 0
Регистрация: 03.11.2010
Сообщений: 3
03.11.2010, 12:45  [ТС] 5
Проблема в том, что в дебугере все правильно а реально на железе ничего не работает
0
4 / 4 / 1
Регистрация: 03.06.2010
Сообщений: 55
04.11.2010, 02:44 6
Не знаю, поможет или нет, загляни сюда: http://asm.netcode.ru/cpp/?lan... artID=2757
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.11.2010, 02:44

Преобразование русских букв при передаче из формы...
В едитбоксе ввожу 'Нет' - в обработчике отображается как '%CD%E5%F2'. Как эту билибердень...

Ошибки при передаче данных в динамическом массиве из основной проги в процедуру
почему возникают ошибки компиляции со следующим комментом Error:Parameters or result types cannot...

Написать процедуру для суммирования матриц. Ошибка при передаче массива в функцию
Помогите пожалуйста! Дано задание: Написать процедуру для суммирования матриц. С ее помощью...

Access97. При передаче или приеме переменных функциями все русские значения отбражаются кракозяблами
Программа на Access 97 работает с 98 года. Всего около 30 инсталляций на разные виндовсы(95, OSR,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.