2回答

0收藏

[求助] 關於使用cy8c29466讀取具SPI介面的MAX6675晶片問題

英飞凌 英飞凌 5445 人阅读 | 2 人回复 | 2013-07-22


大家好:
本人自行修改8051控制MAX6675的C程式到PSoC可接受的語法;MAX6675是送出16bit溫度的具SPI介面晶片。
我的作法是,自行撰寫讀取MAX6675晶片的PSoC程式,並將PSoC所得到的溫度bit,以其內建的UART模組,配合RS232硬體
傳給超級終端機。

發生了問題:

終端機顯示出來的溫度結果,本人覺得都對,可是怪就怪在,我設for迴圈五次,希望它及時更新五個溫度之後程式停止。
但現在變成說這五個溫度值通通相同,不論我再怎麼摸熱電偶,他也不變。除非我將開發版上的RESET重新按下去,它才會
再次更新一筆五個相同的溫度值。

請大家幫忙,謝謝。

分享到:
回复

使用道具 举报

回答|共 2 个

倒序浏览

沙发

Boy_Li

发表于 2013-7-22 11:33:16 | 只看该作者

powerdruy 发表于 2013-7-22 11:17
根據我的推斷,可能是MAX6675的初始化的時候,設置成單次測量了,這樣你的程式運行一次之後,晶片就只測量 ...

謝謝,不過我不懂,MAX6675怎麼改變成連續測量的模式耶! 請幫幫忙。
我只知道,MAX6675好像是CS=low送出值,CS=high自己連續測量溫度,所以我是控制CS的High、low去讓6675送出溫度的。
板凳

Myauto123

发表于 2013-7-28 01:00:44 | 只看该作者

不知道楼主有没有注意到Max6675数据手册上这一条,其转换时间有170-220ms。如果每次读取的速度过快,Max6675有可能反应不过来。实测大于70ms读取一次可准确读取数据。     没有楼主的代码,不能判断你读取间隔时间。所以仅供参考。    我在使用AD时,如果读取间隔过短,则数据不正常的结果。    前些日子在做恒温电炉的项目,买了片max6675玩了下。不过如果不嫌麻烦,可以用硬件电路搭一个。做的两个模块精度感觉都差不多。不过我用了16bit的ADS1110。

360软件小助手截图20130728005145.jpg (5.42 KB, 下载次数: 62)

360软件小助手截图20130728005145.jpg
您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条