找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1440|回复: 4
收起左侧

只有一个错误就是第五行RCLK redefinition 单片机C语言程序不理解

[复制链接]
ID:1062123 发表于 2023-2-9 09:24 | 显示全部楼层 |阅读模式
  1. #include <REGX52.H>
  2. typedef unsigned char u8;
  3. typedef unsigned  int u16;
  4. sbit SRCLK=P3^6;
  5. sbit RCLK=P3^5;
  6. sbit SER=P3^4;

  7. #define LEDDZ_PORT P0
  8. u8 ghc595_buf[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
  9. void delay_10us(u16 ten_us)
  10. {
  11.         while(ten_us--);
  12. }
  13. void hc595_write(u8 dat)
  14. {
  15.         u8 i=0;
  16.         for(i=0;i<8;i++)
  17.         {
  18.                 SER=dat<<7;
  19.                 dat>>=1;
  20.                 SRCLK=0;
  21.                 delay_10us(1);
  22.                 SRCLK=1;
  23.                 delay_10us(1);
  24.         }
  25.         RCLK=0;
  26.         delay_10us(1);
  27.         RCLK=1;
  28. }
  29. void main()
  30. {        u8 i=0;
  31. LEDDZ_PORT=0X00;
  32.         while(1)
  33.         {
  34.         for(i=0;i<8;i++)
  35.         {        hc595_write(0x00);
  36.                 hc595_write(ghc595_buf[i]);
  37.                 delay_10us(50000);
  38.         }        
  39.         }
  40. }
复制代码
回复

使用道具 举报

ID:1044091 发表于 2023-2-9 10:01 | 显示全部楼层
RCLK 跟REGX52.H里的关键字重名了。换个名字。
回复

使用道具 举报

ID:94031 发表于 2023-2-9 10:39 | 显示全部楼层
在 REGX52.H 已经定义了 sbit RCLK   = T2CON^5;,重复定义了。
回复

使用道具 举报

ID:1062123 发表于 2023-2-9 20:33 | 显示全部楼层
朕已阅,感谢诸位爱卿
回复

使用道具 举报

ID:824490 发表于 2023-2-10 08:01 | 显示全部楼层
ylthpl 发表于 2023-2-9 20:33
朕已阅,感谢诸位爱卿

啊哈哈~~
这个回复有点搁应啊~~
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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