RXDATAS();
if(rxbuf[0]!=0)
{
if((rxbuf[0]==0x10)&&(rxbuf[1]==0xff)) receive=0xff;
else if(rxbuf[0]==0x20)
{
templ=rxbuf[1];
temph=rxbuf[2];
}
if(receive==0xff)
{
RC1=1;
a=0xff;
}
}
if(temp<=templ)
{
if(a!=0xff)
RD0=1;
else RD0=0;
}
else if(temp>=temph)
{
if(a!=0xff)
RD1=1;
else RD1=0;
}
else if((temp>=templ)&&(temp<=temph))
{
a=0;
RD0=0;
RD1=0;
}
for(delay=0xFff;delay>0;delay--) asm("nop");
}
#include <pic.h>
//*************************
unsigned char txbuf[5];
unsigned char rxbuf[5];
extern unsigned int delay;
unsigned char s_uart_buf;
unsigned char rx_lo_buf;
extern unsigned char i;
//*************************
void TXPC(unsigned char byte)//9600b/s
{
RC6 = 0;//start bit
for(s_uart_buf=0;s_uart_buf<46;s_uart_buf++)continue;
if(byte&0x01)RC6=1;
else RC6=0;
for(s_uart_buf=0;s_uart_buf<35;s_uart_buf++)asm("nop");
if(byte&0x02)RC6=1;
else RC6=0;
for(s_uart_buf=0;s_uart_buf<35;s_uart_buf++)asm("nop");
if(byte&0x04)RC6=1;
else RC6=0;
for(s_uart_buf=0;s_uart_buf<35;s_uart_buf++)asm("nop");
if(byte&0x08)RC6=1;
else RC6=0;
for(s_uart_buf=0;s_uart_buf<35;s_uart_buf++)asm("nop");
if(byte&0x10)RC6=1;
else RC6=0;
for(s_uart_buf=0;s_uart_buf<35;s_uart_buf++)asm("nop");
if(byte&0x20)RC6=1;
else RC6=0;
for(s_uart_buf=0;s_uart_buf<35;s_uart_buf++)asm("nop");
if(byte&0x40)RC6=1;
else RC6=0;
for(s_uart_buf=0;s_uart_buf<35;s_uart_buf++)asm("nop");
if(byte&0x80)RC6=1;
else RC6=0;
for(s_uart_buf=0;s_uart_buf<35;s_uart_buf++)asm("nop");
RC6=1;//stop bit
for(s_uart_buf=0;s_uart_buf<45;s_uart_buf++)asm("nop");
}
//*************************************************
unsigned char RXPC(void)//9600b/s
{
rx_lo_buf=0;
while(1)
{
if(!RC7) break;
}
//receive start bit
for(s_uart_buf=0;s_uart_buf<46;s_uart_buf++)continue;
//receive bit
for(s_uart_buf=0;s_uart_buf<17;s_uart_buf++)asm("nop");
if(RC7)rx_lo_buf=rx_lo_buf|0x01;
for(s_uart_buf=0;s_uart_buf<35;s_uart_buf++)asm("nop");
if(RC7)rx_lo_buf=rx_lo_buf|0x02;
for(s_uart_buf=0;s_uart_buf<35;s_ua
首页 上一页 7 8 9 10 11 下一页 尾页 10/11/11
温度监控系统的设计(十)由毕业论文网(www.huoyuandh.com)会员上传。