毕业论文开发语言企业开发JAVA技术.NET技术WEB开发Linux/Unix数据库技术Windows平台移动平台嵌入式论文范文英语论文
您现在的位置: 毕业论文 >> 嵌入式 >> 正文

S3C2440内核为2.6.24上写18B20驱动温度总是随机的 第3页

更新时间:2012-10-1:  来源:毕业论文
    unregister_chrdev(major,DEVICE_NAME);
}

static int temp_open(struct inode * pnode, struct file * pfile)
{
    _io_gpjcon = (unsigned long*)ioremap(GPJCON,4);
    _io_gpjdat = (unsigned long*)ioremap(GPJDAT,4);
    _io_gpjup  = (unsigned long*)ioremap(GPJUP,4);

    printk("18b20 open\n");
   
    return 0;

}

static int temp_release(struct inode *pnode, struct file *pfile)
{
    printk("18b20 release\n");
    return 0;
}


module_init(temp_init);
module_exit(temp_exit);

////////////////////////////registerover/////////////////////////////////

void DQ_OUTP()//GPJCON为输出模式
{
    unsigned long temp;
    temp = *(unsigned long*)_io_gpjcon;
    temp &=(~0x3);
    temp |= 0x1;
    *(unsigned long*)_io_gpjcon = temp;
}


void DQ_INTP()//GPJCON为输入状态
{
    unsigned long temp;
    temp = *(unsigned long*)_io_gpjcon;
    temp &=(~0x3);
    *(unsigned long*)_io_gpjcon = temp;
}

void set_DQ(unsigned int flag)//设置GPJ0的高低电平
{
    unsigned long temp;
    temp = *(unsigned long*)_io_gpjdat;
    temp &= ~0x1;
    if(flag&0x1)
    temp |= 0x1;
   
    *(unsigned long*)_io_gpjdat = temp;
}

unsigned long get_DQ()//获得当前18B20的DQ状态
{
    unsigned long temp;
    temp = *(unsigned long*)_io_gpjdat;
    temp &=0x01;
    return temp;
}

 

/*
         复位流程:
  &nbs

上一页  [1] [2] [3] [4] [5] [6] [7] 下一页

设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优尔论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。