New version released ! V2.45 (Check version list for details)

This construction is based on HappyJTAG Idea, to implement JTAG interface into target avr system and debug it remotly via USB, without specific JTAGICE hardware. All job is done by PC softraware. HappyJTAG version is easy , but not powerfull enough.There is barriere with performance, if you are manipulating with bits via USB interface. USB trafic is to huge to be effective.
This is why I have realized more poverfull version HappyJTAG2.This version uses specialized FT2232 ( or FT2232H ) chip, which has integrated JTAG interface on chip. It radically reduces USB interface communication and speed up overall process. There are two channels in FT2232, Channel A is used for JTAG and channel B is still free for standart serial communication between target and host PC.
Unfortunatly, the FT2232 chip requires more external components than FT232 chip. For example, external crystal oscillator, few more resistors and so on. But the result is balanced, because of overall performance is 100 times better if you compere with original HappyJTAG version.
HappyJTAG2 hardvare is standart published in datasheets, as you can see from schematic file. The main idea is to integrate FT2232 in target board and to use USB interface as standart target board interface for all communication, serial as well as JTAG or SPI. But there is also possible to replace target AVR8 with JTAG or SPI connector and to operate this interface as standart AVR JTAG or SPI interface ( remember, there is not in/out signals level convertors and so on, you have to add them to interface in this case )
All logic is covered by PC application. This application has two connection One is via USB to target and second is via TCP to AVRStudio. All commands are interpreted to FT2232 commands and sended to target FT2232 chip to process JTAG and SPI data integrchange. This PC software works in two modes:

The first mode alows run as independent software. There is support for connecting target via JTAG or SPI, read signature, reset target, download software (*.hex) into tagrget and to manage target fuses (read, write).
The second mode is AVRstudio mode. In this mode PC software interprets AVRStudio requests and communicate with target via JTAG or SPI. For AVRStudio it works as JTAGICEMK2 emulation.

Since version 2.31, there is no need for external Virtual Serial Port emulator. The HappyJTAG2 emulates one of serial port COM1-COM4 byself. You just have to start HappyJTAG2, select "ComX port emulation" radiobutton and open AVRStudio. In AVR Studio choose COMx ( pre-set in menu ) port for JTAGICEMKII device. Its all !
Since 2.33 version, HappyJTAG2 supports also GDB debugger. The interface is TCPIP, port 2232.
HappyJTAG2 PC software was developed for ATMega32 target, however , current version supports more AVR8 modifications. My future plan is to enhance this software for the others AVR devices. There is also Boundary scan, so you can see physical pin states in graphical presentatoion, which is equal to ATMega32 DIP40 target.
Here is list of currently supported AVR8 models : 
JTAG 
- ATmega16 
- ATmega32 
-ATMega128 
-ATMega640 (Not tested yet) 
-ATMega644 (Not tested yet) 
-ATMega644P 
-ATMega1280 (Not tested yet) 
-ATMega2560 (Not tested yet) 
-ATMega1281 (Not tested yet) 
-ATMega2561 
-AT90CAN128 
-AT90USB128 (Not tested yet) 
-ATXMEGA128A1 
SPI 
- ATtiny13 
- ATmega48 (Not tested yet) 
- ATmega88 
- ATmega168 
- ATmega16 
- ATmega32 
- ATmega640 (Not tested yet) 
- ATmega644 (Not tested yet) 
- ATmega644P 
- ATmega128 
- ATmega1280 (Not tested yet) 
- ATmega1281 (Not tested yet) 
-ATMega2560 
-ATMega2561 
-AT90CAN128 
-AT90USB128 (Not tested yet) 
As one of the benefits of this solution (FT2232) is, that this software can operate with third party hardware as well as with this embedded chip. As good example is Amontec JTAGkeyhardware. You can use JTAGkey also for AVR8 chips in this case ! Its tested and it runs !
The first prototype :
 
 

HappyJTAG2 - JTAG AND SPI AVR8 interface EMBEDDED JTAG ! EMBEDDED SPI !的更多相关文章

  1. SPI的学习和ESP8266的SPI通讯测试

    SPI简介: SPI是串行外设接口(Serial Peripheral Interface)的缩写.SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时 ...

  2. Dubbo SPI机制之一JDK中的SPI

    首先简单阐述下什么是SPI:SPI 全称为 (Service Provider Interface) ,是JDK内置的一种服务提供发现机制.目前有不少框架用它来做服务的扩展发现,简单来说,就是一种动态 ...

  3. linux SPI驱动——简单的gpio模拟SPI驱动测试 (二)

    1: /* 2: * Add by xuyonghong for duotin car radio fm 3: * Copyright (C) 2016-5-24 xuyonghong@duotin. ...

  4. linux spi驱动开发学习-----spidev.c和spi test app

    一.spidev.c文件 看一个设备驱动的方法: module_init标识的入口初始化函数spidev_init,(module_exit标识的出口函数) 设备与设备驱动匹配时候调用的probe方法 ...

  5. JTAG 引脚自动识别 JTAG Finder, JTAG Pinout Tool, JTAG Pin Finder, JTAG pinout detector, JTAGULATOR, Easy-JTAG, JTAG Enumeration

    JTAG Finder Figuring out the JTAG Pinouts on a Device is usually the most time-consuming and frustra ...

  6. JTAG – A technical overview and Timing

    This document provides you with interesting background information about the technology that underpi ...

  7. FT232H USB转串口,I2C,JTAG高速芯片

    随着FT232H USB2.0高速芯片的发布,英商飞特蒂亚公司(FTDI)进一步巩固了其在USB接口集成电路产品的地位.此款多功能的单通道USB转UART/FIFO接口设备可通过EEPROM配置为各种 ...

  8. Turtelizer 2 provide JTAG Flash programming and debugging of ARM based boards via USB

    http://www.ethernut.de/en/hardware/turtelizer/ Introducing Turtelizer 2 Overview Turtelizer 2 had be ...

  9. Debugging JTAG Connectivity Problems

    2013-12-04 22:34:26 转自:http://processors.wiki.ti.com/index.php/Debugging_JTAG_Connectivity_Problems ...

随机推荐

  1. 【LibreOJ】#6392. 「THUPC2018」密码学第三次小作业 / Rsa 扩展欧几里得算法

    [题目]#6392. 「THUPC2018」密码学第三次小作业 / Rsa [题意]T次询问,给定正整数c1,c2,e1,e2,N,求正整数m满足: \(c_1=m^{e_1} \ \ mod \ \ ...

  2. iOS手势UIGestureRecognizer的使用及手势冲突的解决办法【转】

    转自:iOS开发中的手势体系——UIGestureRecognizer分析及其子类的使用 关于手势的一篇很好的帖子,转载过来免得丢失.你可能最感兴趣的是手势间的互斥处理,那么就搜索 4.手势间的互斥处 ...

  3. 树莓派编译安装opencv3 (2019.1.6更新)

    一.更新系统 sudo apt-get update sudo apt-get upgrade sudo rpi-update #重启系统 sudo reboot 二.安装依赖库及程序 sudo ap ...

  4. C# 将某个方法去异步执行

    C# 将某个方法去异步执行 Task.Run(() => { string msgerror = SendPhoneCode.NewSendByTemplate(apply.PhoneNum, ...

  5. java iterator

    list l = new ArrayList(); l.add("aa"); l.add("bb"); l.add("cc"); for ( ...

  6. 初始ADO.NET数据操作

    以下介绍直接来源与百度百科,介绍十分全面和详细,作为小菜的我们没有理由不看完这些枯燥的介绍原有: ADO.NET的名称起源于ADO(ActiveX Data Objects),是一个COM组件库,用于 ...

  7. 在IIS下部署SSL证书实现HTTPS

    在IIS下部署SSL证书实现HTTPS   HTTPS是以安全为目标的HTTP通道,简单讲是HTTP的安全版.谷歌已经制定了一项长远的计划,它的最终目标是将所有通过HTTP协议呈现的网页标为“不安全” ...

  8. Extjs Window用法详解 3 打印具体应用,是否关掉打印预览的界面

    Extjs Window用法详解 3 打印具体应用,是否关掉打印预览的界面   Extjs 中的按钮元素 {xtype: 'buttongroup',title: '打印',items: [me.ts ...

  9. linux下实用命令

    也使用了一段时间的debian,过程中总结了一些常用的又实用的命令,在这里分享给大家=.= 很多命令选项很多,在这里我只总结最实用的一些选项提供给大家,详细选项解释大家可以去问google. 1.df ...

  10. DRF分阶段序列化细化实例

    DRF是分两阶段进行的. 如果是API接收数据,则是先进行Parser,将外界接收的bytes数据分析成python数据类型,其间涉及encoding操作,再进行序列化,将python数据类型保存进数 ...