Do you have a question? Post it now! No Registration Necessary
- engineergc
March 27, 2017, 3:49 am

Dear all;
I try to move 2 motor with L298N motor driver card and MSP430G2553. I
tried some basic codes, but right motor does not work. When I give energy
to right motor can move. So, problem is not in motor. But, when I tried
to move both motors only one motor can move (the motor that is driven by
IN1 and IN2. I added code to below. I can not find my error. Could you
help me please?
#include <msp430.h>
int main(void) {
WDTCTL = WDTPW | WDTHOLD; // Stop watchdog timer
DCOCTLCA%LDCO_1MHZ;
BCSCTL1CA%LBC1_1MHZ;
P1DIR |= BIT6; //Set pin 1.6 to the output direction.
P1SEL |= BIT6; //Select pin 1.6 as our PWM output.
TA0CCR0 = 255; //Set the period in the Timer A0 Capture/Compare 0
register to 255
TA0CCTL1 = OUTMOD_7;
TA0CCR1 = 255;
TA0CTL = TASSEL_2 + MC_1; //TASSEL_2 selects SMCLK as the clock
source, and MC_1 tells it to count up to the value in TA0CCR0.
P1DIR|=BIT1+BIT2+BIT3+BIT4;
P1OUT|=BIT1+BIT3;
P1OUT&=~(BIT2+BIT4);
}
BIT1=IN1;
BIT2=IN2;
BIT3.=IN3;
BIT5=IN4;
Both enable pins are connected P1.6 PWM output. I hope you can
provide information. Regards.
---------------------------------------
Posted through http://www.EmbeddedRelated.com
I try to move 2 motor with L298N motor driver card and MSP430G2553. I
tried some basic codes, but right motor does not work. When I give energy
to right motor can move. So, problem is not in motor. But, when I tried
to move both motors only one motor can move (the motor that is driven by
IN1 and IN2. I added code to below. I can not find my error. Could you
help me please?
#include <msp430.h>
int main(void) {
WDTCTL = WDTPW | WDTHOLD; // Stop watchdog timer
DCOCTLCA%LDCO_1MHZ;
BCSCTL1CA%LBC1_1MHZ;
P1DIR |= BIT6; //Set pin 1.6 to the output direction.
P1SEL |= BIT6; //Select pin 1.6 as our PWM output.
TA0CCR0 = 255; //Set the period in the Timer A0 Capture/Compare 0
register to 255
TA0CCTL1 = OUTMOD_7;
TA0CCR1 = 255;
TA0CTL = TASSEL_2 + MC_1; //TASSEL_2 selects SMCLK as the clock
source, and MC_1 tells it to count up to the value in TA0CCR0.
P1DIR|=BIT1+BIT2+BIT3+BIT4;
P1OUT|=BIT1+BIT3;
P1OUT&=~(BIT2+BIT4);
}
BIT1=IN1;
BIT2=IN2;
BIT3.=IN3;
BIT5=IN4;
Both enable pins are connected P1.6 PWM output. I hope you can
provide information. Regards.
---------------------------------------
Posted through http://www.EmbeddedRelated.com

Re: L298 PWM Problem

MSP430G2553. I tried some codes, but right motor does not work. When I
give direct energy from a supply to right motor without using motor
driver or micrroprocessor it can turn. So, problem is not in motor. But,
when I tried

can turn (the motor that is driven by IN1 and IN2. I added code to below.
I can not find my error. Could you

0

---------------------------------------
Posted through http://www.EmbeddedRelated.com

Re: L298 PWM Problem
On 27.3.17 06:49, engineergc wrote:

(Code clipped, TV)
1. It does not speed up a response to send the same question
multiple times. It may annoy potential responders.
2. There is no way to answer to your questions without the
schematic diagrams of the electronics.
3. This has a strong smell of homework / school project. Is it?

(Code clipped, TV)
1. It does not speed up a response to send the same question
multiple times. It may annoy potential responders.
2. There is no way to answer to your questions without the
schematic diagrams of the electronics.
3. This has a strong smell of homework / school project. Is it?
--
-TV
-TV

Re: L298 PWM Problem

Indeed.
Or at least a pin-by-pin description of the signals you're sending out,
including the frequency of the PWM signal.
--
Tim Wescott
Control systems, embedded software and circuit design
Tim Wescott
Control systems, embedded software and circuit design
We've slightly trimmed the long signature. Click to see the full one.

Re: L298 PWM Problem

when

is

error.

Hi Tim,
I send same question two time because edit option is not exist. In
first time I made some gramer mistakes therefore I wanted to correct them,
since edit option is not available I added fixed form of my question as
comment.
I draw pin connections by using Fritzing program. but I can not add it
to here. How I can add my schematic to here?
Since I can not add schematic I made pin connections description
below.
P1.1>>IN1
P1.2>>IN2
P1.3>>IN3
P1.4>>IN4
P1.6>>ENA&ENB(I connected pwm output to both ENA and ENB pins of L298
motor driver card.
Also Motor outputs are connected to OUT1,OUT2,OUT3 and OUT4 connectors as
respectively.
Then, GND of MSP430 and gnd of 9V battery are connected to GND connector
of L298.
By using this code or another code I can not turn both motor
simultaneously.Only one motor can turn.
***SECOND CODE***
Also I tried many another codes. I added one of them to below. In this
code I adjusted frequency of motor as 20 khz. If frequency is equal to 20
khz, period of motor is equal to T=1/f=1/20000 50us. I used clock source
as SMCLK. SMCLK is supplied from DC0 and DCO is adjusted to 1MHZ.
Therefore I write TA0CCRO50% and I adjusted TA0CCR130%.
#include <msp430.h>
int main(void) {
WDTCTL = WDTPW | WDTHOLD; // Stop watchdog timer
DCOCTLCA%LDCO_1MHZ;
BCSCTL1CA%LBC1_1MHZ;
P1DIR |=BIT2; //PWM output
P1SEL |=BIT2;
TA0CCR0 = 50;
TA0CCTL1 = OUTMOD_7;
TA0CCR1 = 30;
TA0CTL = TASSEL_2 + MC_1;
P1DIR |=(BIT1+BIT3);
while(1) {
P1OUT &=~(BIT1);
P1OUT|=(BIT3);
}
}
Then I made pin connections.
P1.2>>ENA
P1.1>>IN1
P1.3>>IN2
This code can turn motor(motor that connected to OUT1 and OUT2) as
fastly. But if I try to turn other motor with this code, motor can not
turn.
I connected to pwm output P1.2 to ENB and P1.1 to IN3 and P1.3 to IN4.
I spend many time to find my error. Why I can not turn 2 motors
simultaneously with PWM? Where is my fault? Could you help me please?
---------------------------------------
Posted through http://www.EmbeddedRelated.com

Re: L298 PWM Problem
On Wed, 29 Mar 2017 18:58:15 +0300, Tauno Voipio wrote:

(Tauno means without the chip, BTW -- just running two motors in parallel
straight off the battery).

(Tauno means without the chip, BTW -- just running two motors in parallel
straight off the battery).
--
Tim Wescott
Control systems, embedded software and circuit design
Tim Wescott
Control systems, embedded software and circuit design
We've slightly trimmed the long signature. Click to see the full one.

Re: L298 PWM Problem

Have you read the datasheet and application notes at
<http://www.st.com/en/motor-drivers/l298.html>?
--
-TV
-TV

Re: L298 PWM Problem

you

Hi;
I send same question two time because edit option is not exist. In
first time I made some gramer mistakes therefore I wanted to correct them,
since edit option is not available I added fixed form of my question as
comment.
I draw pin connections by using Fritzing program. but I can not add it
to here. How I can add my schematic to here?
Since I can not add schematic I made pin connections description
below.
P1.1>>IN1
P1.2>>IN2
P1.3>>IN3
P1.4>>IN4
P1.6>>ENA&ENB(I connected pwm output to both ENA and ENB pins of L298
motor driver card.
Also Motor outputs are connected to OUT1,OUT2,OUT3 and OUT4 connectors as
respectively.
Then, GND of MSP430 and gnd of 9V battery are connected to GND connector
of L298.
By using this code or another code I can not turn both motor
simultaneously.Only one motor can turn.
***SECOND CODE***
Also I tried many another codes. I added one of them to below. In this
code I adjusted frequency of motor as 20 khz. If frequency is equal to 20
khz, period of motor is equal to T=1/f=1/20000 50us. I used clock source
as SMCLK. SMCLK is supplied from DC0 and DCO is adjusted to 1MHZ.
Therefore I write TA0CCRO50% and I adjusted TA0CCR130%.
#include <msp430.h>
int main(void) {
WDTCTL = WDTPW | WDTHOLD; // Stop watchdog timer
DCOCTLCA%LDCO_1MHZ;
BCSCTL1CA%LBC1_1MHZ;
P1DIR |=BIT2; //PWM output
P1SEL |=BIT2;
TA0CCR0 = 50;
TA0CCTL1 = OUTMOD_7;
TA0CCR1 = 30;
TA0CTL = TASSEL_2 + MC_1;
P1DIR |=(BIT1+BIT3);
while(1) {
P1OUT &=~(BIT1);
P1OUT|=(BIT3);
}
}
Then I made pin connections.
P1.2>>ENA
P1.1>>IN1
P1.3>>IN2
This code can turn motor(motor that connected to OUT1 and OUT2) as
fastly. But if I try to turn other motor with this code, motor can not
turn.
I connected to pwm output P1.2 to ENB and P1.1 to IN3 and P1.3 to IN4.
I spend many time to find my error. Why I can not turn 2 motors
simultaneously with PWM? Where is my fault? Could you help me please?
---------------------------------------
Posted through http://www.EmbeddedRelated.com
Site Timeline
- » IWOMP 2017 - 13th International Workshop on OpenMP
- — Next thread in » Embedded Programming
-
- » Dimension of a matrix
- — Previous thread in » Embedded Programming
-
- » How to avoid a task not executed in a real-time OS?
- — Newest thread in » Embedded Programming
-
- » 18650 battery holder
- — The site's Newest Thread. Posted in » Hobby Electronics Basics
-