📄 第二章 keil c51软件使用详解.htm
字号:
</SPAN>列表文件<SPAN lang=EN-US>(listing)控制类:</SPAN></A><SPAN
style="mso-bookmark: _Toc475103141"></SPAN><SPAN lang=EN-US
style="FONT-SIZE: 12pt"><O:P></O:P></SPAN></H3>
<P class=MsoNormal><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体"><SPAN
style="mso-spacerun: yes"> </SPAN>CODE(CD):向列表文件加入汇编列表</SPAN><SPAN
lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体"><SPAN
style="mso-spacerun: yes"> </SPAN>LISTINCLUDE(LC):显示indude文件</SPAN><SPAN
lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体"><SPAN
style="mso-spacerun: yes"> </SPAN>SYMBOLS(SB):列表文件包括模块内所有符号的列表</SPAN><SPAN
lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体"><SPAN
style="mso-spacerun: yes"> </SPAN>WARNINGLEVEL(WL):选择“警告”级别</SPAN><SPAN
lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><O:P></O:P></SPAN></P>
<H2 style="MARGIN-LEFT: 0cm; TEXT-INDENT: 0cm"><A
name=_Toc475103142><SPAN lang=EN-US
style="FONT-SIZE: 16pt">第二节 </SPAN><SPAN
lang=EN-US>dScope51的使用</SPAN></A></H2>
<H3 style="MARGIN-LEFT: 0cm; TEXT-INDENT: 0cm"><A
name=_Toc475103143><SPAN lang=EN-US style="FONT-SIZE: 15pt">1.
</SPAN><SPAN lang=EN-US>dScope51 for Dos</SPAN></A><SPAN
style="mso-bookmark: _Toc475103143"></SPAN><SPAN lang=EN-US
style="FONT-SIZE: 12pt"><O:P></O:P></SPAN></H3>
<P class=MsoBodyTextFirstIndent><SPAN lang=EN-US><SPAN
style="mso-spacerun: yes">
</SPAN>总的来说dScope51具有以下特性:</SPAN></P>
<P class=MsoNormal
style="MARGIN-LEFT: 64pt; TEXT-INDENT: -21.25pt; mso-list: l1 level1 lfo2"><SPAN
lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: Wingdings">l<SPAN
style="FONT: 7pt 'Times New Roman'">
</SPAN></SPAN><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">高级语言显示模式</SPAN><SPAN
lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><O:P></O:P></SPAN></P>
<P class=MsoNormal
style="MARGIN-LEFT: 64pt; TEXT-INDENT: -21.25pt; mso-list: l1 level1 lfo2"><SPAN
lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: Wingdings">l<SPAN
style="FONT: 7pt 'Times New Roman'">
</SPAN></SPAN><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">集成硬件环境模拟</SPAN><SPAN
lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><O:P></O:P></SPAN></P>
<P class=MsoNormal
style="MARGIN-LEFT: 64pt; TEXT-INDENT: -21.25pt; mso-list: l1 level1 lfo2"><SPAN
lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: Wingdings">l<SPAN
style="FONT: 7pt 'Times New Roman'">
</SPAN></SPAN><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">单步或“<SPAN
lang=EN-US>GO”执行模式</SPAN></SPAN><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><O:P></O:P></SPAN></P>
<P class=MsoNormal
style="MARGIN-LEFT: 64pt; TEXT-INDENT: -21.25pt; mso-list: l1 level1 lfo2"><SPAN
lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: Wingdings">l<SPAN
style="FONT: 7pt 'Times New Roman'">
</SPAN></SPAN><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">存储器、寄存器及变量访问</SPAN><SPAN
lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><O:P></O:P></SPAN></P>
<P class=MsoNormal
style="MARGIN-LEFT: 64pt; TEXT-INDENT: -21.25pt; mso-list: l1 level1 lfo2"><SPAN
lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: Wingdings">l<SPAN
style="FONT: 7pt 'Times New Roman'">
</SPAN></SPAN><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">Watch表达式之值</SPAN><SPAN
lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><O:P></O:P></SPAN></P>
<P class=MsoNormal
style="MARGIN-LEFT: 64pt; TEXT-INDENT: -21.25pt; mso-list: l1 level1 lfo2"><SPAN
lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: Wingdings">l<SPAN
style="FONT: 7pt 'Times New Roman'">
</SPAN></SPAN><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">函数与信号功能</SPAN><SPAN
lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><O:P></O:P></SPAN></P>
<P class=MsoBodyTextFirstIndent>下面,具体说明在进入<SPAN
lang=EN-US>dScope51 for
Dos之后,如何实现上述功能,dScope51采用下拉菜单格式和窗口显示控制,共有language、serial、exe、register四个窗口,其中exe为命令行窗口,language为程序窗口,serial为串口窗,register为寄存器窗。</SPAN></P>
<H4 style="MARGIN-LEFT: 0cm; TEXT-INDENT: 0cm"><B><SPAN
lang=EN-US style="FONT-SIZE: 14pt">(1) </SPAN></B><B><SPAN
style="FONT-SIZE: 12pt">高级语言显示模式<SPAN
lang=EN-US><O:P></O:P></SPAN></SPAN></B></H4>
<P class=MsoBodyTextFirstIndent>单击主菜单中的“<SPAN
lang=EN-US>View”,第一栏中的三条命令“Highlevel”、“Mixed”、“Assembly”分别对所装入的程序按照“高级”、“混合级”及“汇编级”三种方式显示,以方便调试使用。</SPAN></P>
<H4 style="MARGIN-LEFT: 0cm; TEXT-INDENT: 0cm"><B><SPAN
lang=EN-US style="FONT-SIZE: 14pt">(2) </SPAN></B><B><SPAN
style="FONT-SIZE: 12pt">集成硬件环境模拟显示<SPAN
lang=EN-US><O:P></O:P></SPAN></SPAN></B></H4>
<P class=MsoBodyTextFirstIndent>主菜单中“<SPAN
lang=EN-US>Peripheral”各条能显示模拟硬件环境的状态,其中:</SPAN></P>
<P class=MsoBodyTextFirstIndent><SPAN lang=EN-US>i/o
Port:显示各I/O口之值,对8031而言SFR中的P1、P2、P3、P0与引脚之值分别列出:</SPAN></P>
<P class=MsoBodyTextFirstIndent><SPAN
lang=EN-US>Interrupt:显示5个中断源的入口模式是否允许,优先级等中断状态。</SPAN></P>
<P class=MsoBodyTextFirstIndent><SPAN
lang=EN-US>Timer:显示各定时/计数器的模式,初始值状态等。</SPAN></P>
<P class=MsoBodyTextFirstIndent><SPAN lang=EN-US>int
Message:中断信息允许,如为允许(“>>”出现),则当中断申请时,显示中断源信息。比如当中断发生时会显示:</SPAN></P>
<P class=MsoNormal style="mso-list: skip"><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><SPAN
style="mso-tab-count: 1">
</SPAN></SPAN><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">“<SPAN
lang=EN-US>interrupt Timer 0 occured”等</SPAN></SPAN><SPAN
lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><O:P></O:P></SPAN></P>
<P class=MsoNormal style="mso-list: skip"><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体"><SPAN
style="mso-spacerun: yes"> </SPAN>A/D
converter:</SPAN><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><O:P></O:P></SPAN></P>
<P class=MsoNormal style="mso-list: skip"><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><SPAN
style="mso-tab-count: 2">
</SPAN></SPAN><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">显示<SPAN
lang=EN-US>A/D转换器状态无时,则提示“无”。</SPAN></SPAN><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><O:P></O:P></SPAN></P>
<P class=MsoNormal style="mso-list: skip"><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体"><SPAN
style="mso-spacerun: yes">
</SPAN>Serial:串口信息显示,包括串口模式、波特产等</SPAN><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><O:P></O:P></SPAN></P>
<P class=MsoNormal style="mso-list: skip"><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体"><SPAN
style="mso-spacerun: yes">
</SPAN>Other:其它器件,如为8031则显示“</SPAN><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><SPAN
style="mso-tab-count: 1"> </SPAN></SPAN><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">无”</SPAN><SPAN
lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><O:P></O:P></SPAN></P>
<H4 style="MARGIN-LEFT: 0cm; TEXT-INDENT: 0cm"><B><SPAN
lang=EN-US style="FONT-SIZE: 14pt">(3) </SPAN></B><B><SPAN
style="FONT-SIZE: 12pt">单步或“<SPAN
lang=EN-US>Go”执行<O:P></O:P></SPAN></SPAN></B></H4>
<P class=MsoBodyTextFirstIndent>“<SPAN
lang=EN-US>F8”单步执行,“F5”全速执行到断点。或选主菜单中Trace单步执行CPU中的Go全速执行。</SPAN></P>
<H4 style="MARGIN-LEFT: 0cm; TEXT-INDENT: 0cm"><B><SPAN
lang=EN-US style="FONT-SIZE: 14pt">(4) </SPAN></B><B><SPAN
style="FONT-SIZE: 12pt">存储器寄存器及变量访问<SPAN
lang=EN-US><O:P></O:P></SPAN></SPAN></B></H4>
<P class=MsoBodyTextFirstIndent>外部存储器管理<SPAN
lang=EN-US>MAP菜单:设置(set)、取消(reset)、显示(Display)处理可用存储空间。</SPAN></P>
<P class=MsoBodyTextFirstIndent>修改<SPAN
lang=EN-US>Code代码:ASM命令</SPAN></P>
<P class=MsoBodyTextFirstIndent>存储器显示命令:<SPAN
lang=EN-US>D<SPAN style="mso-spacerun: yes">
</SPAN>类别为(X、D、I、B、C)</SPAN></P>
<P class=MsoBodyTextFirstIndent>修改存储器命令:<SPAN
lang=EN-US>E<SPAN style="mso-spacerun: yes">
</SPAN>有以下几种命令EB、EC、EI、EL、EF、EP</SPAN></P>
<P class=MsoBodyTextFirstIndent>复杂数据类型显示:<SPAN
lang=EN-US>Object命令;用以显示结构或数组的内容。欲使此命令有效,C51编译器必须有DB及OBJECTEXTEND两条。</SPAN></P>
<P class=MsoBodyTextFirstIndent>反汇编命令:<SPAN
lang=EN-US>U</SPAN></P>
<H4 style="MARGIN-LEFT: 0cm; TEXT-INDENT: 0cm"><B><SPAN
lang=EN-US style="FONT-SIZE: 14pt">(5) </SPAN></B><B><SPAN
style="FONT-SIZE: 12pt">“<SPAN
lang=EN-US>Watch”表达式之值<O:P></O:P></SPAN></SPAN></B></H4>
<P class=MsoBodyTextFirstIndent>在<SPAN
lang=EN-US>View菜单的“Watch”一栏中有四项:其中包括定义Watch
Point(Define)、删除Watch Point(remove,kill
all),及自动更新选项。</SPAN></P>
<P class=MsoBodyTextFirstIndent>也可用<SPAN
lang=EN-US>WS、WK等命令代替,下面具体看“表达式”类型:</SPAN></P>
<P class=MsoBodyTextFirstIndent><SPAN
lang=EN-US>dScope51一次最多可设16个WtchPoint表达式,显示于Watch
Window之中,表达式可以是简单变量,也可是复杂数据类型如结构、数组和指向结构的指针等,例如:</SPAN></P>
<P class=MsoBodyTextIndent style="MARGIN-LEFT: 36.75pt"><SPAN
lang=EN-US>>WS<SPAN style="mso-spacerun: yes">
</SPAN>*ptime</SPAN></P>
<P class=MsoBodyTextIndent style="MARGIN-LEFT: 36.75pt"><SPAN
lang=EN-US>>WS<SPAN style="mso-spacerun: yes">
</SPAN>ptime→hour</SPAN></P>
<P class=MsoBodyTextIndent style="MARGIN-LEFT: 36.75pt"><SPAN
lang=EN-US>>WS<SPAN style="mso-spacerun: yes">
</SPAN>some_record[o],analog等等</SPAN></P>
<H4 style="MARGIN-LEFT: 0cm; TEXT-INDENT: 0cm"><B><SPAN
lang=EN-US style="FONT-SIZE: 14pt">(6) </SPAN></B><B><SPAN
style="FONT-SIZE: 12pt">关于<SPAN
lang=EN-US>.IOF文件<O:P></O:P></SPAN></SPAN></B></H4>
<P class=MsoBodyTextFirstIndent>启动<SPAN
lang=EN-US>DS51后必须装入.IOF文件才能使CPU及Peripheral各项起作用,这个函数的使用是依据8051系列CPU的不同特点,装入8051各CPU硬件设备模拟驱动文件,比如8031CPU就必须load
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -