1.4 ISP下载
在系统可编程(In System Programming,ISP)技术是在单片机固化程序时,不必将单片机从目标板上移出,直接利用ISP专用下载线即可对单片机进行程序固化操作。
因单片机生产厂商众多,片内带Flash的单片机型号也较多,所以ISP专用下载线及相应的ISP固化软件也不相同。下面介绍目前流行的AT89系列单片机及STC系列单片机的ISP下载方法。
1. AT89系列单片机下载
首先使用USB口转换串口下载线将单片机与计算机连接好,并双击安装文件CH341SER.INF,在弹出的安装界面中单击“INSTALL”按钮,如图1-23所示,将其安装到计算机中。
然后双击安装文件CH341PAR.INF,在弹出的安装界面中单击“INSTALL”按钮,也将其安装到计算机中。
安装完这两个程序后,可以通过USB口转换串口下载线向AT89S51和AT89S52单片机固化程序。
固化程序时,首先双击CH341DP下载软件,如果使用USB口转换串口下载线将单片机与计算机连接未连接好,将弹出如图1-24所示对话框。如果连接好,则图1-24中的程序提示为“成功打开CH341设备”。
单片机与计算机连接好后,在图1-24中单击“浏览”按钮,找到下载文件,并选择合适的单片机型号,然后单击“配置”按钮,即可将.HEX文件固化到单片机中。
图1-23 安装CH341SER .INF
图1-24 单片机与计算机未连接好
2. STC89系列单片机下载
STC89系列单片机的在线下载是使用单片机UART串口,并在STC下载软件的控制下实现下载。为实现串行下载,需先将串行电缆(或USB转串口电缆)连接PC的COM端口和实验开发板上的RS-232串口,然后在PC上运行STC-ISP程序,在断电情况下将40引脚DIP封装的芯片直接插入实验板的CPU插座,即可进行应用程序的下载。
STC-ISP程序可在深圳宏晶科技公司的网页上免费下载。双击STC-ISP程序图标,启动程序的下载操作界面如图1-25所示。
图1-25 STC-ISP程序的下载操作界面
使用STC-ISP程序对STC89系列单片机的在线下载操作非常简单,下面结合图1-20,对在线下载的具体操作步骤进行说明。
1)直接使用串行电缆下载
(1)使用串行电缆将单片机实验板与PC的COM端口连接好,并断开单片机实验板电源。
(2)在“MCU Type”栏中选择“STC89C52RC”(用户可根据单片机型号进行选择)。
(3)单击“打开程序文件”按钮,打开要烧录的用户程序/数据文件(.HEX),将其调入缓冲区并显示在右边的窗口。
(4)根据串行电路与PC的连接情况,选择相应的COM端口。在“我的电脑”图标上单击鼠右键,从弹出的菜单中选择“属性”,弹出“系统属性”对话框,选择“硬件”选项卡,单击“设备管理器”按钮,弹出“设备管理器”窗口,单击“端口”,即可查看到COM端口。波特率一般保持默认,如果遇到下载问题,可以适当下调一些。
(5)包括5个单选框选项,用户选择后,新设置要在芯片“冷启动”后才能生效。冷启动是指芯片彻底停电后再重新上电。通常情况,用户可直接使用默认设置。
➢ 设置单片机工作采用单倍速(每个机器周期由12个时钟周期构成),还是双倍速(每个机器周期由6个时钟周期构成)。该设置可反复进行,但个别内部已经设好,用户不能更改。
➢ 设置单片机时钟振荡器的内部增益是全增益(full gain)还是半增益(1/2 gain)。若选中半增益可降低对外界的电磁辐射。
➢ 设置ISP下载的先决条件。对一般STC89C52RC/RD单片机来说,应选“P1.0/P1.1与下载无关”;对包含A/D转换的STC89LE单片机来说,应选“P1.0/P1.1=0/0”,并在硬件下载电路上作相应安排。
➢ 根据实际情况,设置是否使用单片机片内扩展的外部RAM。
➢ 根据实际情况,设置下次下载用户程序时,是否将芯片中的数据Flash区一并擦除。
(6)单击“Download/下载”按钮,可将程序和数据下载到单片机中,其烧写速度比一般通用编程器要快。在下载前,用户可对以下两个多选框进行设置。
➢ 是否打开与缓冲区数据相对应的目标文件。
➢ 当目标文件改变时,缓冲区中的数据是否要自动更新。
如果将这两个多选框全部选中,可以在每次编译Keil时HEX代码能自动加载到STC-ISP。
(7)手动接通单片机实验板电源,可将.HEX文件写入单片机内。
〖注意〗
下载前,必须先断开单片机实验板上的电源,并等待一段时间,以便让实验板上的滤波电容充分放电,确保烧写时单片机处于“冷启动”状态,只有这样才能正确执行单片机内的ISP启动程序。
2)使用USB转串口电缆下载 使用USB转串口电缆下载的方法与使用串行电缆的方法基本相同,只是在使用过程需注意以下事项。
(1)必须安装好USB转串口的驱动程序。
(2)最高波特率最好设置为9600b/s。