📄 uart.c
字号:
#include<head.h>
extern void IniPcPort(void);
extern void msdelay(uchar);
extern void usdelay(uchar);
extern void saveee(void);
extern ulong data PARAM[8];
void IniPcPort()
{
PCON=0x00;
TMOD=0x20;
TH1=0xff; /* F6 4800 b/s fb=9600 */
TL1=0xff;
SCON=0xd0; /* Modle 3 */
REDE=0;
EA=1;
ES=0;
}
unsigned int SumBit(unsigned int k)
{
unsigned int sum;
unsigned int idata temp;
sum=0;
sum += k/10000;
temp = k %10000;
sum += temp/1000;
temp = temp %1000;
sum += temp/100;
temp = temp %100;
sum += temp/10;
sum += temp %10;
return sum;
}
void send(unsigned int SenMem[])
{
int idata j,sum;
IniPcPort();
EA=0;
TR1=1;
for(j=0;j<3;j++)
{
TB8=1;
SBUF='*';
while(TI!=1); TI=0;
}
sum=0;
for(j=0;j<8;j++)
{
TB8=1;
SBUF=(unsigned char)(((SenMem[j]) & 0xff00)>>8);
while(TI!=1); TI=0;
TB8=1;
SBUF=(unsigned char)((SenMem[j]) & 0x00ff);
while(TI!=1); TI=0;
sum += SumBit(SenMem[j]);
}
TB8=1;
SBUF=(unsigned char)((sum&0xff00)>>8);
while(TI!=1); TI=0;
TB8=1;
SBUF=(unsigned char)(sum & 0x00ff);
while(TI!=1); TI=0;
TB8=1;
SBUF='#';
while(TI!=1); TI=0;
TB8=1;
SBUF='\n';
while(TI!=1); TI=0;
usdelay(1);
msdelay(1);
EA=1;
}
void ReParam(void)
{
unsigned long val;
while(RI==0){;}
RI=0;
val=(SBUF)*10000;
EESET=val;
saveee();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -