基于STM32的半导体制冷片温度控制

制冷片温度控制,温控范围15℃~45℃,本人菜鸡一枚,大佬绕路。

#include "stm32f10x_gpio.h"
#include "relay.h"
void relay_Init(void){
  GPIO_InitTypeDef GPIO_InitStructure;
	RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);//ʹÄܹܽÅʱÖÓ¡£
	GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;
	GPIO_InitStructure.GPIO_Pin=GPIO_Pin_7;
	GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
  GPIO_Init(GPIOB, &GPIO_InitStructure);
}


void relay_off(void){


GPIO_SetBits(GPIOB,GPIO_Pin_7);


}
void relay_on(void){

 GPIO_ResetBits(GPIOB,GPIO_Pin_7);

}
#include "sys.h"	

void relay_off(void);
void relay_on(void);
void relay_Init(void);
void relay_on(void);


	

 

#include "cold.h"
#include "delay.h"
#include "usart.h"
#include "dac.h"
#include "relay.h"



u16 flag;
u16 len; 	
u16 t;
extern u8 buf[];
 u16 end,from;
void read(void)
{
		int i=0;
    flag=0;
		if(USART3_RX_STA&0x8000)//Èô¿É¶Á±ê־λΪ1 
		{	
			USART3_RX_STA&=0x3FFF;//È¥µô±ê־λ			   
			len=end;//µÃµ½´Ë´Î½ÓÊÕµ½µÄÊý¾Ý³¤¶È£¨ÆäʵÊǵ±Ç°Ð´Ö¸ÕëµÄλÖã©

			if(t>len)                             
			{
			for(t=from;t<=USART3_REC_LEN;t++)  { 
			USART_SendData(USART1, USART3_RX_BUF[t]);         while(USART_GetFlagStatus(USART1,USART_FLAG_TC)=SET);					 	
					buf[i]=USART3_RX_BUF[t];
					i++;
				}
				from=0; 				//»Øµ½¿ªÍ·
      }
//========================================================================================================        
                                                       //Ò»°ãÇé¿ö(дָÕëÔÚ¶ÁÖ¸Õëǰͷ£¬ÁìÏÈ)   //case2 
			
			for(t=from;t
#include "delay.h"
void cold_Init(void);
void read(void);
void wait1(void);
void wait2(void);



 

 

你可能感兴趣的:(基于STM32的半导体制冷片温度控制)