标题: STM32C8T6+MCP9808MCP9808温度传感器程序 [打印本页]

作者: 冀州侯    时间: 2020-6-7 14:46
标题: STM32C8T6+MCP9808MCP9808温度传感器程序
单片机源程序如下:
  1. //#include "led.h"
  2. #include "delay.h"
  3. //#include "sys.h"
  4. #include "usart.h"
  5. #include "MCP9808.h"     
  6. #include "stm32f10x.h"
  7. #include "i2c.h"
  8. #include "stdio.h"
  9. /************************************************
  10. MCP9808温度传感器串口测试
  11. MCP9808的SCL口接PB8,SDA口接PB9,alert不接
  12. MCP9808自带上拉电阻,无须外加
  13. MCP9808的A2、A1、A0不接,从电路原理图中可以看到它们是下拉接地
  14. 默认地址是0X30,0011 A2A1A0X(X=0写,X=1读),可通过修改MCP9808.h中的ADDRESSBYTE改变
  15. ************************************************/

  16.                     
  17.    
  18. int main(void)
  19. {   
  20.     float TP = 0.0;
  21.     delay_Init();             //延时函数初始化   
  22.     NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置中断优先级分组为组2:2位抢占优先级,2位响应优先级
  23.     usart_config();      //串口初始化为115200
  24. //    LED_Init();             //初始化与LED连接的硬件接口
  25.     MCP9808_init();
  26.          
  27.       
  28.     while(1)
  29.     {
  30. //        LED0 = !LED0;
  31.         usart_printf("\r\n温度实验测试\r\n");
  32.         TP = MCP9808_ReadTP();
  33.         usart_printf("%.2f℃\r\n",TP);
  34.        delay_ms(1000000000);
  35.     }   
  36. }

  37. int fputc(int ch,FILE *f)   //printf重定向函数
  38. {
  39.         USART_SendData(USART1,(uint8_t)ch);   //发送一字节数据
  40.         while(USART_GetFlagStatus(USART1,USART_FLAG_TXE) == RESET);   //等待发送完成
  41.         return ch;
  42. }
复制代码

所有程序51hei提供下载:
MCP9808.7z (26.75 KB, 下载次数: 56)



作者: dcc024    时间: 2021-7-25 05:56
谢谢,我正好有这片子,我评测下
作者: maguoguo    时间: 2021-11-20 10:58
dcc024 发表于 2021-7-25 05:56
谢谢,我正好有这片子,我评测下

请问测试结果如何呢?




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1