单片机点阵程序在单片机上无任何现象

问题:单片机点阵程序在单片机上无任何现象
代码:#include <reg52.h>
                    sbit SRCLK=P3^6;
                    sbit rCLK=P3^5;
                    sbit SER=P3^4;

                    #define LEDDZ    P0
                      int ghc595[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
                      void delay(int a)
                      {
                        while(a--);
                      }

                      void hc595(int dat)
                      {
                          int i=0;
                          for(i=0;i<8;i++)
                          {
                              SER=dat>>7;
                              dat<<=1;
                              SRCLK=0;
                              delay(10);
                              SRCLK=1;
                              delay(10);
                            }
                      rCLK=0;
                      delay(10);
                      rCLK=1;
                        }

              void main()
                {
                    int i=0; 
                    LEDDZ=0x00;
                    while(1)
                    {
                      for(i=0;i<8;i++)
                        {
                             hc595(0x00);
                              hc595(ghc595[i]);
                            delay(50000);
                          }
      }
  }
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

https://blog.csdn.net/m0_56646606/article/details/122980667