l298n电机驱动电路知识汇总

来源:本站
导读:目前正在解读《l298n电机驱动电路知识汇总》的相关信息,《l298n电机驱动电路知识汇总》是由用户自行发布的知识型内容!下面请观看由(电工技术网 - www.9ddd.net)用户发布《l298n电机驱动电路知识汇总》的详细说明。
简介:l298n电机驱动电路知识汇总

硬件连接注意事项:

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);

}

提醒:《l298n电机驱动电路知识汇总》最后刷新时间 2024-03-14 01:03:32,本站为公益型个人网站,仅供个人学习和记录信息,不进行任何商业性质的盈利。如果内容、图片资源失效或内容涉及侵权,请反馈至,我们会及时处理。本站只保证内容的可读性,无法保证真实性,《l298n电机驱动电路知识汇总》该内容的真实性请自行鉴别。