1) 지식 창고는 본인이 작성한 콘텐츠(팁/노하우/리소스/강좌 등)을 무료 혹은 가상화폐인 납포인트를 통해 공유하는 공간입니다.
2) 본인이 작성한 콘텐츠에 대해서만 지식 창고에 등록할 수 있으며, 저작권에 위배되는 콘텐츠는 사전경고 없이 삭제될 수 있습니다.
3) 콘텐츠 구매 및 첨부파일 다운로드는 회원그룹 '연구원' 이상 가능하오니, 경험치를 쌓아 진급한 후에 이용 부탁드립니다.
4) 무료 콘텐츠의 본문은 구매절차 없이 즉시 이용할 수 있으며, 판매 납포인트가 있는 콘텐츠는 구매 후 이용할 수 있습니다.
5) 콘텐츠 판매에 따른 납포인트 수익은 지정한 비율(50%)에 따라 판매자에게 지급하며, 납포인트 수익을 통해 진급을 빨리할 수 있습니다.
6) 구매 후 평가를 하면 구매 납포인트의 20%를 돌려 드립니다.
판매자 | 다니엘롱 | 판매 납포인트 | 무료 | 평점 | 0점 / 총 0명 참여 |
---|
tiny2313을 사용하여 ds1820온도센서의 값을 시리얼로 출력 하는 소스입니다.
#include <tiny2313.h>
#include <ds1820.h>
#include <1wire.h>
#include <stdio.h>
#include <delay.h>
#include <math.h>
#asm
.equ __w1_port=0x18 ;PORTB
.equ __w1_bit=3
#endasm
#define MAX_DEVICES 8
unsigned char rom_codes[MAX_DEVICES,8];
main(){
unsigned char i, devices;
int temp;
UCSRA=0x00;
UCSRB=0x18;
UCSRC=0x06;
UBRRH=0x00;
UBRRL=0x17;
w1_init();
delay_ms(500);
devices=w1_search(0xf0,rom_codes);
delay_ms(500);
printf("%-u DEVICE(S) DETECTED\n\r",devices);
delay_ms(500);
if (devices==0) while (1);
while (1)
{
for (i=0;i<devices;)
{
temp=ds1820_temperature_10(&rom_codes[i,0]);
delay_ms(1000);
printf("temp %-i.%-u C\n\r",temp/10, abs(temp%10));
delay_ms(5000);
}
};
}