|
2 байта в AVR, как сранить и обработать 16 разрядов в ATmega? |
|
|
|
Dec 23 2007, 23:37
|
Участник

Группа: Участник
Сообщений: 67
Регистрация: 30-11-07
Пользователь №: 32 846

|
Вопрос собственно в следующем: разработана плата (и что плохо изготовлена), где есть связка Atmega128 и термодатчик MAX6630 http://www.maxim-ic.com/quick_view2.cfm/qv_pk/2577/t/alВыход термодатчика - 13 бит (12+знак) и еще мусор до 2 байт (по spi). как сравнить и обработать данные в восьмибитном микроконтроллере?
|
|
|
|
|
 |
Ответов
|
Dec 29 2007, 09:08
|
Частый гость
 
Группа: Участник
Сообщений: 147
Регистрация: 7-12-07
Пользователь №: 33 057

|
Ниже приведена ассемблерная реализация алгоритма для MSC-51 (в AVR пока не силён). В примере преобразуется десятичное число 23456. Удлинняет код та особенность, что "полезные" операции можно выполнять только с аккумулятором. При попытке перевести реализацию на AVR столкнулся с проблемой - не могу найти операцию двоично-десятичной коррекции (в нижеприведеном коде это команда DA). Это мне так не повезло или такой операции у AVR вообще нет?
start: mov r3,#0 ; результат старший байт mov r4,#0 ; результат средний байт mov r5,#0 ; результат младший байт mov r6,#05bh ; исходные данные старший байт mov r7,#0a0h ; исходные данные младший байт mov r0,#16 ; счётчик циклов cycle: mov a,r7 rlc a mov r7,a mov a,r6 rlc a mov r6,a mov a,r5 addc a,r5 da a mov r5,a mov a,r4 addc a,r4 da a mov r4,a mov a,r3 addc a,r3 da a mov r3,a djnz r0,cycle
Сообщение отредактировал MMos - Dec 29 2007, 09:11
|
|
|
|
Сообщений в этой теме
pimen 2 байта в AVR Dec 23 2007, 23:37 DASM C чем именно сравнить и как обработать ? На каком ... Dec 24 2007, 00:13 arttab Организовать хранение 2 Б + Цитатамусор до 2 байт
... Dec 24 2007, 02:49 MMos Расскажи поподробнее, что бы ты делал с данными, е... Dec 25 2007, 08:14 pimen первоначально планировал сравнение значения темпер... Dec 25 2007, 11:07 Algol Попробуйте потестировать в отладчике мою функцию
u... Dec 25 2007, 11:22 DASM Цитата(Algol @ Dec 25 2007, 14:22) отрыл ... Dec 26 2007, 01:55 arttab Довольно странные вопросы. Если пользуетесь Си ко... Dec 26 2007, 01:28 pimen Всех с наступившим Новым Годом!
написал прогу ... Jan 2 2008, 23:35 vooon прочитать например так:
(старший байт первый)
Код... Jan 3 2008, 11:41 slanted Цитата(pimen @ Dec 24 2007, 03:37) Вопрос... Jan 3 2008, 11:51 pimen Цитата(slanted @ Jan 3 2008, 14:51) Для э... Jan 3 2008, 14:57  slanted Цитата(pimen @ Jan 3 2008, 18:57) а как э... Jan 3 2008, 16:36 pimen ЛЮДИ!!!!
Объясните!
есть прогр... Jan 6 2008, 01:02 zltigo Цитата(pimen @ Jan 6 2008, 03:02) это неч... Jan 6 2008, 01:47  slanted Цитата(zltigo @ Jan 6 2008, 05:47) Главна... Jan 6 2008, 12:12   zltigo Цитата(slanted @ Jan 6 2008, 14:03) И где... Jan 6 2008, 12:16 AHTOXA ЦитатаT=(0b10001100<<8)>>3;
...
выдает... Jan 6 2008, 05:41 pimen Еще вопрос по С:
использовал оператор goto. Сам оп... Jan 10 2008, 20:22 mdmitry Цитата(pimen @ Jan 10 2008, 23:22) Еще во... Jan 10 2008, 20:48 slanted Цитата(pimen @ Jan 11 2008, 00:22) Еще во... Jan 10 2008, 22:28 alexander55 Цитата(pimen @ Jan 10 2008, 23:22) Еще во... Jan 11 2008, 08:34 pimen по поводу оператора goto, пользуясь вашими советам... Jan 11 2008, 09:35 alexander55 Цитата(pimen @ Jan 11 2008, 12:35) по пов... Jan 11 2008, 10:34  pimen Цитата(alexander55 @ Jan 11 2008, 13:34) ... Jan 11 2008, 11:42   alexander55 Цитата(pimen @ Jan 11 2008, 14:42) Вы сов... Jan 11 2008, 12:12
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|