中文字幕 另类精品,亚洲欧美一区二区蜜桃,日本在线精品视频免费,孩交精品乱子片免费

<sup id="3hn2b"></sup>

    1. <sub id="3hn2b"><ol id="3hn2b"></ol></sub><legend id="3hn2b"></legend>

      1. <xmp id="3hn2b"></xmp>

      2. 新聞中心

        EEPW首頁 > 消費電子 > 設(shè)計應(yīng)用 > 基于ATmega128的DHT11溫濕度傳感器的使用

        基于ATmega128的DHT11溫濕度傳感器的使用

        作者: 時間:2012-08-14 來源:網(wǎng)絡(luò) 收藏

        #define LCK_1 PORTB|=(1

        #define SDI_0 PORTB=~(1

        #define SDI_1 PORTB|=(1

        void init(void);

        void send_595(unsigned char dat);

        void digitron_show(unsigned int int_part,unsigned int float_part);

        #endif

        ================================================

        //這里是xianshi.c

        #includexianshi.h

        #ifndef __DELAY_H

        #includedelay.h

        #endif

        #ifndef ___H

        #includedht11.h

        #endif

        //數(shù)碼管顯示數(shù)組定義

        const unsigned char table[]=

        {

        0x3F,// 0

        0x06,// 1

        0x5B,// 2

        0x4F,// 3

        0x66,// 4

        0x6D,// 5

        0x7D,// 6

        0x07,// 7

        0x7F,// 8

        0x6F,// 9

        0x3F+0x80,// 0.

        0x06+0x80,// 1.

        0x5B+0x80,// 2.

        0x4F+0x80,// 3.

        0x66+0x80,// 4.

        0x6D+0x80,// 5.

        0x7D+0x80,// 6.

        0x07+0x80,// 7.

        0x7F+0x80,// 8.

        0x6F+0x80// 9.

        };

        unsigned int s,t,st,int_part,float_part,temp,SH;

        //發(fā)送一字節(jié)數(shù)據(jù)到595

        void send_595(unsigned char dat)

        {

        unsigned char i;

        LCK_0;

        SDI_1;

        SCK_0;

        //上面的三條語句為了初始化端口狀態(tài)

        for(i=0;i8;i++)

        {

        LCK_0;//時鐘線拉低

        if(dat0x80)

        SDI_1;

        else SDI_0;

        dat=dat1;

        delay_us(100);

        LCK_1; //時鐘線拉高將數(shù)據(jù)讀入595的移位寄存器

        delay_us(100);

        }

        SCK_1; //發(fā)送數(shù)據(jù)到并行端口

        SCK_0;

        }

        void show(void)

        {

        unsigned char temp_shi,temp_ge,SH_shi,SH_ge,x,y;

        unsigned int i;

        st=dht();

        t=st0x0000ffff;

        s=st0xffff0000;

        s=s>>16;

        //下面為把溫度和濕度換算成十進制并且四舍五入

        temp=(t>>8);

        temp_shi=temp/10;

        temp_ge=temp%10;

        SH=(s>>8);

        SH_shi=SH/10;

        SH_ge=SH%10;

        int_part=SH_shi*10+SH_ge;

        float_part=0;

        for(i=0;i50;i++)

        {

        digitron_show(int_part,float_part);

        }

        }

        void digitron_show(unsigned int int_part,unsigned int float_part)

        {

        PORTA=0x01;

        send_595(table[float_part/10]);

        send_595(0x00);

        delay_ms(5);

        PORTA=0x02;

        send_595(table[(int_part%10)+10]);

        send_595(0x00);

        delay_ms(5);

        PORTA=0x04;

        send_595(table[int_part/10]);

        send_595(0x00);

        delay_ms(5);

        }

        ================================================

        //這里是MAIN.C

        #include

        #include

        #includedelay.h

        #includedht11.h

        #includexianshi.h

        #pragma interrupt_handler Timer0_COMP:16

        #define uchar unsigned char

        uchar k=0;

        void init(void);

        void main()

        {

        init();//初始化

        TCCR0=0X0F;

        DDRA=0XFF;

        TCCR0=0X0f;//CTC模式

        OCR0=145;//10ms

        TIMSK=0X02;

        SEI();

        while(1);

        }

        //初始化子函數(shù)

        void init(void)

        {

        DDRA=0XFF;

        DDRB=0XFF;

        }

        void Timer0_COMP(void)

        {

        TCCR0=0X08;

        CLI();

        k++;

        if(k==255)

        {

        k=0;

        show();

        }

        TCCR0=0X0f;//重置初值

        SEI();

        }

        電磁爐相關(guān)文章:電磁爐原理


        上拉電阻相關(guān)文章:上拉電阻原理
        土壤濕度傳感器相關(guān)文章:土壤濕度傳感器原理

        上一頁 1 2 下一頁

        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉