📄 isp5964.c
字号:
#include"isp5964.h"
#include <stdio.h>
void main(void)
{
signed int aa,bb;
signed long cc;
float f1,f2,f3;
system_init();
aa=-2048;
cc=aa;
f1=aa;
bb=-4096;
f2=bb;
f3=f1/f2;
printf("cc=%ld.\n",cc);
//printf("f1=%d.%d\n",(signed int)f1,(signed int)(f1*1000)%1000);
printf("f1=%f\n",f1);
printf("f2=%f\n",f2);
printf("f3=%f\n",f3);
flash_isp_init();
flash_isp_init();
//puts("\n**Please press CR then start ISP program!\n");
//putchar('>');
//while(_getkey()!=0x0d);//press ENTER key
printf("\nErasing the sycmos5964 FLASH memory...\n");
//uart_rx_disable();
//ES=0;
flash_erase();
flash_wr(0X0000,0X02); //LJMP RS232 INTERUPT23
flash_wr(0X0001,0XF6);//F7
flash_wr(0X0002,0X73);//73
//ES=1;
//uart_rx_enable();
printf("ASCII character transmission,\n");
printf("-8 bits,1 stop ,parity none,\n");
printf("-XON-XOFF flow control.\n");
printf("Please download .hex file then start ISP program.\n");
uart_rx_enable();
status=hex_parser();
uart_rx_disable();
if(status==HEX_DEC_CSERR)
{
flash_erase();
flash_wr(0X0000,0X02); //LJMP ISP START
flash_wr(0X0001,0XF6);
flash_wr(0X0002,0XE7);
printf("\nChecksum error:ISP program unsuccess!\n");
}
else
printf("\nISP program success!\n");
((void(code *)())0x0000)();
}
//****************************************************************************************
void system_init(void)
{
EA=0;
P0=0XFF;
P1=0XFF;
P2=0XFF;
P3=0XFF;
TR2=0;
SCON=0x50; //串口中断
T2CON=0x34; //采用定时器2
RCAP2H=0xff; //串行发射、接收波特率9.6K
RCAP2L=0XE2;//0xec; //19.2K(12M) 18.432MHZ
TR2=1;
REN=1;
RI=0;
TI=1;
ES=1;
EA=1;
}
//*****************************************************************************************
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -