当有上位机参与时,有些东西我们不能每次都抱着代码修改,将数据写入flash,方便通过上位机进行修改
#include "15W4KxxS4.H"
#include "flash.h"
#include <intrins.h>
#define IAP_ADDRESS 0x5000 //从此地址开始写
unsigned char shuju1,shuju2,f_flag;
unsigned char temp;
unsigned char flash[100];
void UartInit(void)
{
P_SW1 &= 0x3f; //设置串口一在(P3.0/RXD,P3.1/TXD)
SCON = 0x50; //8位数据,可变波特率
AUXR |= 0x40; //定时器1时钟为Fosc,即1T
AUXR &= 0xFE; //串口一选择定时器1为波特率发生器
TMOD &= 0x0F; //设定定时器1为16位自动重载方式
TL1 = 0xE8; //设定定时初值115200
TH1 = 0xFF; //设定定时初值
// TL1 = 0xE0; //9600
// TH1 = 0xFE;
ET1 = 0; //禁止定时器1中断
TR1 = 1; //启动定时器1计数
ES = 1; //使能串口中断
EA = 1; //使能总中断
}
/***************************************************************************/
void send1_Byte(unsigned char c)
{
SBUF=c;
while(!TI);
TI=0;
}
/*----------------------------
发送字符串
-------------------