打印
[ZLG-MCU]

ZLGMCU请进

[复制链接]
1508|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
WEIREN|  楼主 | 2008-6-25 20:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我现在在使用LPC932A1的SPI功能,现在想把SPI功能用在ZLG7289芯片,可是我写了一个用SPI写了一个ZLG7289的测试程序,把程序烧到LPC932A1实验板(周立功公司买的)数码管没有闪烁,如果正确的话应该数码管会闪烁,我用模拟的SPI就正常了,不知道是不是我的程序有错误:程序如下:
#include<reg935.h>
#define uint unsigned int
#define uchar unsigned char
//uchar code led2[16]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00};
sbit CS=P2^0;
sbit CLK=P2^5;        
sbit DAT=P2^2;
uchar SENDDATA,SENDDATA1;
//uchar n;
sbit LED=P2^6;

/****************************************************************************
* 名称:Delay50uS
* 功能:50uS软件延时
* 说明:用户根据自已的系统相应更改
****************************************************************************/
void Delay50uS(void)
{ uchar i;
  for(i=0; i<25; i++);
}

//=======================================================
/*             函数名:void delay()
               作用:延时函数                           */
//=======================================================
  void delay()
    {
    uchar i;
    uint j;
    for(i=0;i<250;i++)
    {
    for(j=0;j<1000;j++)
    {;}
    }
    }

//=======================================================
/*             函数名:void init_wdt()
               作用:SPI初始化                    */
//=======================================================
  void init(void)
   {
    P2M1=0XC0;
    P2M2=0XC0;
    SPCTL=0xdf;
    SPSTAT=0XC0;
    }
//=======================================================
/*             函数名:void  MSEND_DAT(void)
               作用:SPI发送程序                      */
//=======================================================
  void  MSEND_DAT(void)
   {
    SPSTAT=0XC0;
    SPDAT=SENDDATA;
    while((SPSTAT&0X80)==0);
       //SENDDATA=SPDAT;
   }

//=======================================================
/*             函数名:void main(void)
               作用:主函数                            */
//=======================================================
    void main(void)
     {
      init();
      
       SENDDATA=0xBF;

       CS=0;
       Delay50uS();
       MSEND_DAT();
      
      CS=1;
      delay();
      while(1)
     {
      LED=0;
     
     
     }
     }    
     

   

 

   

相关帖子

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

本版积分规则

8

主题

16

帖子

0

粉丝