主芯片:STM32F103C8T6
显示屏:0.96寸4针,SCL接PB14.SDA接PB15
WIFI模块:ESP8266-01S , TX接PB10,RX接PB11
PT100:接PA1,用AD采集
屏不能正常亮,WIFI连接好后,屏幕才能亮,把AD代码加进去后,屏幕又不能正常亮了。
#include "stm32f10x.h"
#include "OLED.H"
#include <stdio.h>
#include "Delay.h"
#include "MyUSART.H"
#include "esp.h"
#include "MySPI.H"
#include "Timer.H"
#include "PWM.H"
#include "sys.h"
#include "key.h"
#include "AD.h"
int temperature=10;
int SerialNo1;
int Shidu=20;
uint8_t Switch1='0';
uint8_t Switch2='0';
extern char RECS[200];
extern char Data[5];
uint16_t cnt;
uint16_t t;
void Init(void)
{
uint8_t Judge=0;
OLED_Init();
OLED_Clear();
OLED_Refresh();
OLED_ShowString(1,0,"Linking...",16,1);
MyUSART_Init(); //初始化串口
PWM_Init();
do
{
Judge = esp_Init();
// OLED_ShowString(1,0,"error code: ",16,1);
// OLED_ShowNum(2,1,Judge,1,16,1);
}while(Judge); //连接服务器直到成功
}
int main(void)
{
float a;
Init();
KEY_Init(); //初始化与按键连接的硬件接口
OLED_Init();
MyUSART_Init(); //初始化串口
PWM_Init();
while(1)
{
// printf("AT+MQTTPUB=0,\"168359728608801\",\"{\\\"codeNo:168359728608801:1\\\"}\",1,0\r\n"); //开关1
// Delay_ms(1000);
OLED_Clear();
OLED_Refresh();
OLED_ShowChinese(18,0,1,16,1);//
OLED_ShowChinese(36,0,2,16,1);//
OLED_ShowChinese(54,0,1,16,1);//智
OLED_ShowChinese(72,0,3,16,1);//慧
OLED_ShowChinese(90,0,4,16,1);//锅
OLED_ShowString(8,16,"ZHIXIANG",16,1);
OLED_ShowChinese(0,32,9,16,1);//定
OLED_ShowChinese(18,32,10,16,1);//时
OLED_ShowString(36,32,":30",16,1);
OLED_ShowString(68,32,"40",16,1);
OLED_ShowString(95,32,"50",16,1);
OLED_ShowString(0,48,"CODE:",16,1);
OLED_ShowNum(48,48,t,3,16,1);
// t=AD_GetValue();
if(t>80)
{
OLED_ShowChinese(90,48,7,16,1);//安
OLED_ShowChinese(108,48,8,16,1);//全
// Beep_Set(BEEP_ON); //鸣叫提示接入成功
// delay_ms(500);
// Beep_Set(BEEP_OFF);
}
else{
OLED_ShowChinese(90,48,5,16,1);//点
OLED_ShowChinese(108,48,6,16,1);//火
}
//**************************定时功能
if(KEY_Scan(1) == KEY2_PRES)
{
OLED_Clear();
for(a=0;a<30000;a++)
{
OLED_Refresh();
Delay_ms(500);
OLED_ShowChinese(0,32,9,16,1);//DING
OLED_ShowChinese(18,32,10,16,1);//SHI
OLED_ShowString(36,32,":30",16,1);
OLED_ShowString(60,32,":min",16,1);
}
GPIO_SetBits(GPIOC,GPIO_Pin_14);
Delay_ms(300);
GPIO_ResetBits(GPIOC,GPIO_Pin_14);
}
if( KEY_Scan(1) == KEY3_PRES)
{
OLED_Refresh();
OLED_Clear();
for(a=0;a<40000;a++)
{
OLED_Refresh();
OLED_Clear();
Delay_ms(500);
OLED_ShowChinese(0,32,9,16,1);//DING
OLED_ShowChinese(18,32,10,16,1);//SHI
}
GPIO_SetBits(GPIOC,GPIO_Pin_14);
Delay_ms(300);
GPIO_ResetBits(GPIOC,GPIO_Pin_14);
}
if( KEY_Scan(1)== KEY4_PRES)
{
OLED_Refresh();
OLED_Clear();
for(a=0;a<50000;a++)
{
OLED_Refresh();
OLED_Clear();
Delay_ms(500);
OLED_ShowChinese(0,32,9,16,1);//DING
OLED_ShowChinese(18,32,10,16,1);//SHI
}
GPIO_SetBits(GPIOC,GPIO_Pin_14); /
Delay_ms(300);
GPIO_ResetBits(GPIOC,GPIO_Pin_14);
}
}//while
}//main