EDN首页   博客首页

日志档案

发表于 2008-5-12 12:49:44

1

标签: avr单片机  DS18B20读写  温度计  

avr单片机 DS18B20温度计 实验(六)

点击下载

这个实验利用avr来读取ds18b20,实现温度计的功能.详情见附件.

平台:FDRAVR开发板

主代码:

#include "ds18b20.h"   
//num,要显示的数据(0~9);pos,要显示的位置(从右到左)
void display(uchar num,uchar pos)
{  
    DDRA="0XFF";//定义PORTA口输出
    PORTA="0XFF";//输出高电平
    switch(pos)
    {
        case 3:PORTA=0X01;break;
        case 2:PORTA=0X02;break;
        case 1:PORTA=0X04;break;
        case 0:PORTA=0X08;break;
        default:PORTA=0X00;
    }
    num<<=4;//取数字,送CD4511
    PORTA|=num;
}
void main()     
{
    uint tem="0"; 
    uchar t="0";
    while(1)
    { 
        //display(tem%10,0);delay_ms(5);
        //display((tem/10)%10,1);delay_ms(5);
        display((tem/10)%10,2);delay_ms(5);//显示温度(摄氏度)
        display((tem/100),3);delay_ms(5);
        t++; 
        if(t==100){tem=get1820data();t=0;}//大概两秒钟读一次
    }

系统分类: 单片机   |   用户分类: avr单片机专区   |   来源: 原创   |   【推荐给朋友】   |   【添加到收藏夹】

    阅读(187)    回复(0)  

投一票您将和博主都有获奖机会!