baofu 发表于 2021-3-14 21:11:11

单片机遇到干扰

本帖最后由 baofu 于 2021-3-14 21:13 编辑

STC12C5410AD的单片机,晶振25MHz。实验带动一个七段LED数码管,显示从0到9
的数,数字更换间隔时间1秒,不断循环。
   单片机板子和数码管都是自己用洞洞板焊成的,但两者不在一块板子上,用杜邦线连接两者,杜邦线虽然质量不高,但都经过检查是没有问题的。数码管每个LED都有1K的限流电阻。单片机与数码管使用同一个5V电源供电。
    程序烧写后,能显示,但多数时间显示的数字缺少笔画。奇怪的是,当想用万用表测量时,仅仅将黑表笔搭接到板子电源负极,红表笔还在悬空状态,显示的数字就不缺少笔画了。
    现在怀疑两点:
    1.干扰,因为杜邦线长度有十几厘米,相互干扰显然存在,但不知道怎样避免。
    2.IO口模式设置不对。但这难以解释表笔影响现象。
    请教有经验的老师,先谢谢了!

honggun 发表于 2021-3-14 21:52:32

线长了不行

bigluo 发表于 2021-3-14 22:06:42

电源换成充电宝试试?
我也不懂,怀疑电源不好。

JuncoJet 发表于 2021-3-14 22:09:59

干扰的可能性不大,电压低,接触电阻大倒有可能,
一般数码管等LED都用三极管来驱动,直接io驱动可靠性低

mov99 发表于 2021-3-15 00:03:01

共同探讨
1k限流电阻好像有点大了,另外,如果必须用开关电源供电,就选质量稍好一些的。
假设LED数码压降是1.8V,每段电流5mA(如果是动态显示可设10mA或更高),(5-1.8)/5mA≈560Ω
但不建议用静态显示,因为IO端口负担过重(7x5=35mA)

washu 发表于 2021-3-15 08:32:25

1、单片机电源脚以最短路径并联一个 100n 左右电容退耦
2、注意是否接触不良
3、死太惨真烂,换 AVR:lol

Doorkey 发表于 2021-3-15 08:39:21

不太可能是干扰的问题,最好配合图纸看,不然没法猜大概是什么原因。

yubinwu 发表于 2021-3-15 10:43:34

杜邦线接触不良

baofu 发表于 2021-3-15 14:25:20

首先,谢谢各位的热心指导。
问题已经解决,但又出现了新问题,并与原来相关;先说解决的。
最初出问题的程序片段:
{   unsigned chari=0;
while(1)
{
    P1=Cu8DigTable;//显示数字
    Delay(800000) ;//延时
    i++;             //转下一个数字
if(i>24)i=0;   //循环
}

后来加入了P1=Cu8DigTable;
这个Cu8DigTable里面的字符是0x00,就是什么也不显示,效果是P1口每一位都是低电平,相当于统一拉低电平:
{   unsigned chari=0;
while(1)
{
    P1=Cu8DigTable;//显示数字
    Delay(800000) ;//延时
P1=Cu8DigTable; //P1口统一拉低电平
i++;
if(i>24)i=0;
}
这样显示正常了,问题好像解决了。
但为什么会这样?是单片机反应慢?跟不上信号的迅速变化?还是数码管电路有什么我还不了解的特性?请有经验的朋友指教。

9527001 发表于 2021-3-15 19:04:02

烧录器显示的MCU频率是多少?

baofu 发表于 2021-3-15 20:01:53

烧录时显示MCU频率是25.04MHz,和我用的晶振频率是一致的。

lht5631080 发表于 2021-3-15 20:17:09

看看是否电源波纹或地布线导致的。

vkbvfhp 发表于 2021-3-16 18:07:50

我看了一下你的程序,是P1口带一个8字LED,属于静态驱动,还是一秒一变化,就算线加到1米长,也不应该出现缺少笔划的现象。P1端口要设置为推挽模式。

w6955 发表于 2021-3-16 19:05:35

本帖最后由 w6955 于 2021-3-16 19:18 编辑

洞洞板这种东西也能用到25M??PCB打板的都是大傻?把频率放到6M就得了。一个洞洞板可能真上不去那么高。另外一个重要问题,驱动数码管为什么要用高电平驱动??单片机只在低电平才有较强驱动能力。所以应该使用共阳极数码管低电平驱动。

w6955 发表于 2021-3-16 19:43:28

从你的叙述看,首先输出0就都不亮了说明你用的是高电平驱动数码管发光的,1K限流电阻在5伏时不知道你的数码输出“8”这个时候是多大电流,估计IC里面电路应付这个电流够呛。建议换个共阳极数码管再实验看看,毕竟MCU这个东西拉电流才是正道。
页: [1] 2
查看完整版本: 单片机遇到干扰