[ZLG-MCU] ZLGMCU请进

[复制链接]
2190|0
 楼主| WEIREN 发表于 2008-6-25 20:08 | 显示全部楼层 |阅读模式
我现在在使用LPC932A1的SPI功能,现在想把SPI功能用在ZLG7289芯片,可是我写了一个用SPI写了一个ZLG7289的测试程序,把程序烧到LPC932A1实验板(周立功公司买的)数码管没有闪烁,如果正确的话应该数码管会闪烁,我用模拟的SPI就正常了,不知道是不是我的程序有错误:程序如下:<br />#include&ltreg935.h&gt<br />#define&nbsp;uint&nbsp;unsigned&nbsp;int<br />#define&nbsp;uchar&nbsp;unsigned&nbsp;char<br />//uchar&nbsp;code&nbsp;led2[16]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00};<br />sbit&nbsp;CS=P2^0;<br />sbit&nbsp;CLK=P2^5;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />sbit&nbsp;DAT=P2^2;<br />uchar&nbsp;SENDDATA,SENDDATA1;<br />//uchar&nbsp;n;<br />sbit&nbsp;LED=P2^6;<br /><br />/****************************************************************************<br />*&nbsp;名称:Delay50uS<br />*&nbsp;功能:50uS软件延时<br />*&nbsp;说明:用户根据自已的系统相应更改<br />****************************************************************************/<br />void&nbsp;Delay50uS(void)<br />{&nbsp;uchar&nbsp;i;<br />&nbsp;&nbsp;for(i=0;&nbsp;i&lt25;&nbsp;i++);<br />}<br /><br />//=======================================================<br />/*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;函数名:void&nbsp;delay()<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;作用:延时函数&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/<br />//=======================================================<br />&nbsp;&nbsp;void&nbsp;delay()<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;uchar&nbsp;i;<br />&nbsp;&nbsp;&nbsp;&nbsp;uint&nbsp;j;<br />&nbsp;&nbsp;&nbsp;&nbsp;for(i=0;i&lt250;i++)<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;for(j=0;j&lt1000;j++)<br />&nbsp;&nbsp;&nbsp;&nbsp;{;}<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br /><br />//=======================================================<br />/*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;函数名:void&nbsp;init_wdt()<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;作用:SPI初始化&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/<br />//=======================================================<br />&nbsp;&nbsp;void&nbsp;init(void)<br />&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;P2M1=0XC0;<br />&nbsp;&nbsp;&nbsp;&nbsp;P2M2=0XC0;<br />&nbsp;&nbsp;&nbsp;&nbsp;SPCTL=0xdf;<br />&nbsp;&nbsp;&nbsp;&nbsp;SPSTAT=0XC0;<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />//=======================================================<br />/*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;函数名:void&nbsp;&nbsp;MSEND_DAT(void)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;作用:SPI发送程序&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/<br />//=======================================================<br />&nbsp;&nbsp;void&nbsp;&nbsp;MSEND_DAT(void)<br />&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;SPSTAT=0XC0;<br />&nbsp;&nbsp;&nbsp;&nbsp;SPDAT=SENDDATA;<br />&nbsp;&nbsp;&nbsp;&nbsp;while((SPSTAT&0X80)==0);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//SENDDATA=SPDAT;<br />&nbsp;&nbsp;&nbsp;}<br /><br />//=======================================================<br />/*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;函数名:void&nbsp;main(void)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;作用:主函数&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/<br />//=======================================================<br />&nbsp;&nbsp;&nbsp;&nbsp;void&nbsp;main(void)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;init();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SENDDATA=0xBF;<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CS=0;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Delay50uS();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MSEND_DAT();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CS=1;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;delay();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while(1)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LED=0;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><br />&nbsp;&nbsp;&nbsp;<br /><br />&nbsp;<br /><br />&nbsp;&nbsp;&nbsp;
您需要登录后才可以回帖 登录 | 注册

本版积分规则

8

主题

16

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部