PIC单片机编程之怪谈。

2020-02-06 10:21发布

近来再用Microchip的PIC16LF18系列单片机设计时遇到了怪事。首先如图:


如上图所示: MCLR是PIC16LF系列单片机,由于LF系列最高工作电压为3.6V,为了保险起见,使用75K电阻分压,使MCLR脚的电压在3.3V左右( 至于为什么使用3.6V而不使用3.3V电源输出,是由于系统需要),利用此脚做电源检测(当然此脚仅作输入脚使用)。

于是有这样一个问题,该单片机的VDD供电是经过3.6V和一个二极管供电的,既3.3V供电,那么给单片机烧写程序时(通过ISP烧写)上述电路会不会影响烧写?   ( 我试了,可以烧写,但不知道如何解释。)

更为奇怪的是,我不使用外部电源供电而是使用编程器给系统提供3.3V编程电压时,该3.3V编程电压是无法使和3.6连接的二极管反响导通的,也就是说上图没有从MCLR上拉到任何电压,反而是75K电阻下拉到地。竟仍然能烧写。而这点手册上从未提过。

哪位高手知道原因?  敬请解答,不胜感激!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
20条回答
youmcu
1楼-- · 2020-02-07 00:41
WDZASHTA 发表于 2014-2-17 20:42
那么,哪位仁兄能说一下,编程手册上将MCLR上拉至VDD的目的是什么呢?如果编程时上拉到VDD与否都可以,那么 ...

如果你只对芯片编程,这个MCLR引脚可以直接与ICSP编程器的VPP相连,编程器会输出编程电压一般为13V,其它也不用接! 目标板上接上拉:
1 将MCLR上拉至VDD是为了使芯片在加上电源后可正常工作,如果下拉到地芯片就处于复位状态,还能工作吗?
2 将MCLR上拉至VDD也不会影响编程电压13V的加入!
更多的可参考编程器的内部电路图,还有PIC的编程规范,以下是读时序

pic编程.JPG (90.5 KB, 下载次数: 0)

下载附件

2014-2-17 22:19 上传

touch_mcu
2楼-- · 2020-02-07 05:31
1. 使用ISP供电时,单片机的VCC有3.3V电压?  因为你Reset 脚 ,VCC都有二极管。
2. 单片机烧写Reset脚的上拉电阻建议值在4.7K ---10K, 及下拉电容值要小于XX值(具体值忘记了)
WDZASHTA
3楼-- · 2020-02-07 10:25
我一直有一点不解:
                   编程时Vpp电压远高于3.3V,那么Vpp通过电阻上拉至3.3V后,在编程时的高压是否会影响3.3V呢?  如果不会,为什么?
huangxiaowei
4楼-- · 2020-02-07 10:57
   顶一下
spacefram
5楼-- · 2020-02-07 12:49
 精彩回答 2  元偷偷看……
chengzepeng
6楼-- · 2020-02-07 15:19
本帖最后由 chengzepeng 于 2014-4-17 03:09 编辑

VPP/复位脚的编程电压旧的是12V多,新的好像是8.2V了,在“在线串行编程 (ICSP™)”这章有说到,

如PIC16F182X系列就是,

那个复位脚的上拉电阻接到供电时那个编程电压连接前会把供电连接
所以编程电压通过电阻到供电只要足够大的电阻就没有压力,编程器和单片机会消耗掉。

内部的那个上拉会在编程时自动关闭的。

一周热门 更多>