Fork

Dependencies:   mbed libscpi

Committer:
wuliqunyy
Date:
Wed Mar 03 14:55:01 2021 +0000
Revision:
11:b86aea372744
Parent:
10:a8390614edcc
Child:
12:9f8c7f4da5f6
working version with ganymede14 discrete

Who changed what in which revision?

UserRevisionLine numberNew contents of line
wuliqunyy 0:fe3c7dde9771 1 #include "mbed.h"
wuliqunyy 5:daab0e0e67e2 2 #include "main_init.h"
wuliqunyy 6:019ab407ac3c 3 #include "i2c_mbed_fpga.h"
wuliqunyy 0:fe3c7dde9771 4
wuliqunyy 0:fe3c7dde9771 5
wuliqunyy 0:fe3c7dde9771 6 /* Main function */
wuliqunyy 0:fe3c7dde9771 7 int main() {
wuliqunyy 6:019ab407ac3c 8
wuliqunyy 6:019ab407ac3c 9 /*init funcitons*/
wuliqunyy 5:daab0e0e67e2 10 i2c_mbed_fpga i2c;
wuliqunyy 6:019ab407ac3c 11 main_init(); /*reset the FPGA!*/
wuliqunyy 3:557d5725b1bb 12
wuliqunyy 6:019ab407ac3c 13 /*control codes*/
wuliqunyy 9:76a0b9f29a2d 14 wait_ms(2000); /* keep FPGA in reset for 5s, to let motor stop*/
wuliqunyy 9:76a0b9f29a2d 15 enbale_fpga(); /* enable FPGA */
wuliqunyy 11:b86aea372744 16 wait_ms(100);
wuliqunyy 6:019ab407ac3c 17 led4 = i2c.i2c_window_open(); /*send password 0xd0d0*/
wuliqunyy 11:b86aea372744 18 wait_ms(100);
wuliqunyy 11:b86aea372744 19 i2c.i2c_set_position_pulse_width(1,3); /*unsigned int mantisaa_2b, unsigned int exponent_3b*/
wuliqunyy 11:b86aea372744 20 wait_ms(100);
wuliqunyy 11:b86aea372744 21 i2c.i2c_set_start_up_pulse_width(3,5); /*(unsigned int mantisaa_3b, unsigned int exponent_3b*/
wuliqunyy 11:b86aea372744 22 wait_ms(100);
wuliqunyy 9:76a0b9f29a2d 23 //led4 = i2c.i2c_set_soft_start_up(1, 1, 0, 1, 1);
wuliqunyy 11:b86aea372744 24 //wait_ms(1000);
wuliqunyy 11:b86aea372744 25 i2c.i2c_set_position_anti_cog(0);
wuliqunyy 11:b86aea372744 26 wait_ms(100);
wuliqunyy 11:b86aea372744 27 i2c.i2c_clear_spd_ctrl();
wuliqunyy 11:b86aea372744 28 wait_ms(100);
wuliqunyy 11:b86aea372744 29 i2c.i2c_set_loop_mode(0);
wuliqunyy 11:b86aea372744 30 wait_ms(100);
wuliqunyy 11:b86aea372744 31 i2c.i2c_set_curve_type(3);
wuliqunyy 11:b86aea372744 32 wait_ms(100);
wuliqunyy 11:b86aea372744 33 i2c.i2c_set_dc_ini(1);
wuliqunyy 11:b86aea372744 34 wait_ms(100);
wuliqunyy 11:b86aea372744 35 i2c.i2c_set_dc_sr(3);
wuliqunyy 11:b86aea372744 36 wait_ms(100);
wuliqunyy 11:b86aea372744 37 i2c.i2c_set_open_loop_duty(0xffff);
wuliqunyy 11:b86aea372744 38 wait_ms(100);
wuliqunyy 6:019ab407ac3c 39 led4 = i2c.i2c_motor_start(); /*send password 0xcafe*/
wuliqunyy 6:019ab407ac3c 40
wuliqunyy 6:019ab407ac3c 41 /*enter infinite loop, motor should be running*/
wuliqunyy 5:daab0e0e67e2 42 while (1) {}
wuliqunyy 0:fe3c7dde9771 43
wuliqunyy 0:fe3c7dde9771 44 }