Hello,
I was wondering if anyone could provide instructions for creating a flowcode program that will enable PWM and send this signal to an output pin. Is there any way to accomplish this using only the blocks in flowcode?
PWM Flowcode v4
Moderator: Benj
-
- Matrix Staff
- Posts: 9520
- Joined: Sat May 05, 2007 2:27 pm
- Location: Northamptonshire, UK
- Has thanked: 2585 times
- Been thanked: 3815 times
- Contact:
Re: PWM Flowcode v4
Hello cobbp
First make sure you have Target Speed in project options correctly set .
Now go to Mechatronics menu and select PWM
It will then place an PWM component on to your panel
If You can't see your panel , then go to view menu and select panel.
If you have only 1 pwm on your target then you will see a single PWM component on your panel
If you have 2 pwm's or more on your target then you will see a dual PWM component on your panel
On the PWM on your Panel, Right click and select Ext properties. Change Clock source and period register to give desired PWM frequency.
Drag a component macro onto main of your flowchart.
Double click it and select PWM(0) Enable, then in ndlx(byte) place a number 1. This is for pwm channel1. If you have two pwm channels on your target device then ndlx(byte) could be 1 for CCP1 or 2 for CCP2.
This should be placed at the top of your Flowchart, so it is only accessed once.
Place a loop after the Enable.
Within this loop will be your main program
Drag another component macro, double click, then select either SetDutyCycle or SetDutyCycle 10bit.
Now you need to place the PWM channel number for ndlx(byte) and the duty value. e.g 1,50
Note the pwm o/p will be present at the CCP1 pin for PWM channel 1 and CCP2 for channel 2.
To take thing further, you can select an ADC component, read the value then place value into a variable, you can then use this ADC variable to directly alter PWM duty.
Have you followed the tutorials for flowcode?
Hope this gives you a starting point.
If you get stuck, post your flowchart, and state what frequency your osc is running at, and someone assist you further.
Good luck.
First make sure you have Target Speed in project options correctly set .
Now go to Mechatronics menu and select PWM
It will then place an PWM component on to your panel
If You can't see your panel , then go to view menu and select panel.
If you have only 1 pwm on your target then you will see a single PWM component on your panel
If you have 2 pwm's or more on your target then you will see a dual PWM component on your panel
On the PWM on your Panel, Right click and select Ext properties. Change Clock source and period register to give desired PWM frequency.
Drag a component macro onto main of your flowchart.
Double click it and select PWM(0) Enable, then in ndlx(byte) place a number 1. This is for pwm channel1. If you have two pwm channels on your target device then ndlx(byte) could be 1 for CCP1 or 2 for CCP2.
This should be placed at the top of your Flowchart, so it is only accessed once.
Place a loop after the Enable.
Within this loop will be your main program
Drag another component macro, double click, then select either SetDutyCycle or SetDutyCycle 10bit.
Now you need to place the PWM channel number for ndlx(byte) and the duty value. e.g 1,50
Note the pwm o/p will be present at the CCP1 pin for PWM channel 1 and CCP2 for channel 2.
To take thing further, you can select an ADC component, read the value then place value into a variable, you can then use this ADC variable to directly alter PWM duty.
Have you followed the tutorials for flowcode?
Hope this gives you a starting point.
If you get stuck, post your flowchart, and state what frequency your osc is running at, and someone assist you further.
Good luck.
Martin
Re: PWM Flowcode v4
Thanks, I really appreciate the help. I'll try this out.
P.S. I don't think my copy of the software has a PWM tutorial... Is there any other place it could be found?
P.S. I don't think my copy of the software has a PWM tutorial... Is there any other place it could be found?
-
- Matrix Staff
- Posts: 9520
- Joined: Sat May 05, 2007 2:27 pm
- Location: Northamptonshire, UK
- Has thanked: 2585 times
- Been thanked: 3815 times
- Contact:
Re: PWM Flowcode v4
Your welcome.
If you want a pwm example, then go to:
http://www.matrixmultimedia.com/Flowcode3a-X.php
Scroll down to
Flowcode V4:
Flowcode Examples
Within the zip file there is an example that show you how to control the duty of a PWM signal with a variable resistor.
If you want a pwm example, then go to:
http://www.matrixmultimedia.com/Flowcode3a-X.php
Scroll down to
Flowcode V4:
Flowcode Examples
Within the zip file there is an example that show you how to control the duty of a PWM signal with a variable resistor.
Martin