#include <tiny2313.h>
#asm
   .equ __w1_port=0x12 ;PORTD
   .equ __w1_bit=0
#endasm 
#include <ds1820.h>
#include <1wire.h>
#include<stdio.h>
#include<math.h>
#define MAX_DS1820 4
unsigned char ds1820_devices;
unsigned char ds1820_rom_codes[MAX_DS1820][4];
char lcd_buffer[16];
// Alphanumeric LCD Module functions
#asm
   .equ __lcd_port=0x18 ;PORTB
#endasm
#include <lcd.h>
#include <delay.h>
void main(void)
{ while (1)
       {
  unsigned i;
   int  temp;
ds1820_devices=w1_search(0xf0,ds1820_rom_codes);
lcd_init(16);
lcd_putsf("Hello!");
  delay_ms(1000);
  lcd_clear();
  sprintf(lcd_buffer, "%u - Divaces",ds1820_devices );// Количество датчиков
 lcd_puts(lcd_buffer);
 delay_ms(1000);
 lcd_clear();
if(!ds1820_devices)
{
        lcd_putsf("No devices");
        delay_ms(1000);
         lcd_clear();
      } 
       while (1)
       {
         for(i=0;i<ds1820_devices;)
         {
           temp=ds1820_temperature_10(&ds1820_rom_codes[i, 0]);

//******************************************************************
// Вот из-за этого ругается
         sprintf(lcd_buffer,"t%u-%i.%u C",i++,temp/10,abs(temp%10));
//******************************************************************

         lcd_puts(lcd_buffer);
         }
       };
} }
