|
基于ESP8266的MAX6675溫度采集程序,親測可行,目前只用串口發(fā)送數(shù)據(jù)用于測試,如有想用TCP—server或者TCP_client的可以聯(lián)系我。
- /*
- * max6675.c
- *
- * Created on: 2021年11月5日
- * Author: Administrator
- */
- #include"driver/max6675.h"
- // 毫秒延時函數(shù)
- //=================================================
- void ICACHE_FLASH_ATTR Dht11_delay_ms(u32 C_time)
- { for(;C_time>0;C_time--)
- os_delay_us(1000);
- }
- //=========================================================
- //GPIO5設(shè)為SO口
- //========================================================
- void ICACHE_FLASH_ATTR MAX6675_SO(u8 Value_Vol)
- {
- PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO5_U, FUNC_GPIO5); // GPIO5設(shè)為IO口
- GPIO_OUTPUT_SET(GPIO_ID_PIN(5),Value_Vol); // IO5設(shè)為輸出=X
- }
- //=========================================================
- //GPIO4設(shè)為SCLK口
- //========================================================
- void ICACHE_FLASH_ATTR MAX6675_SCLK(u8 Value_Vol)
- {
- PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO4_U, FUNC_GPIO4); // GPIO4設(shè)為SCLK口
- GPIO_OUTPUT_SET(GPIO_ID_PIN(4),Value_Vol); // IO4設(shè)為輸出=X
- }
- //=========================================================
- //GPIO2設(shè)為CS口
- //========================================================
- void ICACHE_FLASH_ATTR MAX6675_CS(u8 Value_Vol)
- {
- PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO2_U, FUNC_GPIO2); // GPIO2設(shè)為CS口
- GPIO_OUTPUT_SET(GPIO_ID_PIN(2),Value_Vol); // IO2設(shè)為輸出=X
- }
- // GPIO_5(MAX6675信號線)設(shè)為輸入模式
- //===========================================================================
- void ICACHE_FLASH_ATTR MAX6675_Input(void)
- {
- PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO5_U, FUNC_GPIO5); // GPIO5設(shè)為IO口
- GPIO_DIS_OUTPUT(GPIO_ID_PIN(5)); // GPIO5失能輸出(輸入)
- }
- unsigned long max6675_read() //讀取溫度值
- {
- unsigned char i;
- unsigned long max_6675=0x00;
- MAX6675_CS(0);
- MAX6675_SCLK(0);
- MAX6675_SO(0);
- for(i=0;i<16;i++)
- {
- MAX6675_SCLK(1);
- max_6675<<=1;
- MAX6675_Input();
- if(GPIO_INPUT_GET(GPIO_ID_PIN(5))==1){max_6675=max_6675|0x01;}
- else max_6675=max_6675|0x00;
- MAX6675_SCLK(0);
- }
- MAX6675_CS(1);
- max_6675<<=1;
- max_6675>>=4;
- max_6675=max_6675/4;
- return max_6675;
- }
復(fù)制代碼
代碼:
MAX6675.7z
(3.25 MB, 下載次數(shù): 12)
2021-11-6 18:55 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|
評分
-
查看全部評分
|