找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2315|回复: 2
打印 上一主题 下一主题
收起左侧

单片机开发板点阵问题

[复制链接]
跳转到指定楼层
楼主
普中的 为什么这个代码不止点亮led点阵的一个点,同时点亮了三个点
#include<reg52.h>

#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char
//74HC595芯片
sbit SER=P3^4;  //串行输入
sbit RLCK=P3^5;  //时钟移位寄存器
sbit SRCLK=P3^6; //数据移位寄存器
void Hc595Send(uchar num);
void main()
{
while(1)
{
  P0=0x7f;
  Hc595Send(0x80);
  while(1);
}
}
void Hc595Send(uchar num)
{
  uchar a;
  SRCLK=0;
  RCLK=0;
  for(a=0;a<8;a++)
  {
   SER=num>>7;  //将最高位传送
  num<<=1;  //次高位移至最高位
  SRCLK=1;
  _nop_();  //延时一个机器周期
  _nop_();
  SRCLK=0;
  }
  RCLK=1;
  _nop_();   
     _nop_();
  RCLK=0;  
}

123.png (58.5 KB, 下载次数: 58)

123.png
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:443245 发表于 2020-1-5 11:10 | 只看该作者
那个while循环去掉之后也还是一样的问题
回复

使用道具 举报

板凳
ID:110606 发表于 2020-1-6 15:05 | 只看该作者
如果while去掉还是一样的话,就需要你仔细看一下板子的原理图,因为没有while语句,你的程序在空跑,什么显示都不会有,所以看看是不是引脚用在其他什么器件上了,一般开发板一个引脚都会用在很多外围器件上,你需要把短路帽或者其他外围器件去掉
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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