STC-ISP是学习STC单片机过程中下载程序的软件,目前大多数计算机爱好者的计算机系统都是window7/window8(32/64bit),在使用这款软件的过程中会遇到很多问题。这里我通过网络搜集整理,总结了几种主要问题和解决方法。

这里主要是我在测试新买单片机的过程中遇到的问题,由于不是很熟悉单片机,部份表述可能不妥当。由于计划在等待过年之后找工作这段时间了解一下单片机,也就冲动了一下在淘宝上购买了一款东流电子的单片机+AVR两用的开发板。测试完之后,暂时还是继续之前的复习–ARM相关。这样莽撞的自己一个人摸索,也不知道会怎么样,总之希望坚持自己的想法,过年之后争取抓住机会,找个好工作。

目前STC-ISP在网上主要盛传两个版本,一个是基于VB开发(道听途说)的免安装版(V4.83),另一个是官网(点此直达)可下载的基于VC++开发的新版本(v6.24点击可下载)。两者的界面还是有所区别的,根据个人习惯来使用。这里我主要是总结了V4.83免安装版的使用问题。主要问题大致如下几种:

  • 1、STC-ISP 软件打不开,提示控件未注册
  • 2、串口驱动没装上,串口识别不了,或者串口驱动有问题
  • 3、单片机损坏,或者单片机线路没接对

关于STC-ISP的打不开的解决方法:

方法一:右击“以管理员身份运行”,这样应该都是可以打开的。但是每次都得右击以管理员身份打开,不是很方便,所以推荐采用第二种解决方法。

方法二:

32bit window7/window8平台:

把STC ISP 目录下的

  • mscomm32.ocx
  • mscomctl.ocx
  • msstdfmt.dll
  • comdlg32.ocx

这四个文件复制到C:\Windows\System32 这个文件夹里面,然后,把以下代码复制到记事本,另存为 install.bat,接着右击刚刚保存好的 install.bat 文件,选择以管理员身份运行

  1. regsvr32 mscomctl.ocx
  2. regsvr32 msstdfmt.dll
  3. regsvr32 mscomm32.ocx
  4. regsvr32 comdlg32.ocx

64bit window7/window8平台:

把STC ISP 目录下的

  • mscomm32.ocx
  • mscomctl.ocx
  • msstdfmt.dll
  • comdlg32.ocx

这四个文件分别复制到 C:\Windows\SysWOW64(64位系统才有这个文件夹)和 C:\Windows\System32这两个文件夹里面,然后,把以下代码复制到记事本,另存为 install.bat,接着右击刚刚保存好的 install.bat 文件,选择以管理员身份运行

  1. regsvr32 %systemroot%\syswow64\mscomctl.ocx
  2. regsvr32 %systemroot%\syswow64\mscomctl.ocx
  3. regsvr32 %systemroot%\syswow64\mscomm32.ocx
  4. regsvr32 %systemroot%\syswow64\comdlg32.ocx
  5. regsvr32 mscomctl.ocx
  6. regsvr32 msstdfmt.dll
  7. regsvr32 mscomm32.ocx
  8. regsvr32 comdlg32.ocx

执行之后应该会看到每个文件都成功注册的提示。这样我们就可以直接双击图标运行STC-ISPV4.83了。

上述步骤完成后,插上USB转串口线,开始安装驱动(光盘里附带PL2303驱动,根据平台选择驱动安装程序,window8会自动识别PL2303芯片然后从网络下载)。

关于串口驱动问题的解决方案:

1.驱动的选择:根据之前学习ARM的经验,如果是widnows7系统,应该选择网络盛传的vista平台驱动,而网络上所提供的所谓win7/8驱动装上反而是不成功的。需要的朋友可以下载我之前整理的(xp/vista/win7驱动),下载链接:http://www.kuaipan.cn/file/id_22375181884326193.htm

2.驱动安装成功后,打开设备管理器应该会看到串口设备。

pl2303-device

3.由于windows8会自动更换来自Windows的驱动程序,所以在装完我们下载的驱动以后我们可能需要设置一下从不安装来自Windows的更新程序驱动软件”(保持“自动获取设备应用以及设备制造商提供的信息”选中)

步骤如下:

1、 打开“控制面板”->搜索“设备”(在控制面板右上角的搜索栏里输入“设备”即可)

2、 单击“设备和打印机”选项下的“更改设备安装设置”

3、 在弹出的对话框中选择“否,让我选择要执行的操作”->选择“从不安装来自Windows的更新程序驱动软件”(保持“自动获取设备应用以及设备制造商提供的信息”选中)

4、 点击“保存更改”就OK了。

下载失败的问题,提示等待给MCU加电或者重新握手失败的解决方案

检查设置选项:

1.芯片选择是否正确,关于芯片型号可以在单片机上看到,或者通过软件检测。

2.把最高和最低波特率都调为最低的1200,应该就能够正常下载了,然后依次把波特率调高,直到无法在正常下载时,这个波特率就是你下载时所能使用的最高波特率了,所以以后下载时设为这个波特率就没问题了。(附:我在这里纠结了一整天,一直以为是单片机的问题,之前学习ARM时一直都把115200作为固定的波特率,到这里还有些反映迟钝)。

3.先点击下载后,再给板子加电,可以重复几次。

到这里,我遇到的问题基本解决了,由于我也是一个单片机初学者,关于设置的具体原理也不是特别明白,希望在以后的学习过程中可以加强理解。

参考资料:

win7/8(32/64bit)系统下使用STC-ISP的问题与解决方法
Tagged on:     

发表评论

电子邮件地址不会被公开。 必填项已用*标注

This site uses Akismet to reduce spam. Learn how your comment data is processed.