Форум программистов, компьютерный форум, киберфорум
Наши страницы
Микроконтроллеры Atmega AVR
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/28: Рейтинг темы: голосов - 28, средняя оценка - 4.75
Vyssir
0 / 0 / 0
Регистрация: 13.05.2012
Сообщений: 118
1

AVR Studio. Работа с байтами

18.01.2013, 16:11. Просмотров 4981. Ответов 10
Метки нет (Все метки)

Имеются старший и младший 8 битных байта. Их нужно преобразовать в один 16 битный байт и сравнить с таблицей значений.
Не подскажите как это сделать, или ссылку на пример скиньте.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.01.2013, 16:11
Ответы с готовыми решениями:

CAVR против AVR Studio, что не так в программе под AVR Studio
Проблема такая, есть исходник, если его компилировать в CAVR заливаю в МК все...

Работа с ATMega128 . AVR studio
Всем привет! Я написал код на ассемблере , но не знаю как написать точно такой...

Работа с LCD (ATMega32, AVR Studio)
Здравствуйте , у появилась проблема с программированием в AVR studio , а именно...

AVR Studio 6 и AVR Toolchain вопросы!
Всем доброго времени суток. Решил я написать софтинку в новой студии от...

GCC и AVR Studio 5 и AVR Studio 4.18
Доброго дня Всем! Кто может подсказать следующее - у меня установлена AVR...

10
Johmmy0007
1 / 1 / 0
Регистрация: 30.08.2011
Сообщений: 9,944
18.01.2013, 16:18 2
>>в один 16 битный байт
???

попробуйте с помощью указателей, если порядок следования байтов соответствует 16-слову в таблице, в С это вроде возможно
или сравнивайте побайтно, рассматривая значение в таблице как два байта
0
itysiy
0 / 0 / 0
Регистрация: 18.01.2012
Сообщений: 1,418
18.01.2013, 16:18 3
Цитата Сообщение от Vyssir
Имеются старший и младший 8 битных байта. Их нужно преобразовать в один 16 битный байт и сравнить с таблицей значений.
Не подскажите как это сделать, или ссылку на пример скиньте.
на Си?
Код
uint16_t data;
uint8_t HByte, LByte;

data = (uint16_t)(LByte | (HByte << 8));
0
_moysi
0 / 0 / 0
Регистрация: 19.11.2010
Сообщений: 790
18.01.2013, 16:42 4
Сравниваем старшие байты. Если один больше или меньше другого - всё понятно.
Если старшие байты равны - тогда сравниваем младшие.

Это было сравнение на "больше или меньше" в предположении, что таблица тоже состоит из пар "старшийбайт+младшийбайт". Иначе непонятно, чего хотелось.
На тупо равенство слишком очевидно сравнивать.

При чём тут аврстудио?
0
Vyssir
0 / 0 / 0
Регистрация: 13.05.2012
Сообщений: 118
18.01.2013, 17:05 5
Цитата Сообщение от itysiy
Цитата Сообщение от Vyssir
Имеются старший и младший 8 битных байта. Их нужно преобразовать в один 16 битный байт и сравнить с таблицей значений.
Не подскажите как это сделать, или ссылку на пример скиньте.
на Си?
Код
uint16_t data;
uint8_t HByte, LByte;

data = (uint16_t)(LByte | (HByte << 8));
Спасибо, премного благодарен. Понадобилось при работе с DS18B20.
0
YTYOUT
0 / 0 / 0
Регистрация: 02.10.2012
Сообщений: 1,946
18.01.2013, 18:05 6
Понадобилось при работе с DS18B20.
А нахрен для DS
сравнить с таблицей значений
0
Vyssir
0 / 0 / 0
Регистрация: 13.05.2012
Сообщений: 118
18.01.2013, 21:35 7
Для использования таблицы
Код
Table 1. Temperature/Data Relationship
TEMPERATURE (°C)       DIGITAL OUTPUT        DIGITAL OUTPUT
(BINARY)              (HEX)
+125                  0000 0111 1101 0000       07D0h
+85*                  0000 0101 0101 0000       0550h
+25.0625              0000 0001 1001 0001       0191h
+10.125               0000 0000 1010 0010       00A2h
+0.5                  0000 0000 0000 1000       0008h
0                     0000 0000 0000 0000       0000h
-0.5                  1111 1111 1111 1000       FFF8h
-10.125               1111 1111 0101 1110       FF5Eh
-25.0625              1111 1110 0110 1111       FE6Fh
-55                   1111 1100 1001 0000       FC90h
0
THI BIOST
0 / 0 / 0
Регистрация: 23.01.2010
Сообщений: 1,142
18.01.2013, 21:37 8
Хм... А зачем такая таблица? В цифры переводить? Там же буквально пара операций...
0
Johmmy0007
1 / 1 / 0
Регистрация: 30.08.2011
Сообщений: 9,944
18.01.2013, 21:44 9
таблица - это просто пример нескольких значений, вам то он зачем в устройстве?
0
tyzord66
0 / 0 / 0
Регистрация: 14.10.2011
Сообщений: 806
18.01.2013, 23:37 10
Цитата Сообщение от Vyssir
Для использования таблицы
Буквально два дня назад, в этом раздел, по этому датчику был пример и чтения и преобразования данных, правда на ассемблере.
0
Vyssir
0 / 0 / 0
Регистрация: 13.05.2012
Сообщений: 118
19.01.2013, 12:12 11
Цитата Сообщение от Johmmy0007
таблица - это просто пример нескольких значений, вам то он зачем в устройстве?
Вообще так сказать для общего развития, а в устройстве при определенной температуре будет не соответствие реального значения к выводимому, особенно это видно в протэусе.
0
19.01.2013, 12:12
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.01.2013, 12:12

AVR Studio 6 Avr simulator
Подскажите каким образом стартануть прогу в avr symulator с адреса boottooder...

Установить AVR Studio 6 после Visual Studio 10 SP1
При уже установленной Visual Studio 10 установщик AVR Studio 6 устанавливает...

Почему AVR Studio 4, а не Atmel Studio 6?
По какой причине большинство специалистов по AVR микроконтроллерам в основном...


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

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

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