ICD2 VPP limiter for new PIC microcontrollers.
http://www.circuitsathome.com/mcu/pic_vpp_limiter


VOUT = 2.5V * ( 1 + 24/10 ) = 2.5 * 3.4 = 8.5V
Newer PIC18s, such as my current favorite – PIC18F26K20, don’t like to be programmed with 12V. The datasheet maximum is 9V. Older Microchip programmers/debuggers, such as PicKit and ICD 2, do not support variable programming voltage. When you start a MPLAB project consisting of K-series PIC18 and ICD 2 debugger, you will get a warning and suggested VPP limiting circuit schematic. In this article I’m describing this very circuit, so you can build it beforehand.
The circuit is as easy as it gets. It is TL431 programmable voltage reference configured for 8.5V cutoff. If you are not comfortable having VPP so close to specified maximum, change voltage divider R2R3. Bear in mind that minimum VPP for new PIC18s is VDD+4.5V; if you are powering your PIC from 3.3V (max.VDD), minimum VPP is 7.8V.
To build this circuit, you can use a PCB, or use a small piece of prototyping board. I solder right-angle headers into ground pads; this way, the limiter can be inserted vertically, saving precious breadboard space.
I suggest checking circuit operation after you build it. You will need bench power supply (or any known voltage source of 9V or more) and a voltmeter. The procedure for bench power supply is as follows:
- Set your power supply to minimum voltage and current.
- Set voltmeter range to 20V DC.
- Connect circuit IN to the power supply, circuit OUT to the voltmeter, all 3 grounds (power supply, voltmeter, and circuit ) together.
- Add some voltage on power supply. If it starts showing overcurrent, add little current (but just a little; the current when to become suspicious and start looking for shorts is 30mA).
- The voltmeter should follow power supply as you add voltage until you reach 8.5V. At 8.5V voltmeter should stop. Continue adding voltage on power supply until you reach 12.5-13V. If voltmeter still shows 8.5V, your circuit is working.
Now, when your know circuit is operational, it’s time to use it. Connect IN to MCLR/VPP signal coming from the programmer, connect OUT to MCLR/VPP of your PIC, connect GND to ground. The last connection is as essential as other two – if ground is not connected, the circuit will bypass input voltage to output without change.
ICD2 VPP limiter for new PIC microcontrollers.的更多相关文章
- Using Internal EEPROM of PIC Microcontroller
There are commonly three types of memories in a PIC Microcontroller, Flash Program Memory, Data Memo ...
- RFID 仿真/模拟/监控/拦截/检测/嗅探器
Sound card based RFID sniffer/emulator (Too tired after recon.cx to do draw the schematics better th ...
- Important Programming Concepts (Even on Embedded Systems) Part V: State Machines
Earlier articles in this series: Part I: Idempotence Part II: Immutability Part III: Volatility Part ...
- 如何在 arm 官网上找到合适的手册
http://infocenter.arm.com/help/advanced/help.jsp 在这里输入合适的版号即可 这样就可以不用去 CSDN 了 100000_0000_00_EN - AR ...
- 说说 MicroPython 的项目整体架构
今天来说说 MicroPython 的架构情况,如果有必要我会做一些源码分析的文章供大家参考. 先来认识一下 MicroPython 整体情况,可以从软件的角度上去看待,首先我们拿到 MicroPyt ...
- PIC JDM Prototype Programmer 1001
In need of a programmer for PIC micro controllers I decided to build my own one. This programmer has ...
- USB PIC Programmer (Brenner8)
http://uzzors2k.4hv.org/index.php?page=usbpicprog My Tait Serial programmer works alright, but not e ...
- Cannot send session cache limiter Cannot modify header information
当php报出 Cannot send session cache limiter 或Cannot modify header information 的错误时 其理论上是因为php代码以前有 ...
- VCC、VDD、VSS、 VEE 和VPP的区别
在电子电路中,常可以看到VCC.VDD和VSS三种不同的符号,它们有什么区别呢? 一.解释 VCC:C=circuit 表示电路的意思, 即接入电路的电压: VDD:D=device 表示器件的意思, ...
随机推荐
- python基础-各模块文章导航
python基础学习日志day5-各模块文章导航 python基础学习日志day5---模块使用 http://www.cnblogs.com/lixiang1013/p/6832475.html p ...
- 【鬼脸原创】谷歌扩展--知乎V2.0
目的: 用键盘替代鼠标,做一个安静刷知乎的美男(女)子! 功能: 功能 按键 说明 直接定位到搜索框 q 打开 首页 w 打开 话题 e 打开 发现 r 打开 消息 m 打开 ...
- 3.Springboot之修改启动时的默认图案Banner
一.SpringBoot的默认启动图案 在SpringBoot启动的时候,默认的会展示出一个spring的logo,这个图案我们用户是可以自定义的 二.自定义启动图案 方法一: Application ...
- VS Code折腾记 - (1)扯淡
题外话 距离上篇介绍VSCode的文章已经过去四十多天,已经在正式项目作为主力开发工具了. 社区的发展非常快速,更新迭代够快,功能基本已经满足我所需了: 这个系列教程基于最新的vs code 1.8. ...
- Django数据库数据表操作
建立表单 django通过设置类来快速建表,打开models.py 例: from __future__ import unicode_literals from django.db import m ...
- SSIS 学习之旅 数据同步
这一章 别人也有写过但是我觉得还是写写比较好.数据同步其实就是想仿照 数据库的发布订阅功能 第一章:SSIS 学习之旅 第一个SSIS 示例(一)(上) 第二章:SSIS 学习之旅 第一个SSIS 示 ...
- 【LOJ】#2046. 「CQOI2016」路由表
题解 题面太长无法阅读系列-- 这里说的选择改变指的是在下面区间里碰上了一个更长的可匹配的地址,如果可匹配但是匹配长度没有当前的值大,那么不算改变 我们建一个可持久化的trie,查询的时候先在前\(a ...
- USACO 5.3 Window Area
Window AreaIV Balkan Olympiad You've just be assigned the project of implemented a windowing interfa ...
- vim选中多行复制粘贴
1.按v进入可视模式,移动光标选中需要复制的行: 2.使用y复制选中块到缓冲区(剪切选中块使用d): 3.将光标移动到粘贴的位置,按p即可. 复制多行并粘贴到指定位置后,可能需要进行多行缩进.多行缩进 ...
- JavaScript对象参考手册
1.array 属性: constructor 返回原型函数: length 数组个数: prototype 向对象添加属性和方法 方法: concat() 连接两个或多个数组,并返回结果: fill ...