Код: Выделить всё
temp=ds18b20_temperature(0)Частоты в Протеусе менял.
В чем ошибка?
Код: Выделить всё
#include <tiny2313.h>
// 1 Wire Bus functions
#asm
.equ __w1_port=0x18 ;PORTB
.equ __w1_bit=0
#endasm
#include <1wire.h>
#include <ds18b20.h>
#define MAX_DS1820 2 //îïðåäåëÿåì êîëè÷åñòâî óñòðîéñòâ íà ëèíèè 1-wire (â äàííîì ñëó÷àå 2 äàò÷èêà)
unsigned char rom_codes[MAX_DS1820][9]; //Îïðåäåëÿåì ìàññèâ äàííûõ-êîäîâ äàò÷èêîâ - ïî 9 ñèìâîëîâ â êàæäîé çàïèñè
#include <stdio.h>
#include <delay.h>
volatile int temp,temp1; // temp - äàò÷èê
void main(void)
{
unsigned char devices; //ïåðåìåííàÿ â êîòîðîé õðàíèòñÿ êîëè÷åñòâî ïðèñîåäåí¸ííûõ äàò÷èêîâ
devices=w1_search(0xf0,rom_codes); //èùèì äàò÷èêè
// Crystal Oscillator division factor: 1
#pragma optsize-
CLKPR=0x80;
CLKPR=0x00;
#ifdef _OPTIMIZE_SIZE_
#pragma optsize+
#endif
PORTA=0x00;
DDRA=0x00;
PORTB=0x00;
DDRB=0x00;
PORTD=0x00;
DDRD=0x00;
ACSR=0x80;
// 1 Wire Bus initialization
w1_init();
while (1)
{
temp=ds18b20_temperature(&rom_codes[0][0]); //â temp çàíîñèì äàííûå äàò÷èêà
temp1=ds18b20_temperature(&rom_codes[1][0]);
};
}

