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

 
 
> Сравнение больших чисел, 64 бита и больше, на языке С, сильно не пинать:)
Pyku_He_oTTyda
сообщение May 26 2006, 04:34
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 751
Регистрация: 4-08-05
Из: Великие Луки
Пользователь №: 7 360



#include <mega8535.h>
// 1 Wire Bus functions
#asm
.equ __w1_port=0x18 ;PORTB
.equ __w1_bit=0
#endasm
#include <1wire.h>

#include <stdio.h> // Standard Input/Output functions

#define MAX_DEVICES 1 //определяем максимальное количество устройств на шине

unsigned char rom_codes[MAX_DEVICES][9]; //выделяет память (9 бит умноженное на кол-во устройств)

void main(void)
{
unsigned char i=0;
unsigned char j;
unsigned char devices;

// USART initialization
UCSRA=0x00;
UCSRB=0x08;
UCSRC=0x86;
UBRRH=0x00;
UBRRL=0x03;

// Analog Comparator: Off
ACSR=0x80;

w1_init(); // 1 Wire Bus initialization

// Watchdog Timer initialization
#pragma optsize-
WDTCR=0x1F;
WDTCR=0x0F;

#ifdef _OPTIMIZE_SIZE_
#pragma optsize+
#endif

//ищем устройство командой 0xf0, в rom_codes ложится 9 байт (family-1,serial-6,CRC8-1,некоторые устройства возвращают 9 байт)
devices=w1_search(0xf0,rom_codes);

/* display the ROM codes for each detected device */
printf("%-u DEVICE(S) DETECTED\n\r",devices); // выводим количество подключенных устройств

for (j=0;j<9;j++) // задаем, какую часть кода выводить
{
printf("%-X",rom_codes[i][j]);
}
printf("\n\r");

}



На основе примера из CVAVR програмка, которая в сом-порт сбрасывает номер подключенного 1-wire устройства (DS1990). Эта часть кода работает.
Подскажите, как сравнить номер "таблетки" с неким заданным значением, которое можно будет определить в начале программы, или с несколькими значениями. Вот собственно вопрос мой...
Еще приветствуются указание моих косяков в программе и в комментариях


--------------------
Андрей Смирнов
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Pyku_He_oTTyda   Сравнение больших чисел, 64 бита и больше   May 26 2006, 04:34
- - Pyku_He_oTTyda   Попробую, я еще только взялся за С, так что для ме...   May 26 2006, 05:07
- - vet   #include <string.h> if (memcmp(rom_codes[i]...   May 26 2006, 05:16
- - GetSmart   Цитатаunsigned int test = array[0] * array[1] * ar...   May 26 2006, 06:25
|- - haker_fox   Цитата(GetSmart @ May 26 2006, 15:25) Цит...   May 26 2006, 06:56
- - Pyku_He_oTTyda   Цитата#include <string.h> if (memcmp(rom_co...   May 26 2006, 06:30
- - Pyku_He_oTTyda   А как мне определить такой большой my_code ? Напри...   May 26 2006, 06:41
- - GetSmart   ЦитатаА как мне определить такой большой my_code ?...   May 26 2006, 06:51
- - BVU   Цитата(Pyku_He_oTTyda @ May 26 2006, 08:3...   May 26 2006, 06:57
- - Pyku_He_oTTyda   ЦитатаGetSmart Простите за назойливость, а не мог...   May 26 2006, 07:04
|- - _Bill   Цитата(Pyku_He_oTTyda @ May 26 2006, 10:0...   May 26 2006, 07:34
|- - prottoss   Цитата(_Bill @ May 26 2006, 15:34) Цитата...   May 26 2006, 12:41
|- - _Bill   Цитата(prottoss @ May 26 2006, 15:41) При...   May 26 2006, 13:06
|- - zltigo   Цитата(_Bill @ May 26 2006, 16:06) Вычита...   May 26 2006, 13:39
- - Pyku_He_oTTyda   Вообще запутался, сосвоим кодом было не разобратся...   May 26 2006, 07:49
|- - haker_fox   Цитата(Pyku_He_oTTyda @ May 26 2006, 16:4...   May 26 2006, 07:56
|- - _Bill   Цитата(Pyku_He_oTTyda @ May 26 2006, 10:4...   May 26 2006, 08:07
- - GetSmart   2 Pyku_He_oTTyda По-моему _Bill написал хороший к...   May 26 2006, 08:31
- - Pyku_He_oTTyda   Я и не обижаюсь, понимаю, что много непонятного......   May 26 2006, 08:57
|- - _Bill   Цитата(Pyku_He_oTTyda @ May 26 2006, 11:5...   May 26 2006, 09:06
|- - otrog   Цитата(_Bill @ May 26 2006, 13:06) Може...   May 26 2006, 10:05
|- - zltigo   Цитата(_Bill @ May 26 2006, 12:06) Може...   May 26 2006, 12:27
- - GetSmart   ЦитатаСовершенно верно, индетификатор содержит шес...   May 26 2006, 09:16
- - Pyku_He_oTTyda   11E6CAC00701 - это 9 кодов, строка printf(...   May 26 2006, 09:56
- - Pyku_He_oTTyda   01 равен 1 и в двоичной, и в десятичной, и в шестн...   May 26 2006, 10:14
|- - otrog   А дошло! У Вас изначально было "0x01, 0x1...   May 26 2006, 10:31
- - defunct   Код#define FALSE 0 #define TRUE 1 char Match...   May 26 2006, 13:39
|- - zltigo   Цитата(defunct @ May 26 2006, 16:39) Код ...   May 26 2006, 13:44
|- - defunct   Цитата(zltigo @ May 26 2006, 16:44) Цитат...   May 26 2006, 13:55
- - GetSmart   2 prottoss Можно и по-вашему. Иногда так бывает уд...   May 26 2006, 13:53
|- - prottoss   Цитата(GetSmart @ May 26 2006, 21:53) 2 p...   May 26 2006, 16:51
- - ps1x   2 Pyku_He_oTTyda Раз уж такая тема, Вы случаем не...   May 26 2006, 17:29
- - Pyku_He_oTTyda   Цитатаunsigned char my_code[6] = {0x01,0x07,0xc0,0...   May 29 2006, 04:44


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

 


RSS Текстовая версия Сейчас: 18th July 2025 - 22:21
Рейтинг@Mail.ru


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