单片机应用程序的编辑、编译一般都采用Keil集成开发环境实现,但程序的调试有多种方法,如软件仿真调试、硬件(在线)仿真调试与Proteus软件模拟调试等,如图2.1所示。
图2.1 单片机应用程序的编辑、编译与调试流程
Keil能够实现汇编语言源程序和C语言源程序的输入、编辑与编译,生成机器代码文件,还能够实现模拟调试及与目标电路板的在线调试。
1.下载Keil C251安装程序
登录Keil官网,如图2.2所示,单击C251选项,按提示输入相关信息,单击“确定”按钮下载Keil C251安装程序。
图2.2 C251下载界面
2.安装
(1)双击安装程序,如图2.3所示,在弹出“License Agreement”界面中勾选“I agree to all the terms of the preceding License Agreement”,单击“Next”按钮进入下一步。
(2)如图2.4所示,在弹出的“Welcome to Keil μVision”界面中单击“Next”按钮进入下一步。
图2.3 “License Agreement”界面
图2.4 “Welcome to Keil μVision”界面
(3)选择安装路径,默认的安装路径是C:\Keil_v5,如图2.5所示,单击“Next”按钮进入下一步。
图2.5 选择安装路径
(4)填写个人信息,如图2.6所示,单击“Next”按钮进入下一步。
(5)安装完成,如图2.7所示,单击“Finish”按钮结束安装。
图2.6 填写个人信息
图2.7 安装完成
3.添加型号和头文件到Keil C251中
使用Keil C251之前需要先安装STC单片机的型号、头文件与仿真驱动文件,安装步骤如下:
(1)打开STC-ISP在线编程软件(可从STC官方网站下载),然后在软件右边功能区的“Keil仿真设置”界面中单击“添加型号和头文件到Keil中添加STC仿真器驱动到Keil中”按钮,如图2.8所示。
图2.8 添加型号与头文件
(2)如图2.9所示,在弹出的界面中,将添加路径定位到Keil C251的安装目录(如C:/Keil_v5),单击“确定”按钮。
(3)安装成功后的界面如图2.10所示。
图2.9 选择添加路径
图2.10 安装成功后的界面
4.应用Keil C251进行应用程序的输入、编辑与编译并生成机器代码
1)新建项目文件夹
在项目目标处新建一个当前项目的文件夹,用于存放当前项目的相关文件,如H:/32位8051单片机原理与应用/STC32DEMO。
2)新建项目
(1)打开Keil C251软件,单击“Project”菜单中的“New μVision Project…”项,在弹出的界面中选择新建项目存储的目标路径,以及输入新建项目的名称,然后保存,如图2.11所示。
(2)选择目标芯片。如图2.12所示,在弹出的界面中单击下拉按钮,选择“STC MCU Database”,在STC库中选择“STC32G12K128 Series”芯片,然后单击“OK”按钮,完成“demo”项目的创建。
图2.11 选择新建项目目标路径与设置新建项目名称
图2.12 选择目标芯片
3)新建文件
(1)单击“File”菜单中的“New”项,弹出新建文件(Text1)界面,单击保存按钮,如图2.13所示。
图2.13 新建文件
(2)输入源程序文件名与文件类型。在文件保存界面中,输入文件名与文件类型,即demo.c,单击“保存”按钮,完成“demo.c”的创建,如图2.14所示。
图2.14 设置文件名与文件类型
注意: 如源程序文件是C语言文件,后缀名为c;如源程序文件是汇编语言文件,后缀名为asm。
(3)输入与编辑源程序文件(demo.c),单击“保存”按钮。demo.c清单如下:
4)将新建文件添加到当前项目中
鼠标右键单击“Source Group 1”并选择“Add Existing Files to Group 'Source Group 1'…”,如图2.15所示;在弹出的界面中选择“demo”(即demo.c),单击“Add”按钮,如图2.16所示,关闭添加文件界面。
图2.15 选择添加程序文件
图2.16 选择添加的程序文件
5)设置编译环境
单击工具栏中的
按钮,打开编译环境设置界面。
(1)设置项目1:在“Target”标签页中将“CPU Mode”项设为“Source(251 native)”,如图2.17所示。
(2)设置项目2:在“Target”标签页中将“Memory Model”项设为“XSmall:near vars,far const,ptr-4”,如图2.18所示。
图2.17 “Target”标签页(设置项目1)
图2.18 “Target”标签页(设置项目2)
(3)设置项目3:当程序大小不超过64KB时,在“Target”标签页中将“Code Rom Size”项设为“Large:variables in XDATA”,如图2.19所示;当程序大小超过64K字节时,在“Target”标签页中将“Code Rom Size”项设为“Huge:64K functions,16M progr”,此时需要保证单个函数及单个文件的代码大小必须在64KB以内,并且单个表格的数据量也必须在64KB以内,同时还需要设置“External Memory”,如图2.20所示。
图2.19“Target”标签页(当程序大小不超过64KB时)
图2.20“Target”标签页(当程序大小超过64KB时)
(4)设置项目4:若程序空间超过64KB,则在“Output”标签页中必须将“HEX Format”项设为“HEX-386”,只有当程序空间不超过64KB时,此项才可设为“HEX-80”,如图2.21所示。
(5)设置项目5:编译时创建hex文件。勾选“Create HEX File”选项,如图2.21所示。
6)编译程序文件
单击
按钮或
按钮,Keil C251进入编译过程,编译完成后,界面底部输出窗口(Build Output)显示编译输出信息,如图2.22所示。如有Warning或Error信息,在窗口中,双击该信息,可以直接调转至其在程序中对应的行,以便编程者对程序进行分析与纠错,纠错后再编译,直至显示“0Error(s)”,此时才算编译成功,实际应用中,最好是“0Error(s),0Warning(s)”。
图2.21“Output”标签页
图2.22 编译输出信息
5.应用Keil C251模拟调试(仿真)单片机应用程序
Keil C251不仅可编辑C语言源程序和汇编语言源程序,还可以软件模拟和硬件仿真的形式调试用户程序,以验证用户程序的正确性。在下文介绍仿真的过程中,我们主要学习两个方面的内容:一是程序的运行方式,二是如何查看与设置单片机内部资源的状态。
在编译环境设置界面的“Debug”标签页中设置仿真方式,如图2.23所示,系统默认设置是模拟仿真;硬件(在线)仿真需要采用STC-USB Link1工具,其连接方法如图2.24所示。
图2.23 “Debug”标签页(设置仿真方式)
图2.24 硬件(在线)仿真连接示意图
在此重点介绍模拟调试(仿真),其步骤如下。
1)进入调试界面
单击工具栏中的
按钮,进入Keil C251的调试界面,如图2.25所示。
(1)调试工具按钮:从左至右依次为Reset(复位)、Run(全速运行)、Stop(停止运行)、Step(跟踪运行)、Step Over(单步运行)、Step Out(执行跟踪并跳出当前函数)、Run to Cursor Line(执行至光标处)。单击其中任意工具按钮,系统就会执行该工具按钮对应的功能。
①
(复位):使单片机的状态恢复到初始状态。
②
(全速运行):系统从0000H开始运行程序,若无断点,则无障碍运行程序;若遇到断点,则程序在断点处停止,再单击此工具按钮,程序会从断点处继续运行。
提示:断点的设置与取消
双击需要设置断点的指令行,即可设置断点,此时在指令行的左边会出现一个红色方框;反之,双击需要取消断点的指令行,则取消该断点。断点主要用于分块调试程序,便于缩小程序故障范围。
图2.25 Keil C251的调试界面
③
(停止运行):从程序运行状态中退出。
④
(跟踪运行):每单击该按钮一次,系统执行一条指令,包括子程序(或子函数)中的每一条指令。运用该工具按钮,可逐条指令进行程序调试。
⑤
(单步运行):每单击该按钮一次,系统执行一条指令,但系统将调用子程序指令当作一整条指令执行。
⑥
(执行跟踪并跳出当前函数):当执行跟踪操作进入了某个子程序时,单击该按钮,可从子程序中跳出,回到调用该子程序指令的下一条指令处。
⑦
(执行至光标处):单击该按钮,程序从当前位置运行到光标处停下,其作用与断点类似。
(2)调试程序窗口:调试程序窗口中显示当前调试的源程序,在此可设置程序运行的目标处及设置断点;在跟踪运行或单步运行模式中,通过调试程序窗口可观察到每一步的运行位置。
(3)寄存器窗口:寄存器包括R0~R14寄存器(在软件界面上显示的为r0~r14)、累加器A、寄存器B、程序状态字寄存器PSW、数据指针寄存器DPTR及程序计数器PC等。在此窗口中可用鼠标左键双击要设置的寄存器,修改其数据。
(4)存储器窗口:存储器窗口用于显示当前程序内部数据存储器、外部(扩展)数据存储器与程序存储器的内容。在“Address”地址框中输入存储器类型与地址,存储器窗口即可显示与输入类型相同且起始地址为输入地址的存储单元的内容,通过移动垂直滑动条可查看其他地址单元的内容。在此可修改存储单元的内容。“c:存储器地址”表示显示的是程序存储区相应地址的内容,“x:存储器地址”表示显示的是扩展数据存储区(xdata)相应地址的内容,“e:存储器地址”表示显示的是数据存储区(edata)相应地址的内容。
在显示数据的区域单击鼠标右键,可以在弹出的快捷菜单中选择修改存储器内容的显示格式或修改指定存储单元的内容。
(5)反汇编窗口:反汇编窗口同时显示机器代码程序与汇编语言源程序(或显示C51源程序和相应的汇编语言源程序)。
(6)内部端口菜单:通过单击此菜单上的选项可打开内部I/O端口的控制窗口,可用于设置内部端口的初始状态及观察程序运行过程中内部端口的当前状态,包括Interrupt(中断)、I/O-Ports(并行I/O端口)、Serial(串行端口)、Timer(定时器)等内部端口的控制窗口。
2)调试用户程序
本示例程序用到P1口和P3口,P1口用于显示流水灯信息,P3口的P3.2用于改变流水灯移动的方向。选择Peripherals→I/O-Ports→P1菜单命令可调出P1口控制窗口,选择Peripherals→I/O-Ports→P3菜单命令可调出P3口控制窗口,如图2.26所示。每个控制窗口的主要内容分3行,第1、2行代表端口锁存器输出信息,第3行代表端口输入引脚信息。信息显示有2种形式:①为十六进制,②为二进制,“√”代表高电平,空白代表低电平。通过第1行可以设置端口(输出)的初始状态,通过第3行可以设置端口输入引脚的信息,可以在①框中输入十六进制信息,也可在②框中单击需要调整的二进制位。
图2.26 Keil C251的P1口和P3口控制窗口
单击全速运行按钮
,此时P3.2输入高电平,观察P1口控制窗口中“√”的移动方向和移动间隔。
单击P3.2的输入引脚位,让P3.2输入电平为低电平,观察P1口控制窗口中“√”的移动方向和移动间隔。
STC大学推广计划实验箱(9.4)是基于STC32G12K128单片机开发的实验箱,直接通过USB端口下载程序,其主控单片机是高端STC 8位单片机STC8G8K64U,除此以外,二者完全一致。下面介绍STC大学推广计划实验箱(9.4)(以下简称实验箱)中的各模块电路。
1.STC32G12K128单片机最小系统
STC32G12K128单片机与外围电路如图2.27所示。
2.STC32G12K128单片机的引脚
实验箱中的STC32G12K128单片机周边引出了64个引脚插孔,如图2.28所示,如实际操作中需要,可焊上插针,使用很方便。
3.电源控制与指示模块
如图2.29所示,该模块的电源控制由开关三极管Q2、二极管D7、按键SW19及电阻(R46、R47)组成。SW19未按下时,Q2导通,系统通电;按住SW19时,Q2截止,系统断电。LED5、R44构成USB输入电源指示电路,LED6、R45构成系统电源指示电路。
图2.27 STC32G12K128单片机与外围电路
图2.28 实验箱中的STC32G12K128单片机
图2.29 电源控制与指示模块
4.程序下载通信模块
如图2.30所示,程序下载通信模块对应2种程序下载模式:一是USB端口转串行端口,由核心芯片PL2003(U5)、电容(C16、C19、C20)、电阻(R84、R69、R88)和二极管D5组成;二是通过USB端口直接下载,USB端口的D+、D-分别经R139、R140接单片机的D+(P3.1)、D-(P3.0)。J4、J6分别为普通USB插座和迷你USB插座,R56与D1构成稳压电路,R56为功率电阻,其作用类似电路中的熔断器。实验箱未配置USB端口转串行端口程序下载电路,而是直接采用通过USB端口下载的方式。
5.独立键盘模块
如图2.31所示,独立键盘模块包含4组按键电路:R82、SW17将按键信号经R10送至P3.2输入,R83、SW18将按键信号经R11送至P3.3输入,SW21、R7与内部上拉电阻将按键信号送至P3.4输入,SW22、R8与内部上拉电阻将按键信号送至P3.5输入。按键松开时输出高电平,按键按住时输出低电平。使用SW21、SW22按键时,需要编程使能P3.4、P3.5内部的上拉电阻。
图2.30 程序下载通信模块
图2.31 独立键盘模块
6.LED灯显示模块
如图2.32所示,LED灯显示模块包含8路LED显示,低电平驱动:LED4与R95由P6.0控制;LED11与R96由P6.1控制;LED12与R97由P6.2控制;LED13与R98由P6.3控制;LED14与R99由P6.4控制;LED15与R100由P6.5控制;LED16与R101由P6.6控制;LED17与R102由P6.7控制。三极管Q11与R9构成该模块电源的控制电路,由P4.0控制,当P4.0输出高电平时,该模块失电,反之,该模块得电。
图2.32 LED灯显示模块
7.LED数码管显示模块
如图2.33所示,LED数码管显示模块是通过8位LED数码管进行显示的,主要由2个4位LED数码管组件(U12、U13)组成,是共阳极数码管,段控制端a~h分别由P6.0~P6.7控制,每条支路中间串联1个限流电阻(R35~R42),位控制端接由P7口控制的驱动电路的输出端,P7.0对应最右边(最低位)的数码管,P7.7对应最左边(最高位)的数码管。
图2.33 LED数码管显示模块
8.LED数码管位驱动模块
如图2.34所示,P7.0~P7.7为驱动电路的8位输入端,COM0~COM7为驱动电路的8位输出端,对应接8位数码管的位控制端。输入低电平时,对应的三极管导通,接通LED数码管电源,位控制端输入有效(该显示位显示);输入高电平时,对应的三极管截止,断开LED数码管电源,位控制端输入无效(该显示位不显示)。
图2.34 LED数码管位驱动模块
9.矩阵键盘模块
如图2.35所示,这是一个2×4的矩阵键盘,共8个按键,2个行输入端分别接P0.6、P0.7,4个列输入端分别接P0.0~P0.3。实际上,通用的标准矩阵键盘一般是4×4的矩阵键盘,共16个按键,当编程用到的按键数超过8个时,建议使用ADC键盘。
图2.35 矩阵键盘模块
10.基准电压模块
如图2.36所示,基准电压模块主要由基准电压芯片U8(CD431)、R16、R78、R79和C24组成,VREF端为基准电压输出端,输出电压为2.5V。
图2.36 基准电压模块
11.NTC测温模块
如图2.37所示,NTC测温模块由NTC电阻、R6和C6组成。当温度变化时,NTC电阻的阻值发生变化,进而其承受的分压发生变化,通过测量NTC电阻两端的电压,可将其按一定规律转化为温度信息,NTC电阻两端的电压信息通过A/D转换模块进入输入通道3。
图2.37 NTC测温模块
12.串行端口2的RS232通信电路及通信指示电路
如图2.38所示,串行端口2(切换1组引脚)的RS232通信电路由RS232转换芯片SP3232(U4)、外围电容元件(C9、C10、C11、C29、C12、C13)、D4、R50、R51及J2组成。J2为9针RS232插座,用于连接PC的RS232端口。LED9、R54构成串行端口2接收端通信指示电路,LED10、R55构成串行端口2发送端的通信指示电路,当然也可以用作一般的LED指示。
图2.38 串行端口2的RS232通信电路与通信指示电路
13.串行端口2与串行端口3的TTL电平通信电路
如图2.39所示,当J7、J8短路帽被短接,就构成了串行端口2与串行端口3之间的通信电路。注意,串行端口2、串行端口3的发送、接收引脚都是切换1组对应的引脚。
14.红外遥控发射与接收模块
如图2.40所示,红外遥控接收模块由红外接收组件(U7)、R1和C3组成。接收到红外信号后,U7的OUT端输出高电平,此信号通过P3.5输入单片机。红外遥控发送模块由红外发射管LED1、三极管Q1、R4、R5和C31组成,当P2.7输出低电平时,Q1导通,红外发射管LED1发射红外信号;当P2.7输出高电平时,Q1截止,红外发射管LED1不工作。
图2.39 双串行端口RS232电平转换模块
图2.40 红外遥控发射与接收模块
15.SPI端口实验电路
如图2.41所示,U11是SPI串行总线存储器(PM25LV040),U15是5V-3.3V电压转换芯片(KX6211A33M5)。
图2.41 SPI端口实验电路
16.A/D转换(ADC)键盘电路
如图2.42所示,ADC键盘电路主要由按键SW1~SW16、电阻R19~R34构成。当按住不同的按键时,按键公共端输出不同的电压,经滤波电路(R17、R18、C21)送A/D转换模块输入通道9(P1.0),通过A/D转换模块测量电压的大小来确定是哪个按键被按下。
图2.42 ADC键盘电路
17.PWM输出滤波电路(D/A转换)
如图2.43所示,PWM输出滤波电路(D/A转换)主要由R2、C4、R3和C5构成,用于对P2.3输出的PWM信号进行滤波,实现D/A转换。
18.比较器正极输入电路
如图2.44所示,比较器正极输入电路主要由R12、W1构成,用于给比较器正极提供直流输入电压。
图2.43 PWM输出滤波电路(D/A转换)
图2.44 比较器正极输入电路
19.蜂鸣器电路
如图2.45所示,蜂鸣器电路主要由三极管T2、蜂鸣器BEEP1、R87、D6和C35构成。当P5.4输出低电平时,T2导通,蜂鸣器得电发声;当P5.4输出高电平时,T2截止,蜂鸣器断电不工作。
20.DS18B20模块
如图2.46所示为DS18B20模块。其中,T1是温度测量芯片DS18B20(单总线元器件)。
图2.45 蜂鸣器电路
图2.46 DS18B20模块
21.LCD12864模块
如图2.47所示为LCD12864模块。其中,W2构成对比度调节电路,可用于引出单片机对应的引脚信号。
图2.47 LCD12864模块
22.TFT彩屏的引脚插座
TFT彩屏的引脚插座由J1、J2、J3、J4插座组成,用于连接TFT彩屏,也可用于引出单片机对应的引脚信号,其引脚定义如图2.48所示。
图2.48 TFT彩屏的引脚定义
23.并行扩展32KB RAM电路
如图2.49所示为并行扩展32KB RAM电路。其中,U9是32KB RAM芯片,地址总线为15位,数据总线为8位;U10是8位锁存器,当并行总线扩展片外存储器时,U10用于锁存低8位地址总线数据。
24.I 2 C电路—24C02
如图2.50所示为I 2 C电路—24C02。其中,U3是用于进行I 2 C总线通信的EEPROM芯片,24C02的容量是2KB。
STC32G12K128单片机迷你核心学习板基于STC32G12K128单片机开发,每个I/O端口都接有LED灯指示电路,下载程序直接采用USB端口通信,该学习板有2个版本:一是STC32G12K128转STC89C52双列直插引出(又称“降龙棍”核心板),二是STC32G12K128直接以64引脚引出(又称“屠龙刀”核心板)。
“降龙棍”核心板采用LQFP48封装芯片,对标STC89C52芯片双列直插引出40个引脚,包括电源通断控制电路、复位按钮、P3.2按钮、P3.3按钮、电源端口,以及Type C端口。
图2.49 并行扩展32KB RAM电路
图2.50 I 2 C电路—24C02
“屠龙刀”核心板采用LQFP64封装芯片,内置电源通断控制电路、3.3V电源、复位按钮、P3.2按钮、P3.3按钮、P3.4按钮、P3.5按钮、测温电路、PWM输出滤波电路(3路)、CAN总线收发器、LIN总线收发器、STC-USB Link1端口、基准电源及Type C端口等。
无论是“降龙棍”核心板,还是“屠龙刀”核心板,都没有数字、字符显示元器件,为此,STC为其配置了接7段数码管、LCD12864、OLED12864,以及虚拟键盘等的调试端口,便于开展系统设计与程序调试,详见18.3.1、18.3.2小节的内容。
STC32G12K128单片机有两种方式下载程序:一种是USB端口转串行端口,另一种是直接用USB端口通信。
1.USB端口转串行端口
PC的USB端口与STC32G12K128单片机串行端口的通信线路可以采用CH340G转换芯片,也可以采用PL2303-GL转换芯片。实验箱可以采用PL2303-GL转换芯片(可实现在线编程与在线仿真),通信线路如图2.30所示,目前市面上在售的实验箱未焊接该部分电路。
2.直接用USB端口通信
STC32G12K128单片机采用最新的在线编程技术,除可以通过USB端口转串行端口进行数据传输外,还可直接利用PC与STC32G12K128单片机的USB端口进行通信,实验箱默认采用此方式进行通信,但采用该通信方式时,实验箱目前不支持在线仿真。
1.应用程序的下载
用USB线将PC与实验箱的J4端口相连。利用STC-ISP在线编程软件(以下简称STC-ISP)可将用户程序下载到单片机中。
STC-ISP可在STC官方网站下载,下载并安装后,运行程序,即可弹出如图2.51所示的STC-ISP工作界面,按如下步骤操即可完成程序的下载。
图2.51 STC-ISP工作界面
提示: STC-ISP工作界面的右侧为单片机开发过程中的常用工具。
步骤1: 选择单片机的型号。单片机的型号必须与实际所使用单片机的型号一致。单击“芯片型号”的下拉菜单,找到STC32G12K128系列并展开,选择STC32G12K128-Beta(目前该系列只有这个型号)。
步骤2: 打开文件。打开要下载到单片机中的用户程序,此类用户程序是经过编译而生成的机器代码文件,扩展名为“.hex”,如“流水灯.hex”。
步骤3: 设置硬件选项。一般情况下,保留默认设置即可。
提示:根据用户程序设置的时钟频率设置“输入用户程序运行时的IRC频率”选项。
步骤4: 按住SW17(P3.2)按键后再按一下SW19(ON/OFF)按键,重新给单片机上电,等待STC-ISP“扫描串口(串行端口)”选项中出现“STC USB Writer(HID1)”(见图2.52)时,松开SW17按键。
图2.52 建立USB端口通信
步骤5: 单击“下载/编程”按钮后,开始将用户程序下载到单片机中。下载完毕后,单片机自动运行用户程序。
若勾选“每次下载前都重新装载目标文件”,则当用户程序发生改变后,不需要进行步骤2。若勾选“当目标文件变化时自动装载并发送下载命令”,则当用户程序发生改变后,系统会自动侦测到该变化,并启动“装载用户程序并发送下载命令”流程。该选项只有设置了自动不停电下载时才可勾选,详见2.4.2小节相关内容。
2.用户程序的在线调试
本书所述的用户程序是在实验箱中进行调试的,当完成用户程序下载步骤后,实验箱中的单片机将自动运行用户程序。
STC-ISP除能给目标单片机下载用户程序外,还有许多其他强大的功能,简单说明如下。
(1)Keil C251集成开发环境的设置:一是添加STC系列单片机机型、STC系列单片机头文件,以及STC仿真器;二是生成仿真芯片。
(2)串行端口助手:STC-ISP可作为计算机RS232串行端口的控制终端,控制计算机RS232串行端口发送与接收数据。
(3)HID助手:STC-ISP可作为PC的USB控制终端,控制USB端口发送与接收数据,而且STC-ISP还内嵌了用于USB端口通信的8位LED数码管显示器。
(4)波特率计算器:STC-ISP可用于自动生成STC各系列、型号单片机串行端口应用编程时所需波特率的设置。
(5)软件延时计算器:STC-ISP可用于自动生成软件延时程序。
(6)定时器计算器:STC-ISP可用于自动生成定时器初始化设置程序。
(7)指令表:STC-ISP可提供STC单片机的指令系统,包括汇编符号、机器代码、运行时间等。
(8)示例程序:STC-ISP含有STC各系列、型号单片机的应用示例程序。
(9)STC硬件数学库:STC-ISP含有用于STC各系列、型号单片机的16位、32位乘除法运算及浮点运算的数学函数。
(10)封装引脚:STC-ISP含有STC各系列、型号单片机的引脚图。
(11)选型:使用者可根据需求,通过STC-ISP查询STC单片机的型号与申请样片。
(12)复位到ISP监控程序区:收到用户命令后,STC-ISP可实现在线不停电下载用户程序(通过串行端口模式或USB模式)。
除上述功能外,STC-ISP还包含程序文件显示、EEPROM文件显示、U8W/Link1脱机下载、程序加密传输、ID号加密、下载口令设置、RS485控制、MCU检测、项目程序发布、本机硬盘号读取等功能。