📄 dso.txt
字号:
0000ee 0000 DCW 0x0000
|L5.240|
DCD ||.data||+0x4
|L5.244|
DCD g_DSO+0x4000
|L5.248|
DCD g_DSO+0x5000
|L5.252|
DCD g_DSO+0x49e0
|L5.256|
DCD g_DSO+0x4eb8
|L5.260|
DCD g_DSO+0x2000
|L5.264|
DCD g_DSO+0x5124
|L5.268|
DCD g_DSO+0x4c4c
AREA ||i.DispChInfo||, CODE, READONLY, ALIGN=2
DispChInfo PROC
;;;699 */
;;;700 static void DispChInfo(void)
000000 b510 PUSH {r4,lr}
;;;701 {
000002 b088 SUB sp,sp,#0x20
;;;702 char buf[32]; /* 字符显示缓冲区 */
;;;703
;;;704 /* 显示示波器程序版本 */
;;;705 LCD_SetTextColor(White); /* 白字 */
000004 f64f70ff MOV r0,#0xffff
000008 f7fffffe BL LCD_SetTextColor
;;;706 LCD_SetBackColor(Blue); /* 蓝底 */
00000c 201f MOVS r0,#0x1f
00000e f7fffffe BL LCD_SetBackColor
;;;707 LCD_DisplayString(10, 2, DSO_VER);
000012 a271 ADR r2,|L6.472|
000014 2102 MOVS r1,#2
000016 200a MOVS r0,#0xa
000018 f7fffffe BL LCD_DisplayString
;;;708
;;;709 /* 显示通道1信息 */
;;;710 if (g_DSO.Ch1DC == 1)
00001c 4870 LDR r0,|L6.480|
00001e f8900028 LDRB r0,[r0,#0x28]
000022 2801 CMP r0,#1
000024 d104 BNE |L6.48|
;;;711 {
;;;712 strcpy(buf, "CH1 DC ");
000026 a16f ADR r1,|L6.484|
000028 4668 MOV r0,sp
00002a f7fffffe BL strcpy
00002e e003 B |L6.56|
|L6.48|
;;;713 }
;;;714 else
;;;715 {
;;;716 strcpy(buf, "CH1 AC ");
000030 a16e ADR r1,|L6.492|
000032 4668 MOV r0,sp
000034 f7fffffe BL strcpy
|L6.56|
;;;717 }
;;;718
;;;719 if (g_DSO.Ch1VScale >= 1000)
000038 4869 LDR r0,|L6.480|
00003a 8b80 LDRH r0,[r0,#0x1c]
00003c f5b07f7a CMP r0,#0x3e8
000040 db0c BLT |L6.92|
;;;720 {
;;;721 sprintf(&buf[7], "%d.00V", g_DSO.Ch1VScale / 1000);
000042 4867 LDR r0,|L6.480|
000044 8b80 LDRH r0,[r0,#0x1c]
000046 f44f717a MOV r1,#0x3e8
00004a fb90f4f1 SDIV r4,r0,r1
00004e 4622 MOV r2,r4
000050 a168 ADR r1,|L6.500|
000052 f10d0007 ADD r0,sp,#7
000056 f7fffffe BL __2sprintf
00005a e006 B |L6.106|
|L6.92|
;;;722 }
;;;723 else
;;;724 {
;;;725 sprintf(&buf[7], "%dmV", g_DSO.Ch1VScale);
00005c 4860 LDR r0,|L6.480|
00005e 8b82 LDRH r2,[r0,#0x1c]
000060 a166 ADR r1,|L6.508|
000062 f10d0007 ADD r0,sp,#7
000066 f7fffffe BL __2sprintf
|L6.106|
;;;726 }
;;;727
;;;728 if (g_DSO.ActiveCH == 1)
00006a 485d LDR r0,|L6.480|
00006c f890002e LDRB r0,[r0,#0x2e]
000070 2801 CMP r0,#1
000072 d108 BNE |L6.134|
;;;729 {
;;;730 LCD_SetTextColor(Yellow); /* 白字 */
000074 f64f70e0 MOV r0,#0xffe0
000078 f7fffffe BL LCD_SetTextColor
;;;731 LCD_SetBackColor(Magenta); /* 蓝底 */
00007c f64f001f MOV r0,#0xf81f
000080 f7fffffe BL LCD_SetBackColor
000084 e006 B |L6.148|
|L6.134|
;;;732 }
;;;733 else
;;;734 {
;;;735 LCD_SetTextColor(Yellow); /* 黄字 */
000086 f64f70e0 MOV r0,#0xffe0
00008a f7fffffe BL LCD_SetTextColor
;;;736 LCD_SetBackColor(Blue); /* 蓝底 */
00008e 201f MOVS r0,#0x1f
000090 f7fffffe BL LCD_SetBackColor
|L6.148|
;;;737 }
;;;738
;;;739 LCD_DisplayString(10, 224, (uint8_t *)buf);
000094 466a MOV r2,sp
000096 21e0 MOVS r1,#0xe0
000098 200a MOVS r0,#0xa
00009a f7fffffe BL LCD_DisplayString
;;;740
;;;741 /* 显示通道2信息 */
;;;742 LCD_SetTextColor(Red); /* CH2 红色 */
00009e f44f4078 MOV r0,#0xf800
0000a2 f7fffffe BL LCD_SetTextColor
;;;743 if (g_DSO.Ch2DC == 1)
0000a6 484e LDR r0,|L6.480|
0000a8 f8900029 LDRB r0,[r0,#0x29]
0000ac 2801 CMP r0,#1
0000ae d104 BNE |L6.186|
;;;744 {
;;;745 strcpy(buf, "CH2 DC ");
0000b0 a154 ADR r1,|L6.516|
0000b2 4668 MOV r0,sp
0000b4 f7fffffe BL strcpy
0000b8 e003 B |L6.194|
|L6.186|
;;;746 }
;;;747 else
;;;748 {
;;;749 strcpy(buf, "CH2 AC ");
0000ba a154 ADR r1,|L6.524|
0000bc 4668 MOV r0,sp
0000be f7fffffe BL strcpy
|L6.194|
;;;750 }
;;;751
;;;752 if (g_DSO.Ch2VScale >= 1000)
0000c2 4847 LDR r0,|L6.480|
0000c4 8bc0 LDRH r0,[r0,#0x1e]
0000c6 f5b07f7a CMP r0,#0x3e8
0000ca db0c BLT |L6.230|
;;;753 {
;;;754 sprintf(&buf[7], "%d.00V", g_DSO.Ch2VScale / 1000);
0000cc 4844 LDR r0,|L6.480|
0000ce 8bc0 LDRH r0,[r0,#0x1e]
0000d0 f44f717a MOV r1,#0x3e8
0000d4 fb90f4f1 SDIV r4,r0,r1
0000d8 4622 MOV r2,r4
0000da a146 ADR r1,|L6.500|
0000dc f10d0007 ADD r0,sp,#7
0000e0 f7fffffe BL __2sprintf
0000e4 e006 B |L6.244|
|L6.230|
;;;755 }
;;;756 else
;;;757 {
;;;758 sprintf(&buf[7], "%dmV", g_DSO.Ch2VScale);
0000e6 483e LDR r0,|L6.480|
0000e8 8bc2 LDRH r2,[r0,#0x1e]
0000ea a144 ADR r1,|L6.508|
0000ec f10d0007 ADD r0,sp,#7
0000f0 f7fffffe BL __2sprintf
|L6.244|
;;;759 }
;;;760 if (g_DSO.ActiveCH == 2)
0000f4 483a LDR r0,|L6.480|
0000f6 f890002e LDRB r0,[r0,#0x2e]
0000fa 2802 CMP r0,#2
0000fc d108 BNE |L6.272|
;;;761 {
;;;762 LCD_SetTextColor(Green); /* 红字 */
0000fe f44f60fc MOV r0,#0x7e0
000102 f7fffffe BL LCD_SetTextColor
;;;763 LCD_SetBackColor(Magenta); /* 蓝底 */
000106 f64f001f MOV r0,#0xf81f
00010a f7fffffe BL LCD_SetBackColor
00010e e006 B |L6.286|
|L6.272|
;;;764 }
;;;765 else
;;;766 {
;;;767 LCD_SetTextColor(Green); /* 红字 */
000110 f44f60fc MOV r0,#0x7e0
000114 f7fffffe BL LCD_SetTextColor
;;;768 LCD_SetBackColor(Blue); /* 蓝底 */
000118 201f MOVS r0,#0x1f
00011a f7fffffe BL LCD_SetBackColor
|L6.286|
;;;769 }
;;;770 LCD_DisplayString(120, 224, (uint8_t *)buf);
00011e 466a MOV r2,sp
000120 21e0 MOVS r1,#0xe0
000122 2078 MOVS r0,#0x78
000124 f7fffffe BL LCD_DisplayString
;;;771
;;;772 /* 显示时基 */
;;;773 LCD_SetTextColor(White); /* 时基白色 */
000128 f64f70ff MOV r0,#0xffff
00012c f7fffffe BL LCD_SetTextColor
;;;774 LCD_SetBackColor(Blue); /* 蓝底 */
000130 201f MOVS r0,#0x1f
000132 f7fffffe BL LCD_SetBackColor
;;;775
;;;776 if (g_DSO.TimeBase < 1000)
000136 482a LDR r0,|L6.480|
000138 68c0 LDR r0,[r0,#0xc]
00013a f5b07f7a CMP r0,#0x3e8
00013e d206 BCS |L6.334|
;;;777 {
;;;778 sprintf(buf, "Time %3dus", g_DSO.TimeBase);
000140 4827 LDR r0,|L6.480|
000142 a134 ADR r1,|L6.532|
000144 68c2 LDR r2,[r0,#0xc]
000146 4668 MOV r0,sp
000148 f7fffffe BL __2sprintf
00014c e01a B |L6.388|
|L6.334|
;;;779 }
;;;780 else if (g_DSO.TimeBase < 1000000)
00014e 4824 LDR r0,|L6.480|
000150 68c0 LDR r0,[r0,#0xc]
000152 4933 LDR r1,|L6.544|
000154 4288 CMP r0,r1
000156 d20b BCS |L6.368|
;;;781 {
;;;782 sprintf(buf, "Time %3dms", g_DSO.TimeBase / 1000);
000158 4821 LDR r0,|L6.480|
00015a 68c0 LDR r0,[r0,#0xc]
00015c f44f717a MOV r1,#0x3e8
000160 fbb0f4f1 UDIV r4,r0,r1
000164 4622 MOV r2,r4
000166 a12f ADR r1,|L6.548|
000168 4668 MOV r0,sp
00016a f7fffffe BL __2sprintf
00016e e009 B |L6.388|
|L6.368|
;;;783 }
;;;784 else
;;;785 {
;;;786 sprintf(buf, "Time %3ds ", g_DSO.TimeBase / 1000000);
000170 481b LDR r0,|L6.480|
000172 68c0 LDR r0,[r0,#0xc]
000174 492a LDR r1,|L6.544|
000176 fbb0f4f1 UDIV r4,r0,r1
00017a 4622 MOV r2,r4
00017c a12c ADR r1,|L6.560|
00017e 4668 MOV r0,sp
000180 f7fffffe BL __2sprintf
|L6.388|
;;;787 }
;;;788 LCD_DisplayString(230, 224, (uint8_t *)buf);
000184 466a MOV r2,sp
000186 21e0 MOVS r1,#0xe0
000188 20e6 MOVS r0,#0xe6
00018a f7fffffe BL LCD_DisplayString
;;;789
;;;790
;;;791 /* 显示调节模式 */
;;;792 LCD_SetTextColor(White); /* 白字 */
00018e f64f70ff MOV r0,#0xffff
000192 f7fffffe BL LCD_SetTextColor
;;;793 LCD_SetBackColor(Blue); /* 蓝底 */
000196 201f MOVS r0,#0x1f
000198 f7fffffe BL LCD_SetBackColor
;;;794 if (g_DSO.AdjustMode == 1)
00019c 4810 LDR r0,|L6.480|
00019e f890002f LDRB r0,[r0,#0x2f]
0001a2 2801 CMP r0,#1
0001a4 d105 BNE |L6.434|
;;;795 {
;;;796 LCD_DisplayString(245, 2, (uint8_t *)"调节位置");
0001a6 a225 ADR r2,|L6.572|
0001a8 2102 MOVS r1,#2
0001aa 20f5 MOVS r0,#0xf5
0001ac f7fffffe BL LCD_DisplayString
0001b0 e004 B |L6.444|
|L6.434|
;;;797 }
;;;798 else
;;;799 {
;;;800 LCD_DisplayString(245, 2, (uint8_t *)"调节幅度");
0001b2 a225 ADR r2,|L6.584|
0001b4 2102 MOVS r1,#2
0001b6 20f5 MOVS r0,#0xf5
0001b8 f7fffffe BL LCD_DisplayString
|L6.444|
;;;801 }
;;;802
;;;803 sprintf(buf, "采样频率:%7dHz", g_DSO.SampleFreq);
0001bc 4808 LDR r0,|L6.480|
0001be a125 ADR r1,|L6.596|
0001c0 6882 LDR r2,[r0,#8]
0001c2 4668 MOV r0,sp
0001c4 f7fffffe BL __2sprintf
;;;804 LCD_DisplayString(75, 2, (uint8_t *)buf);
0001c8 466a MOV r2,sp
0001ca 2102 MOVS r1,#2
0001cc 204b MOVS r0,#0x4b
0001ce f7fffffe BL LCD_DisplayString
;;;805 }
0001d2 b008 ADD sp,sp,#0x20
0001d4 bd10 POP {r4,pc}
;;;806
ENDP
0001d6 0000 DCW 0x0000
|L6.472|
0001d8 56302e3600 DCB "V0.6",0
0001dd 00 DCB 0
0001de 00 DCB 0
0001df 00 DCB 0
|L6.480|
DCD g_DSO+0x4000
|L6.484|
0001e4 4348312044432000 DCB "CH1 DC ",0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -