OpenVINOTM,给你看得见的未来!>>
电子产品世界 » 论坛首页 » 活动中心 » 合作大赛 » 天祥电子技术协助电子大赛编写正确MMC SPI驱动步进电机程序

共3条 1/1 1 跳转至

天祥电子技术协助电子大赛编写正确MMC SPI驱动步进电机程序

菜鸟
2009-09-03 17:30:06    评分
天祥电子技术协助电子大赛选手编写正确MMC-1 SPI驱动步进电机程序 www.txmcu.com   硬件连接注意事项: 1.     第1、29、30脚必须通过10K电阻接地。 2.     第8脚必须接地。 3.     11、12或27、18任意接一组电源就可以。 4.     驱动步进电机的L298的相线必须接正确,否则电机肯定不转 5.     其它没说明的引脚不用管。 6.     在连接、测试时千万不要用手去接触MMC芯片的任何引脚,否则输出不了信号。 7.     一旦过流保护被启动,芯片必须重新上电后才可恢复正常工作,如果用手去碰MMC的第1、29、30脚则过流保护立即启动。 8.     强烈建议先不要直接接L298,先用示波器查看MMC信号输出的波形,然后再接L298,如果波形都没,那什么也出不来。   #include <reg52.h> sbit SPI_DI =P0^1; //MMC数据输入 sbit SPI_DO =P0^0;//MMC数据输出,可不接 sbit SPI_SCL=P0^2;//时钟线   void delay(unsigned int time) {  while(time--); }   void Write_Byte(unsigned char value) //********************************************************** ****************** {    unsigned char i;     for (i=0;i<8;i++)    {        if (((value>>(7-i))&0x01)==0x01)          SPI_DI=1;       else SPI_DI=0;        SPI_SCL=0;        delay(5);  //必须要加延时,否则会因为操作太快而不响应。       SPI_SCL=1;        delay(5);    //必须要加延时,否则会因为操作太快而不响应。    } } //以下为读数据函数,不用读MMC,所以不用管,供参考用 unsigned char Read_Byte() {    unsigned char temp=0;    unsigned char i;    for (i=0;i<8;i++)    {       SPI_DO=1;       SPI_SCL=0;        delay(5);       temp=(temp<<1)+(unsigned char)SPI_DO;       SPI_SCL=1;        delay(5);        }    return (temp); } void main() {       delay(50);//首次上电先延时一会儿                   Write_Byte(0x50);//设置第一通道配置寄存器       Write_Byte(0x80);//配置第一通道  /*       一定要先设计配置字,再设计频率字,否则不出来,不要看管方资料。 */       delay(5);       Write_Byte(0x51);// 设置第一通道频率寄存器       Write_Byte(49); //送入频率字,49为20hz.       /*       频率字的计算方法如下,不要看管方给的资料,否则计算错误:       设你想要的频率为F,频率字为FC则用以下公式计算             F*4=4000/(FC+1)       如:我想要20Hz,则20*4=4000/(FC+1)                       求得:FC=49, */          Write_Byte(0x54);//设置第二通道       Write_Byte(0x80);       delay(5);       Write_Byte(0x55);       Write_Byte(24);       /*   第三通道固定为1Khz,怎么设置都改不过来,大家不要用第三通道了,就用第一二通道就足够了。*/     delay(50);       while(1); }



关键词: 天祥     电子技术     协助     电子     大赛     编写     正确     驱动    

菜鸟
2009-09-04 10:17:49    评分
2楼

好帖,顶


菜鸟
2011-08-07 13:52:06    评分
3楼
顶一下

共3条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]