打印

就没有谁操作过I2C温度传感器mcp9801的吗?

[复制链接]
2210|16
手机看帖
扫描二维码
随时随地手机跟帖
沙发
hzocce|  楼主 | 2010-11-6 08:18 | 只看该作者
没有人看?

使用特权

评论回复
板凳
yewuyi| | 2010-11-6 12:01 | 只看该作者
MCHP网站上一般有写好的例程。

http://www.microchip.com/wwwprod ... x?dDocName=en020950

到这个网页去看吧。

使用特权

评论回复
地板
hzocce|  楼主 | 2010-11-8 15:57 | 只看该作者
谢谢楼上的这位大哥,我就是没有找到啊!
我在 MICROCHIP的网站上没有找着,其他网站上也没有找着,才会在这里发帖问。。。。。
我写的又似乎有问题,读出来的就是0。

有没有操作过的,给的例程。

使用特权

评论回复
5
hzocce|  楼主 | 2010-11-8 17:11 | 只看该作者
void mcp9801()
{
/*********************************配置为比较器输出*/
i2cStart();
writeByte(0x9e);//写
do{}
  while(I2C0STAT!=0x18);//写控制,等待MCP9801响应
writeData(0x01);   //00温度寄存器 01配置寄存器 10温度迟滞寄存器 11温度限制寄存器
writeData(0x00);
i2cStop();   


/**********************************************设置为下限为0度*/
i2cStart();
writeByte(0x9e);//写
do{}
  while(I2C0STAT!=0x18);//写控制,等待MCP9801响应
writeData(0x02);
writeData(0x00);
i2cStop();  

  /**********************************************设置为上限为45度*/
i2cStart();
writeByte(0x9e);//写
do{}
  while(I2C0STAT!=0x18);//写控制,等待MCP9801响应
writeData(0x03);
writeData(0x5a);
i2cStop();   


/************************************************下面开始读值****/
i2cStart();
writeByte(0x9e);//写
do{}
  while(I2C0STAT!=0x18);//写控制,等待MCP9801响应
writeData(0x00); //选择温度寄存器
//writeData(0x00);//因为温度寄存器为只读寄存器,所以写入也无效。但是按照他们给的DATASHEET,写个内容过去还是没有用。
i2cStop();  
   

i2cStart();
writeByte(0x9f);//读
do{}
  while(I2C0STAT!=0x40);//读,等待MCP9801响应


I2C0CONCLR=AA;
I2C0CONCLR=SI;
do{}
  while(I2C0STAT!=0x58); //等待接收数据直接和非ACK


printf("%02d",I2C0DAT);// 为什么这里通过串口输出的值一直都是00呢???????
printf("℃");

}

写数据.JPG (35.37 KB )

写数据.JPG

读数据.JPG (48.48 KB )

读数据.JPG

使用特权

评论回复
6
hzocce|  楼主 | 2010-11-8 17:13 | 只看该作者
有哪位大哥帮个忙,给我看下,谢谢了

使用特权

评论回复
7
hzocce|  楼主 | 2010-11-9 08:51 | 只看该作者
顶起,别那么快就沉下去了!!!

使用特权

评论回复
8
ji_dan| | 2010-11-9 09:16 | 只看该作者
的却没有操作过

使用特权

评论回复
9
hzocce|  楼主 | 2010-11-10 08:56 | 只看该作者
DING!

使用特权

评论回复
10
hzocce|  楼主 | 2010-11-10 17:21 | 只看该作者
别沉了

使用特权

评论回复
11
hzocce|  楼主 | 2010-11-11 19:41 | 只看该作者
别下沉呀~~~~~~~~

使用特权

评论回复
12
hzocce|  楼主 | 2010-11-12 08:04 | 只看该作者
又要沉了

使用特权

评论回复
13
hzocce|  楼主 | 2010-11-15 17:20 | 只看该作者
本帖最后由 hzocce 于 2010-11-15 17:21 编辑

DING!


好心人最好给个LPC2103操作MCP9801的,或者是LPC2103操作LM75A的,谢谢了!

使用特权

评论回复
14
hzocce|  楼主 | 2010-11-16 08:27 | 只看该作者
在线等~~~

使用特权

评论回复
15
yewuyi| | 2010-11-16 09:01 | 只看该作者
无语,难道自己看着手册写一个就那么难吗!?

使用特权

评论回复
16
hzocce|  楼主 | 2010-11-16 10:15 | 只看该作者
我弄了好久了,一直没有弄明白!能整明白我就不会问了。

使用特权

评论回复
17
hzocce|  楼主 | 2010-11-18 15:04 | 只看该作者
自己顶

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

127

主题

561

帖子

4

粉丝