📄 flash.lst
字号:
C51 COMPILER V7.06 FLASH 03/01/2008 11:15:01 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE FLASH
OBJECT MODULE PLACED IN FLASH.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE FLASH.C BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include<c8051f310.h>
2
3 void PORT_Init(void)
4 {
5 1 P0MDOUT=0X10;//TXD推挽输出,RXD漏开输入
6 1 XBR0=0X01;//UART连到端口引脚
7 1 //XBR1=0X40;//弱上拉,交叉开关开
8 1 XBR1=0XC0;//弱上拉禁止,效果同上,功耗可能不同
9 1 }
10
11 void UART_Init(void)
12 {
13 1 SCON0=0X00;//模式1,8位UART
14 1 TMOD=0X20;//定时器1工作在方式2
15 1 //CKCON=0X00;//定时器时钟为系统时钟1/12
16 1 TH1=0X96;
17 1 TL1=0X96;//9600
18 1 TR1=1;//开定时器1
19 1 //ES0=0;//禁止串口中断
20 1 }
21
22
23 void delay(unsigned int n)
24 {
25 1 unsigned int i;
26 1 for(i=0;i<n;i++);
27 1 for(i=0;i<n;i++);
28 1 for(i=0;i<n;i++);
29 1 for(i=0;i<n;i++);
30 1 }
31
32 main()
33 {
34 1
35 1 unsigned char xdata *pwrite;//定义写字节指针
36 1 unsigned char code *temp;//定义写中间指针
37 1 unsigned char code *pread;//定义读字节指针
38 1 bit EA_SAVE=EA;
39 1 unsigned int i=0;
40 1 unsigned char a[5];//定义串口发送数组
41 1 unsigned char code test_string[]="WHTY ";//定义要写入的代码
42 1
43 1 /*unsigned char byte=c;
44 1 unsigned char code test_string;
45 1 test_string=byte;*/
46 1
47 1 PORT_Init();
48 1 UART_Init();
49 1 OSCICN=0X83;
50 1 VDM0CN=0X80;
51 1 RSTSRC|=0X02;
52 1 PCA0MD&=~0X40;
53 1 EA=0;
54 1 pwrite=(unsigned char xdata*)0x1400;//初始化写字节指针
55 1 pread=(unsigned char code*)0x13ff;//初始化读字节指针
C51 COMPILER V7.06 FLASH 03/01/2008 11:15:01 PAGE 2
56 1 PSCTL=0x03;
57 1 FLKEY=0XA5;
58 1 FLKEY=0XF1;
59 1 *pwrite=0;//擦除页
60 1 PSCTL=0X00;
61 1 //EA=EA_SAVE;
62 1 temp=(unsigned char code *)test_string;//初始化写中间指针
63 1 //EA=0;
64 1 // pwrite=0x1400;
65 1 //pread=0x13fd;
66 1 PSCTL=0X01;
67 1 while(*temp!='\0')
68 1 {
69 2 FLKEY=0XA5;
70 2 FLKEY=0XF1;
71 2 *pwrite=*temp;
72 2 a[i]=*pread;
73 2 i++;
74 2 temp++;
75 2 pwrite++;
76 2 pread++;
77 2
78 2 }
79 1 FLKEY=0XA5;
80 1 FLKEY=0XF1;
81 1 *pwrite='\0';
82 1 PSCTL=0X00;
83 1 EA=EA_SAVE;
84 1 while(1)
85 1 {
86 2 for(i=0;i<5;i++)
87 2 {
88 3 //a[i]=test_string[i];
89 3 TI0=0;
90 3 SBUF0=a[i];
91 3 while(TI0==1);
92 3 //TI0=0;
93 3 delay(60000);
94 3 //delay(6000);
95 3 //delay(6000);
96 3
97 3 //TI0=0;//写SBUF前必须紧跟TI0=0
98 3 }
99 2 }
100 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 275 ----
CONSTANT SIZE = 6 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 9
IDATA SIZE = ---- ----
BIT SIZE = ---- 1
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -