面包板上调试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的主要内容,如果未能解决你的问题,请参考以下文章