打印
[STC单片机]

stc15f104w不能正常输出高低电平?!!求助!

[复制链接]
4409|25
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
用这款单片机之前做过项目,能正常使用,但过了一段时间再来用的时候就出现问题了!连正常的IO口操作都不行!为此我从以下这些方面来找问题:
1:防止是程序问题,写了个最简单的让P3口在死循环里一直取反(和一个让P3=0x00),用示波器观察输出波形,发现没有出现方波,出现的是杂波,用万用表测量一直是高电平;
2:怀疑是头文件和keil里的芯片型号选择问题,查看该芯片手册说“开发环境:在  Keil C 开发环境中,选择 Intel 8052 编译,头文件包含<reg51.h>即可”,按此进行配置烧录进去还是一直是高电平;
3:怀疑是芯片本身损坏,从宏晶原厂买了10片该型号芯片重复试验还是IO口一直是呈现高电平(无论程序对IO是怎样操作的);
4:怀疑是keil配置或stc-isp下载软件配置有问题,按照stc官网下载的工程建立教程和ISP下载教程一步一步进行,烧录进去问题还是依旧,软件用的是最近版的V6.86;
5:怀疑是晶振频率设置有问题,把每一个晶振频率都试了一遍,还是没有解决;
6:怀疑是自己电脑问题,用别人的电脑进行相同的试验还是相同的问题;
经过以上分析排除之后还是没有解决,感觉已经没有办法了,说前来求助各位前辈,我大致知道应该是keil或下载软件这一块的配置问题导致芯片没有工作的问题,但是具体问题出在哪查了块一个月了还是没查出来。。。。。。。

相关帖子

沙发
夜之星|  楼主 | 2017-3-26 15:42 | 只看该作者
这是截屏

QQ截图20170326153610.jpg (128.78 KB )

QQ截图20170326153610.jpg

QQ截图20170326153629.jpg (123.01 KB )

QQ截图20170326153629.jpg

QQ截图20170326153640.jpg (107 KB )

QQ截图20170326153640.jpg

QQ截图20170326154111.jpg (273.66 KB )

QQ截图20170326154111.jpg

使用特权

评论回复
板凳
夜之星|  楼主 | 2017-3-26 16:57 | 只看该作者
有人吗?没人我自己顶

使用特权

评论回复
地板
夜之星|  楼主 | 2017-3-26 19:59 | 只看该作者

使用特权

评论回复
5
xbyu520| | 2017-3-26 20:31 | 只看该作者
我来帮你顶,这个单片机我以前用过。

使用特权

评论回复
6
xbyu520| | 2017-3-26 20:32 | 只看该作者
建议用手册里的程序先试一下。

使用特权

评论回复
7
夜之星|  楼主 | 2017-3-26 20:51 | 只看该作者
xbyu520 发表于 2017-3-26 20:32
建议用手册里的程序先试一下。

感觉应该不是程序的问题,之前用过的程序没有改过。。。。

使用特权

评论回复
8
tanm| | 2017-3-26 22:09 | 只看该作者

使用特权

评论回复
9
chunyang| | 2017-3-26 23:06 | 只看该作者
应该是程序或烧录的问题,注意本振源,别搞错了内置、外置。

使用特权

评论回复
10
zhangxiyi5277| | 2017-3-27 00:23 | 只看该作者
为毛用他的isp添加到keil里面,这款记得某个所谓串口继电器带的就是,我之前玩的时候也是不行,然后老老实实的选他的mcu然后老老实实的复制粘贴例子

使用特权

评论回复
11
@若水| | 2017-3-27 08:50 | 只看该作者
直接用ISP软件自带的例程试一下

使用特权

评论回复
12
Ketose| | 2017-3-27 12:46 | 只看该作者
原理图发现来看看。

使用特权

评论回复
13
lihui567| | 2017-3-27 12:55 | 只看该作者
硬件电路有问题吧

使用特权

评论回复
14
yangxf1217| | 2017-3-27 13:33 | 只看该作者
示波器有问题

使用特权

评论回复
15
山东电子小菜鸟| | 2017-3-27 23:32 | 只看该作者

使用特权

评论回复
16
小十哦| | 2017-4-1 14:56 | 只看该作者
你可以用范例程序测试下啊

BPRTB)DQ01B{L[~LJH67}]6.png (99.25 KB )

BPRTB)DQ01B{L[~LJH67}]6.png

使用特权

评论回复
17
令界剑| | 2017-4-1 16:14 | 只看该作者
P3.0和P3.1是不是特殊口来的,你试试看用P35,P34,P33,测试一遍看看。

使用特权

评论回复
18
coody| | 2017-4-1 21:39 | 只看该作者
多试几个IC看看

使用特权

评论回复
19
Lbsonggz| | 2017-4-2 07:02 | 只看该作者
1)延时程序可能有毛病
2)  硬件电路或电源问题,反复复位
3)特殊引脚是否开漏输出

使用特权

评论回复
20
liubeihua| | 2017-4-6 12:35 | 只看该作者
端口未初始化

#include <reg51.h>
sbit led1=P3^0;  
sbit led3=P3^1;
sbit led5=P3^2;
sbit led7=P3^3;
sbit led7=P3^4;

void port_init(void)
{
        P3M1=0x00;
        P3M0=0x1F;
        P3 = 0x1F;
}

void Delay10ms(unsigned int c)                //@11.0592MHz
{
        unsigned char a,j;

        for(c;c>0;c--)
        {
                for(b=38;b>0;b--)
                {
                        for(a=130;a>0;a--)
                }
        }
}

void main()
{
        port_init();
led1=0;   
led3=0;
led5=0;
led7=0;
P3=0;
        while(1)
        {
                led1=0; Delay10ms(100);
                led1=1; Delay10ms(100);
        }
}

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

6

帖子

0

粉丝