历史上的今天
返回首页

历史上的今天

今天是:2025年02月12日(星期三)

正在发生

2020年02月12日 | STM32程序之MAX6675热电偶温度读取

2020-02-12 来源:elecfans

第一次编写STM32程序,有很多问题请教,我想把MAX6675的SO的数据读出来转换成实际温度,用串口工具读出来。


电路是标准的SPI接法,SO没有上拉电阻。


MISO脚配置为浮空,没有做内部上拉。


用HAL很简单,CS拉低以后,一个SPI读两个字节进来,然后就是凑成12位,换算。


MAX6675文档强调是在时钟下降沿读取数据,因此将SPI2配置为:

view plain copyhspi2.Init.CLKPolarity = SPI_POLARITY_LOW;

hspi2.Init.CLKPhase = SPI_PHASE_2EDGE;

hspi2.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_128;

端口定义根据实际进行修改,这里使用了spi2

/*

*

* max667.h

*/

#ifndef _MAX6675_H

#define _MAX667_H

#include “stm32f1xx_hal.h”

#include “pinname.h”

#define K_PORT GPIOC

typedef struct {

int16_t v;

int8_t error;

} K_Value;

K_Value read_k(void);

#endif

不考虑前导D15,只是直接读。

[cpp] view plain copy/*

* max6675.c

*

*/

#include “max6675.h”

extern SPI_HandleTypeDef hspi2;

K_Value read_k(void)

{

uint8_t data_temp[2]; // [0] 高位 [1]低位

K_Value k;

// 拉低

HAL_GPIO_WritePin(K_PORT, K_CS, GPIO_PIN_RESET);

// 读取

HAL_SPI_Receive(&hspi2, &data_temp[0], 2, 1);

// D2 low: 正常 high: 开路

if (data_temp[1] & 0x4) {

// printf(“No Probern”);

k.v = 0;

k.error = 1;

}

else {

k.v = (int16_t)(( (data_temp[0] 《《 5) | (data_temp[1] 》》 3) ) * 0.25);

k.error = 0;

}

// 拉高

HAL_GPIO_WritePin(K_PORT, K_CS, GPIO_PIN_SET);

return k;

}


使用一个结构体,返回K的状态和读数。

因为热电偶是电阻测量,因此热电偶和MAX6675之间的连接必须可靠,连接处的电阻会影响读数。

推荐阅读

史海拾趣

Chiplus Semiconductor Corp公司的发展小趣事

在快速发展的同时,Chiplus也积极履行社会责任,关注环境保护和可持续发展。公司采用环保材料和节能技术,降低生产过程中的能耗和排放。同时,Chiplus还积极参与社会公益活动,支持教育事业和科技创新,为社会进步贡献自己的力量。

这五个故事从不同角度展现了Chiplus Semiconductor Corp公司的发展历程和成就。作为一家技术领先的IC设计公司,Chiplus始终坚持以客户为中心,以技术创新为动力,不断推动半导体行业的发展。未来,Chiplus将继续秉承初心和使命,为全球客户提供更优质的产品和服务。

EETools公司的发展小趣事

EETools公司成立于1992年,当时正值微处理器开发工具行业蓬勃发展的时期。公司创始人凭借对嵌入式系统产品的深刻理解和市场需求的敏锐洞察,决定投身于这一领域。EETools在硅谷的电子和计算机行业中心设立总部,迅速成为该地区的一颗新星。

在初创阶段,EETools专注于嵌入式系统产品的咨询和分销业务。通过与多家知名半导体厂商建立合作关系,EETools成功将各种高性能的嵌入式系统产品引入市场,满足了客户多样化的需求。同时,公司还积极研发自主品牌的嵌入式开发工具,为客户提供更为全面和专业的服务。

Circuit Assembly公司的发展小趣事

为了进一步扩大市场份额和提升品牌影响力,EETools积极拓展海外市场。公司通过与海外代理商和合作伙伴建立紧密的合作关系,成功将产品推向全球各地。同时,EETools还积极参加国际电子展会和论坛,与全球同行交流经验和技术,不断提升自身的知名度和影响力。

Fillfactory Nv公司的发展小趣事

2015年,FIDELIX迎来了一个重要的转折点。在这一年,东芯半导体有限公司(以下简称“东芯半导体”)正式收购了FIDELIX 25.3%的股权,成为其第一大股东及实际控制人。这一收购标志着FIDELIX开始进入一个新的发展阶段。

通过与东芯半导体的合作,FIDELIX获得了更多的资金支持和市场资源。东芯半导体是一家专注于中小容量存储芯片研发、设计和销售的中国企业,在半导体领域拥有丰富的经验和资源。双方的合作不仅为FIDELIX带来了更多的发展机会,同时也加速了FIDELIX在国际市场上的扩张步伐。

在上述两个故事的基础上,可以根据FIDELIX公司的具体发展历程、重要事件、技术创新、市场策略等方面进行进一步的拓展和补充,以形成完整、详细的故事内容。

DUCATI公司的发展小趣事

2015年,FIDELIX迎来了一个重要的转折点。在这一年,东芯半导体有限公司(以下简称“东芯半导体”)正式收购了FIDELIX 25.3%的股权,成为其第一大股东及实际控制人。这一收购标志着FIDELIX开始进入一个新的发展阶段。

通过与东芯半导体的合作,FIDELIX获得了更多的资金支持和市场资源。东芯半导体是一家专注于中小容量存储芯片研发、设计和销售的中国企业,在半导体领域拥有丰富的经验和资源。双方的合作不仅为FIDELIX带来了更多的发展机会,同时也加速了FIDELIX在国际市场上的扩张步伐。

在上述两个故事的基础上,可以根据FIDELIX公司的具体发展历程、重要事件、技术创新、市场策略等方面进行进一步的拓展和补充,以形成完整、详细的故事内容。

Esterline Power Systems公司的发展小趣事

Esterline Power Systems公司在其早期阶段就致力于研发创新技术,以满足航空和国防行业对高性能电源系统的需求。一次关键的技术突破发生在公司对一种新型高效能电源控制器的研发上。面对市场上已有的产品性能瓶颈,公司的研发团队经过数月的深入研究与实验,成功开发出了具有更高效率和更稳定性能的电源控制器。这一创新不仅赢得了客户的认可,也为公司赢得了市场份额,奠定了在电源系统领域的领先地位。

问答坊 | AI 解惑

2009国赛比赛实施过程及比赛守则(官网上下的)

本帖最后由 paulhyde 于 2014-9-15 09:44 编辑  …

查看全部问答>

LCD模块的背光电源要求

由于LCD本质上是一种选择性的滤光器,且环境照明产生的显示亮度往往不够,因此,必须在LCD的背面放置光源。放置背面光源的方法有好几种,不同的背面照明光源应用的场合有所不同。 早期的LCD背面照明主要用于膝上型电脑或笔记本电脑,由于这些设备 ...…

查看全部问答>

再次迷茫了

前些时间一直在搞linux,但是linux这玩意儿真的很烦人啊,所以又去搞win ce,在学api,感觉win ce 入门确实比linux简单很多,但是最近又发现在win ce上做应用的基本上都是 .net,偶尔有mfc的,c语言无用武之地啊。这样就觉得现在学的一点用都没有, ...…

查看全部问答>

请教这个IC是个什么东西

请教一下我手头有个电路板上有个IC,5脚封装,上面两脚下面三脚,特小的封装,上面的字符貌似是CO-60Y又或者是CO-GOY,字太小看不清楚,搜索这两个都找不到相关资料。通过测量得知它的功能大概是这样:电源从3脚输入1脚输出,1脚跟5脚是通路,4脚输 ...…

查看全部问答>

请教MAXII高手,maxii 570系列芯片的jatg下载电缆问题

我是刚刚接触CPLD的新手 我最近在尝试altera公司max2芯片570系列的作开发 用的软件是QII 到下载的时候 首先是不能识别硬件 装完驱动之后识别硬件,下载的时候有  “start”但是点了就ERROR 是不是MAXII570系列的JATG下载电缆不能 ...…

查看全部问答>

关于LPC1768-SPI

有没有关于LPC1768关于SPI的简单例程…

查看全部问答>

STM32之TFT遇到麻烦了,求高手指教

经由Image2lcd处理后的图片最大只能到119288,显示出来的图片还不到1/3屏,正常是153600。如何处理才能使之显示满屏?…

查看全部问答>

stm32 ram调试

本帖最后由 白丁 于 2014-12-21 19:26 编辑 …

查看全部问答>

EEWORLD大学堂----WEBENCH FPGA Architect功能导览

WEBENCH FPGA Architect功能导览:https://training.eeworld.com.cn/course/165…

查看全部问答>

tps61085升压

肖吉特我用了SS14,R1我用了2个100K的滑变,R2用了18K的电阻, 输入电压设置为6V输出调节滑变使之为9V,Vout接有51Ω的负载,不 断降低输入电压直到3.8V没有9V输出,把输入电压不断上升直到6.2v 才有9V输出,我想把5V升压到9,从6.2V降到5V时有9V ...…

查看全部问答>