ATMEGA8 DIP-28面包板实验

 

01布线和下载


对于已经下载了BOOTLOADERATMEGA单片机,可以直接在面包板上安插实验。

1.MEGA8的DIP-28管脚

▲ ATMEGA8 DIP-28封装

▲ ATMEGA8 DIP-28封装

2.下载线连接

▲ 改装下载线

▲ 改装下载线

 

02测试


1.构建测试面包板

▲ 测试面包板

▲ 测试面包板

测试结果:没有能够完成下载。原因:
(1)可能原来的下载软件中的某些时间在现在的电脑上出了些问题。现在还无法通过调试确认问题所在的;
(2)缺少对照的电路板来对比可能问题所在。

问题解决:
这个问题后来得以解决了。主要是在TXD上没有一个上拉电阻。增加了TXD的上拉电阻之后,便可以正常下载了。

▲ 几个管脚的标志点

▲ 几个管脚的标志点

 

03开发软件配置


1.开发软件ImageCraft

▲ ImageCraft IDE 软件开发环境

▲ ImageCraft IDE 软件开发环境

(1) 配置外部编辑器

下面是配置UltreEdit外部编辑器的语法。
▲ Environment Options

▲ Environment Options

(2) 配置TEASOFT编辑器

D:\zhuoqing\window\cb\PowerPoint\Tools\Batch Command\teasoftopen.bat

▲ IAR Embedded Workbench IDE Option

▲ IAR Embedded Workbench IDE Option

下面是仿照IAR Embedded Workbech for ARM 设置的ImageCraft Envionment Options.
注意: 需要使用Add将设置加入到Editors设置中。

▲ 加入的新的编辑器的设置

▲ 加入的新的编辑器的设置

2.配置TEASOFT环境

由于使用了TEASOFT的编辑器。配置TEXTFORM的run命令。下面是RUN菜单下根据所使用的RUN对应的shift,control的按键,可以条用有六个python程序。

if(ExtractFileExt(m_szFileName).UpperCase() == ".C" ||
   ExtractFileExt(m_szFileName).UpperCase() == ".H" ||
   ExtractFileExt(m_szFileName).UpperCase() == ".CPP") {
    char szPythonFile[0x200];
    strcpy(szPythonFile, "crunpython");
    Save1Click(NULL);

    m_nKeyUpExitFlag = 1;
    if(GetKeyState(VK_RMENU) & 0x80) {
        if(GetKeyState(VK_SHIFT) & 0x80) {
            strcpy(szPythonFile, "crunpython_shift_r");
        } else if(GetKeyState(VK_CONTROL) & 0x80) {
            strcpy(szPythonFile, "crunpython_control_r");
        } else if(GetKeyState(VK_MENU) & 0x80) {
            strcpy(szPythonFile, "crunpython_r");
        }
    } else {
        if(GetKeyState(VK_SHIFT) & 0x80) {
            strcpy(szPythonFile, "crunpython_shift");
        } else if(GetKeyState(VK_CONTROL) & 0x80) {
            strcpy(szPythonFile, "crunpython_control");
        }
    }

修改后的crunpython_shift如下。

#!/usr/local/bin/python
# -*- coding: gbk -*-
#============================================================
# CRUNTYPE.PY                  -- by Dr. ZhuoQing 2020-01-23
#
# Note:
#============================================================

from head import *

tspbeep(1200, 50)
tspsendwindowkey('ImageCraft', 'pm', alt=1)

#------------------------------------------------------------
#        END OF FILE : CRUNTYPE.PY
#============================================================

在crunpython中增加夏应德ImageCraft的语句:

#!/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('Project - IAR Embedded Workbench IDE', 'pm', alt=1)

if ret != 0:
    ret = tspsendwindowkey('ImageCraft', 'pm', alt=1)

if ret != 0:
    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")

#------------------------------------------------------------
#        END OF FILE : CRUNPYTHON.PY
#============================================================

▲ MEGA328 DOWNLOAD Program

▲ MEGA328 DOWNLOAD Program

 

04配置电路板1


前面第二节中进行配置没有成功,但是在下面配置电路小板上,可以正常下载。下面考虑通过重新制版来获得一个可以在面包板上进行下载的转接小板。

同时证明了,在单片机盒中的DIP-28的单片机大部分都是初始化成115200可以下载的BOOTLOADER了。
▲ 配置版可以正常下载

▲ 配置版可以正常下载

1.设计转接板

▲ 下载转接板

▲ 下载转接板

▲ 下载小板

▲ 下载小板

2.下载小板测试

在最初调试时,看到由于没有在TXD增加上拉电阻,使得无法正确下载。增加TXD之后,下载正常了。
这可能是由于在MCU复位阶段,输出产生低电平使得串口出现乱码。

▲ 焊接后的调试小板320

▲ 焊接后的调试小板320

▲ 下载调试小板

▲ 下载调试小板

 

※ 结论


通过重新设计制作UART的转接板,完成对ATMEGA8单片机的ISP下载。拓展了之后基于面包板上的测试实验工具。


  1. 下载板的AD工程文件:AD\Tools\AVR ↩︎

©️2020 CSDN 皮肤主题: Age of Ai 设计师:meimeiellie 返回首页