找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5000|回复: 6
收起左侧

stc15f101w单片机我连基本的IO口高低电平都控制不了

[复制链接]
ID:84556 发表于 2017-9-26 08:55 | 显示全部楼层 |阅读模式
有人用过stc15f101w单片机吗,据说这个单片机跟传统51单片机指令完全兼容的,可是为什么我连基本的IO口高低电平都控制不了

  #include<STC15F101.h>
  #define uint unsigned int
  #define uchar unsigned char
        sbit  P30 =P3^0 ;        
        sbit  P31 =P3^1 ;
        sbit  P32 =P3^2 ;
        sbit  P33 =P3^3 ;
        sbit  P34 =P3^4 ;
        sbit  P35 =P3^5 ;

void main()
{
         
                P30 =0;
                P31 =0;
                P32 =0;
                P33 =1;
                P34 =1;
                P35 =1;
   while(1)
   { }

   }
        

回复

使用道具 举报

ID:84765 发表于 2017-9-26 12:56 | 显示全部楼层
你这写的程序只是上电就瞬间就走完程序了,都没有循环也没有延时,这样当然看不到亮啦
void main()
{
         
               
   while(1)
   {
                P30 =0;
                P31 =0;
                P32 =0;
                delay(100);
                P33 =1;
                P34 =1;
                P35 =1;
               delay(100);
   }

   }
回复

使用道具 举报

ID:235692 发表于 2017-9-26 13:58 | 显示全部楼层
顶顶顶!
回复

使用道具 举报

ID:84556 发表于 2017-9-26 15:50 | 显示全部楼层
13976778401 发表于 2017-9-26 12:56
你这写的程序只是上电就瞬间就走完程序了,都没有循环也没有延时,这样当然看不到亮啦
void main()
{

这几个引脚都不是同一个引脚啊,都不会有影响的吧,我只是想让这些引脚一直保存高电平或低电平,所以我就在给引脚设置好高低电平后就直接进入while死循环了,但是结果是引脚只有高电平输出,没有低电平输出
回复

使用道具 举报

ID:60379 发表于 2017-9-26 16:06 | 显示全部楼层
我在用这个芯片,程序看起来没错,请检查下外围电路有没问题。建议阅读《51单片机轻松入门 基于STC15W4K系列》,这本书对STC15单片机讲解非常透彻。
回复

使用道具 举报

ID:7485 发表于 2017-9-26 17:39 | 显示全部楼层
程序可以运行啊,可以看出来p3.0、p3.1、p3.2输出时低电平,其余都是高电平(p3.6、p3.7没有设置,上电默认为高电平)。但是不会变化,你的程序就是如此。
回复

使用道具 举报

ID:84556 发表于 2017-9-27 12:06 | 显示全部楼层
谢谢大家,搞出来了,我是直接拿以前的工程文件来改的,结果编译的时候没有生成hex文件,然后每次烧的都是以前的hex文件,所以才不会出结果的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表