DRV8830/TI Motor Driver sample program.\\ This program can control two motors.

Dependencies:   DRV8830 mbed

Committer:
kenjiArai
Date:
Sat Jul 12 11:55:37 2014 +0000
Revision:
3:db817fb05ba7
Parent:
2:e0b9fd6126d1
Child:
4:58734155cd29
ported from L152, monitor program on rtos

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kenjiArai 2:e0b9fd6126d1 1 /*
kenjiArai 2:e0b9fd6126d1 2 * mbed Application program for the mbed ST NUCLEO F401RE Board
kenjiArai 2:e0b9fd6126d1 3 *
kenjiArai 2:e0b9fd6126d1 4 * Copyright (c) 2014 Kenji Arai / JH1PJL
kenjiArai 2:e0b9fd6126d1 5 * http://www.page.sannet.ne.jp/kenjia/index.html
kenjiArai 2:e0b9fd6126d1 6 * http://mbed.org/users/kenjiArai/
kenjiArai 2:e0b9fd6126d1 7 * Created: July 12th, 2014
kenjiArai 2:e0b9fd6126d1 8 * Revised: July 12th, 2014
kenjiArai 2:e0b9fd6126d1 9 *
kenjiArai 2:e0b9fd6126d1 10 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
kenjiArai 2:e0b9fd6126d1 11 * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE
kenjiArai 2:e0b9fd6126d1 12 * AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
kenjiArai 2:e0b9fd6126d1 13 * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
kenjiArai 2:e0b9fd6126d1 14 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
kenjiArai 2:e0b9fd6126d1 15 */
kenjiArai 2:e0b9fd6126d1 16
kenjiArai 2:e0b9fd6126d1 17 // Include ---------------------------------------------------------------------------------------
bcostm 0:028fac66239d 18 #include "mbed.h"
kenjiArai 3:db817fb05ba7 19 #include "rtos.h"
bcostm 1:e9d1c42a73ae 20
kenjiArai 2:e0b9fd6126d1 21 // Object ----------------------------------------------------------------------------------------
kenjiArai 2:e0b9fd6126d1 22 DigitalOut myled(LED1);
kenjiArai 3:db817fb05ba7 23 DigitalIn usr_sw(PC_13);
kenjiArai 3:db817fb05ba7 24
kenjiArai 3:db817fb05ba7 25 // Function prototypes ---------------------------------------------------------------------------
kenjiArai 3:db817fb05ba7 26 extern int mon( void);
bcostm 1:e9d1c42a73ae 27
kenjiArai 2:e0b9fd6126d1 28 //-------------------------------------------------------------------------------------------------
kenjiArai 2:e0b9fd6126d1 29 // Control Program
kenjiArai 2:e0b9fd6126d1 30 //-------------------------------------------------------------------------------------------------
kenjiArai 3:db817fb05ba7 31 int read_sw (void){
kenjiArai 3:db817fb05ba7 32 if (usr_sw == 0){ return 1;
kenjiArai 3:db817fb05ba7 33 } else { return 0;}
kenjiArai 3:db817fb05ba7 34 }
kenjiArai 3:db817fb05ba7 35
kenjiArai 3:db817fb05ba7 36 // Monitor program
kenjiArai 3:db817fb05ba7 37 void mon_thread(void const *args){
kenjiArai 3:db817fb05ba7 38 while (true){ mon(); }
kenjiArai 3:db817fb05ba7 39 }
kenjiArai 3:db817fb05ba7 40
kenjiArai 3:db817fb05ba7 41 // Thread definition
kenjiArai 3:db817fb05ba7 42 osThreadDef(mon_thread, osPriorityNormal, 2048);
kenjiArai 3:db817fb05ba7 43
bcostm 0:028fac66239d 44 int main() {
kenjiArai 3:db817fb05ba7 45 // Starts 1st thread
kenjiArai 3:db817fb05ba7 46 osThreadCreate(osThread(mon_thread), NULL);
kenjiArai 3:db817fb05ba7 47 while(1) {
bcostm 0:028fac66239d 48 myled = !myled;
kenjiArai 3:db817fb05ba7 49 Thread::wait(1000);
kenjiArai 3:db817fb05ba7 50 }
bcostm 0:028fac66239d 51 }
bcostm 0:028fac66239d 52