面包板上调试STC: 8H8K64U

Posted 卓晴

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面包板上调试STC: 8H8K64U相关的知识,希望对你有一定的参考价值。

面包板上的STC8H8K开发

 

01 STC单片机


一、前言

  手边有几片DIP40 封装的STC单片机, 型号为STC8H8K64U。 下面通过面包板对这款单片机的使用进行初步测试。

二、相关资料

  在 STC官方网站可以获得这款单片机的基本资料 , 这里给出了STC8H8K系列的基本特性。 8H8K 是该系列中内部存储空间最大的型号。 网站给出了 STC8H8K的数据手册 , 提供了单片机详细的开发信息。

  这是这款MCU的管脚封装, 它具有两组电源。  串口用于下载程序。 在数据手册中给出了DIP40 下载程序的电路图, 在程序下载时, 数字和模拟电源一起受到外部控制。 图中显示, 下载程序的输入输出端的电阻和二极管可以省略。

三、下载程序

  关于下载接口, 通常使用四芯接口, 其中两个是单片机的电源线与地线,  另外两个是单片机的串口TXD,RXD。 外部通过TTL至RS232转接板与计算机相连。 这是手边自制的带有电源控制的下载板。 它具有四芯接口, 为了方便在面包板上下载程序, 这里制作了转接线, 其中单片机的TXD,RXD需要交叉, 这样便可以直接将其插在单片机P3.0,P3.1 管脚,  完成程序下载。

▲ 图1.2.1 下载程序接口

  这是面包板上 8H8K 单片机连接方式。 单片机工作电源、模拟电源以及参考电源连接到面包板上的两个电源槽内。 面包板的电源是由下载线提供的。 通过STC-ISP 软件进行程序下载。 选择对应的芯片型号, 设定下载串口端口, 使用缺省的下载波特率, 修改单片机内部运行频率, 其余使用缺省设定值, 通过下载按钮下载程序, 也可以在下载之前通过“检测MCU选项” 对单片机进行设定选项检查。 下面进行软件下载。  下载程序自动完成程序下载和校验等过程。 这说明现在面包板上STC8H单片机开发环境已经搭建成功了。

四、配置开发软件

  下面设置开发 Keil C软件。 该软件安装在 C盘的根目录下,  利用 STC-ISP 中的 Keil 仿真器设置中添加信号和头文件, 将对应8H8K单片机的头文件 添加在Keil开发目录中, 这样在增加新的工程文件时, 可以选择对应的STC 单片机型号了。


  在一般的 C51工程文件中,  需要选择用户程序运行IRC频率为 24MHz, 这是因为在缺省情况下, 自己的例程中都是按照 24MHz 来配置内部定时器的参数。 在TEASOFT 软件中, 通过 CRUNPYTHON 程序来自动调用编译器和下载器。 设置下载程序的自动装载选项, 这样可以在每次编译之后都能够自动下载完成程序的动态调试。

#!/usr/local/bin/python
# -*- coding: gbk -*-
#============================================================
# CRUNPYTHON.PY                -- by Dr. ZhuoQing 2020-01-23
#
# Note:
#============================================================
from head import *
from tsmodule.tsstm32       import *
altflag = 0
keyread = tspread()
if keyread[9] != 0: altflag = 1
#------------------------------------------------------------
ret = tspsendwindowkey('IAR Embedded Workbench IDE', 'pm', alt=1)
if ret == 0:
    printf('\\a')
    tspfocuswindow("TEASOFT:1")
    exit()
rect = tspgetwindowrect("ImageCraft")
if ret != 0 and sum(rect) != 0:
    ret = tspsendwindowkey('ImageCraft', 'pm', alt=1)
    printf('\\a')
    tspfocuswindow("TEASOFT:1")
    exit()
rect = tspgetwindowrect("μVision")
if ret != 0 and sum(rect):
    stm32cmd("CLOSEPORT")
    tspsendwindowkey('μVision', 'pb', alt=1)
    if altflag == 0: tspfocuswindow("TEASOFT:1")
    time.sleep(3.0)
    if altflag == 0:
        stm32cmd("REOPENPORT")
    else:
        stm32cmd("REOPENPORTFOCUS")
        tspfocuswindow("STM32")
    printf('\\a')
    exit()
#------------------------------------------------------------
ret = tspsendwindowkey('Arduino 1.8.15', "a", control=1)
if ret == 0:
    filename = tspgeteditfile().split('.')[-1]
    if filename == 'c' or filename == 'C':
        tspcopyclipboard()
        tspsendwindowkey("Arduino 1.8.15", 'vu', control=1)
    else:
        tspsendwindowkey("Arduino 1.8.15", 'vu', control=1)
    printf('\\a')
    tspfocuswindow("TEASOFT:1")
    exit()
#------------------------------------------------------------
#        END OF FILE : CRUNPYTHON.PY
#============================================================

 

  结 ※


  文测试了在面包板上搭建 STC8H8K开发系统, 对相关的软件配置进行测试, 恢复了之前开发的流程。


■ 相关文献链接:

● 相关图表链接:

以上是关于面包板上调试STC: 8H8K64U的主要内容,如果未能解决你的问题,请参考以下文章

测试STC12C5612AD单片机在面包板上下载测试

测试STC32G12K128的几个特性

STC51单片机下载程序的时候不要在VCC端接DHT11

什么是单片机STM8

STM32 和 STC单片机SPI通信字节最后一位出错

STC单片机基于Keil平台在线调试仿真