用STC12C4052 搭建好最小系统 12M晶振 .写个 P1.1口输出 间隔时间输出脉冲信号.程序如下:
ORG 0000H
LJMP MAIN
ORG 0030H
MAIN:
MOV R1,#020H
MOV R7,#08H
clr p1^1
loop1: cpl p1^1
call DELAY
djnz R7,loop1
clr P1^1
LOOP2: call DELAY
djnz R1,LOOP2
ajmp MAIN
DELAY:
nop
nop
nop
ret
程序烧录入后 单片机正常输出波形. 带上电阻负载后 波形发生变化. 高电平不再维持延迟的时间. 单片机是 1时钟/机械周期.经计算程序延迟时间也与实际电平持续时间不符合. 图附件
此帖出自
小平头技术问答
问题出在负载
接了 470欧的电阻下地,5V时,单片机被拉走了 10多毫安,问题就出在这里。
你把电阻弄大一些,这个问题就会解决,比如说 10K或者更大。
至于为什么加了104以后,还是这个波形,我猜测是你的延时周期太短了,把它扩大一些再试试。
PS:STC系列的片子,指令速度快,但是硬件反应跟不上,搞不好那个中间的平台期,其实就是人家的高电平,只是它来不及拉上去。为什么,空载的时候就好呢?因为空载的时候,恢复时间要短一些,要验证这一点的方法就是把 高电平时间拉长一些再看波形,如果还这样,回来接着找我~~
另一个验证的方法是,接更大的电阻,看看波形有无变化。
不过我不知道STC的硬件水平到了什么程度,也许它接多少的反应速度都那样,那我就没辙了。
其实这个是可以看PDF的,它的上升沿速度是有受负载影响的,你可以看一下在10K时的速度,如果这个速度和你的延迟时间相差不大,或者在一个数量级内,那估计就难免这样了。
另外,你这个波形图从哪得来的。
[ 本帖最后由 辛昕 于 2011-10-14 09:36 编辑 ]
一周热门 更多>