0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

实现与计算机的USB端口连接的下载线设计

电子设计 来源:郭婷 作者:电子设计 2018-12-24 08:45 次阅读

1 引言

随着单片机技术的不断发展和更新,支持ISP 或IAP 的单片机芯片日益增加,这类单片机芯片的程序下载采用了下载线的方式。这种串行程序下载方式所用的电平为TTL 电平,对单片机接口来说非常安全。单片机生产厂商推荐使用ISP 程序下载方式,如AT89S5X 芯片支持ISP 功能,并用AT89S5X 芯片取代了AT89C5X 芯片。

另一方面,单片机的程序的写入也从使用烧写器写入演化为使用下载线从计算机中将程序直接写入。下载线就是将计算机中的单片机程序写入单片机芯片的连接线。下载线与计算机的连接接口可分为串口下载线、并口下载线和USB 接口的下载线。这种串行程序下载方式所用的电平为TTL 电平,对单片机接口和单片机芯片来说更加安全。同时,采用下载线的程序写入方式不需要每次将单片机从应用电路中取下,既节省了时间,又完全可靠。

从计算机角度来看,今天计算机技术日新月异,计算机的外部接口也在不断的改变,其中主要作为计算机外部设备的外部接口有串行接口、并行接口和USB(Universal SerialBus, USB)接口。而通用串行总线(USB)具有高速、使用灵活方便等特点,成为了计算机的标准配置,并在计算机外部接口不断增多的趋势。为了适应现代计算机的发展,采用USB 接口的下载线是势在必行。

但是,不同的单片机有不同的下载线,一般来说,对应有不同的下载软件和硬件驱动程序。这些软件和程序随着功能的完善和操作等原因还有不同的版本。这造成下载线的使用者需要不断的更新软件,也让使用者在更换单片机时不仅更换下载线,还要熟悉新的下载软件。为此,如果能设计一种不需要下载软件的下载线或统一操作的下载软件,则能大大提高单片机程序下载的操作效率。研究和开发一种通用而不需下载软件的USB 接口的单片机的下载线更为必要。

2 硬件设计

2.1 设计思想

为了能够使用和兼容传统的下载线,一种方式是在计算机中连接一个USB 转并口(或串口)的连接线,然后再连接一根传统的下载线。在市场上,很多USB 转并口的线是给打印机专用的,它并不是一个模拟并口,而是模拟了一个USB 打印机,是不能用来连接并口下载线进行程序下载的。USB 转串口则不一样,因为它是真正的在电脑上模拟了一个串口,一般的编程软件都可以对这个串口进行读写操作。

另一种方式是单独开发的USB 编程器,其功能包含了USB 接口和下载线(也有一部分还带有编程器等功能),一些USB 编程器内部结构是一个USB 转串口的芯片转成串口后再接后续编程电路,这样的方式与单独的USB 转串口加下载线的原理和连接是相同的。

不管是哪一种下载线,都需要对应的驱动程序和下载程序,当然,这些下载线也支持在线仿真等功能。

为了实现计算机中不需要安装下载线驱动程序,在对下载线控制系统调试完成后,计算机系统就可使用系统中自有的USB 驱动程序实现程序对下载线进行读写,这样既能保证了在所有计算机上都可以通用,又实现了在计算机中不需要专用的下载程序,只需要如磁盘操作一样进行复制、粘贴或其他文件复制操作即可将程序写入单片机。

2.2 选用接口器件

在考虑了若干USB 接口芯片后,选用Philips 公司的PDIUSBD12 作为系统的USB 接口芯片,该芯片仅是一块USB转并行接口的系统芯片,所有的应答数据都由单片机提供,能够满足设计需要。

PDIUSBD12 是一款性价比很高的USB 器件,完全符合USB1.1 版的规范,PDIUSBD12 通常用作微控制器系统中实现与微控制器进行通信的高速通用并行接口。PDIUSBD12 引脚功能如图1 所示。

实现与计算机的USB端口连接的下载线设计

图1 PDIUSBD12 引脚图

2.3 PDIUSBD12 与单片机连接

在Philips 的PDIUSBD12 文档中,发布了一个与80C51的典型应用电路,如图2 所示。

实现与计算机的USB端口连接的下载线设计

在图2 中,ALE 接为低电平,表示一个独立的地址和数据总线配置。PDIUSBD12 的A0 脚与80C51 的任意一个I/O 口相连。该端口控制PDIUSBD12 的命令和数据状态。80C51 的多位地址和数据总线可直接与PDIUSBD12 的数据总线相连。

80C51 的频率输入可由PDIUSBD12 的CLKOUT 提供。

2.4 下载线接口电路

下载线的电路由三个部分组成,分别是单片机控制部分、USB 接口处理电路和下载线接口电路。

其中USB 接口处理电路是采用D12 芯片与系统控制单片机芯片的连接方式采用了模拟总线的方式进行连接,数据端口连接到单片机的P0 端口,并在P0 端口上接了一个上拉排阻实现了端口输出高电平。将D12 的读写控制分别接到P3.6 和P3.7 引脚,地址端A0 接到P1.1 引脚上。其时钟信号从CLKOUT 输出,连接到单片机AT89S52 的XTAL1 上,作为单片机的时钟信号,电路如图3 所示。

实现与计算机的USB端口连接的下载线设计

下载线接口采用P2 的部分引脚进行控制,分别是P2.0接OE 端控制输出端口是否有效,P2.1 接SCLK、P2.3 接MOSI、P2.5 接MISO 构成模拟SPI 接口,P2.7 控制目标芯片的RESET 引脚使其进入串行下载模式。另外,保留了P30 和P31 作为异步串行通信端口,作为系统调试端口,P15、P16、P17 和RESET 与VCC、GND 连接到系统控制芯片的程序下载接口。

为了保证在没有写程序时不影响单片机的工作,所有与单片机连接的下载线接口都应保持高阻状态,在需要编程时又能够将对应的电平影响单片机引脚,所以在设计中,参考了原altera 并口下载线的接口电路,采用三态的总线驱动芯片74HC244 作为下载线接口驱动电路。具体的接口电路如图4 所示。

实现与计算机的USB端口连接的下载线设计

图4 下载线接口电路。

下载线接口从1 脚至6 脚,依次是:地、复位、MOSI、MISO、SCK、VCC。

3 PCB 设计

3.1 调试端口

考虑到在具体调试时,下载线采用了串口作为调试端口,将从USB 端口接收到的数据通过串口线重新发回计算机,在计算机中使用串口调试助手显示内容。故将其振荡脉冲由外部D12 送过来的信号改为由单片机外接11.0592MHz 晶振与振荡电容产生的频率,以满足硬件调试需要。

3.2 PCB 制作

在完成了电路原理图的情况下,根据下载线电路原理图设计了PCB 电路图,如图5 所示。图5 是一双面的PCB,图5(a)顶层线路,图5(b)底层线路。

图5(a) 顶层线路

图5(b) 底层线路

在完成软件设计后,用此下载线将单片机与计算机连接,很好的实现了程序下载。

4 结束语

本文所设计的下载线能够实现与计算机的USB 端口连接,通过在单片机向计算机声明为程序下载设备,成为计算机的一个常规设备,通过安装对应的驱动程序后,下载线的硬件就能够正常工作。

同时,对目标单片机来说,采用了74HC244 作为驱动器件,符合常规单片机的驱动要求。在单片机中只要按照目标单片机的下载时序,编写对应的单片机下载程序,即可将从计算机来的代码转发到目标单片机,从而实现单片机的程序下载。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    453

    文章

    50366

    浏览量

    421656
  • 单片机
    +关注

    关注

    6032

    文章

    44513

    浏览量

    632731
  • usb
    usb
    +关注

    关注

    60

    文章

    7889

    浏览量

    263937
  • 计算机
    +关注

    关注

    19

    文章

    7412

    浏览量

    87693
收藏 人收藏

    评论

    相关推荐

    传输线计算机的应用分析 PPT下载

    传输线计算机的应用分析在应用Smith圆图60多年的今天。计算机的飞速发展促成传输线CAD的出现。换句话说,Smith圆图的全部功能都可以由Computer Program来
    发表于 11-02 10:09

    DV与计算机连接后能完成什么功能?

    一般也带有USB接口(除了早期的机器,如NV-DS25EN等),连接线也会随机奉送,此线一端是标准的USB接口,与计算机相连;另一端是一个迷你的接口,用于插入摄像机上标有USB的接口。通过这个接口,在
    发表于 03-16 10:44

    计算机题库系统的设计与实现

    【正文快照】:1系统功能分析计算机题库系统能够实现试题的录入、维护和删除。并具有顺序和随机抽题功能、试题分析、视频演示和自动计时功能。2数据库设计根据系统需求设计以下两个表,这些表既可以设计成数据库表,也可以设计成自由表。2.1ZC.DBFZC.DBF表用于存储合法用户的
    发表于 04-24 09:25

    U盘无法和计算机连接

    很多人在使用U盘的时候,都会出现过U盘无法和计算机连接。这是为什么呢?常规分析:起初怀疑为电路老化断裂,希望找出断线处修复,但拆出闪存电路板后仔细观察,并未发现印刷电路有任何断裂,闪存芯片、接口
    发表于 03-19 15:53

    STC单片机与计算机通信

    各位大佬,本人最近刚开始学习用STC89C516单片机,想用它与计算机通信,可以直接利用单片机上USB转232模块实现么(就一根USB线直接
    发表于 04-28 09:35

    调试stm32L152 u***设备不连接计算机代码不能执行

    本人在调试stm32L152vct6 的USB时,发现一个问题,我的的其他代码都可以正常运行,添加USB代码之后,设备连接计算机,整个代码可以执行执行,如果设备不
    发表于 09-30 09:50

    如何根据用户输入连接USB端口

    您好,我对通过USB端口连接计算机的设备进行了自动测试。我想将此测试的运行时版本发送到另一个国家/地区的测试站点。我希望他们能够根据他们在PC上获得的
    发表于 09-30 16:40

    计算机连接到路由器后网络速度变慢的原因

      将计算机连接到路由器后,网络速度变慢,可以从以下几个方面进行分析:  有线访问情况:  首先:宽带访问的带宽  如果访问带宽为1M,但用户数量已超过2人,并且仍然有人在观看视频,电影以及下载诸如
    发表于 02-02 17:16

    什么是计算机X线摄影

    计算机X线摄影ComputedRadiography,CR,计算机X线摄影,传统的X线成像是经X射线曝光,将影像信息记录在胶片上,在显、定影
    发表于 09-01 06:32

    CH573开发板通过usb线连接计算机(win7 64位),无法安装驱动,提示未知设备怎么解决

    CH573开发板通过usb线连接计算机(win7 64位),无法安装驱动,提示未知设备。
    发表于 07-12 07:05

    如何使用USB端口以高速 (HIGH SPEED) 与计算机通信?

    大家好,我购买了 nucleo-stm32g474 板和 z-nucleo-USBPDM1。我想使用 USB 端口以高速 (HIGH SPEED) 与计算机通信。 我找不到如何执行此操作以及
    发表于 12-01 07:27

    USB端口被占用了,怎样将其他USB设备添加到我的计算机?

    USB端口被占用了,怎样将其他USB设备添加到我的计算机? 现在生产的所有外围设备几乎都配有USB端口
    发表于 07-27 11:11 6562次阅读

    工业计算机不同的io端口的解析

    工业电脑在工业工作负载方面受到追捧,因为它们能够管理各种数据输入,传输有价值的数据用于实时决策。工业电脑可以接受所有这些输入,这归功于您可以配置它们的各种输入和输出(I/O)端口。工业计算机不同的io端口1、串行
    的头像 发表于 12-24 18:52 1167次阅读

    计算机端口在哪里查看

    本文主要详细介绍如何查看计算机端口号。
    的头像 发表于 01-29 17:11 2.8w次阅读

    连接记录计算机模块

    电子发烧友网站提供《连接记录计算机模块.zip》资料免费下载
    发表于 12-09 10:28 0次下载
    <b class='flag-5'>连接</b>记录<b class='flag-5'>计算机</b>模块