Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
i2c_mbed_fpga.h
- Committer:
- wuliqunyy
- Date:
- 2021-03-03
- Revision:
- 11:b86aea372744
- Parent:
- 10:a8390614edcc
- Child:
- 12:9f8c7f4da5f6
File content as of revision 11:b86aea372744:
#ifndef I2C_MBED_FPGA_H #define I2C_MBED_FPGA_H #include "nv_bitfield_map.h" #include "nv_defines.h" #include "nv_defaults.h" #define I2C_SLAVE_ADDR 0x18<<1 //Class delclarations class i2c_mbed_fpga { public: /*constructor*/ i2c_mbed_fpga(): i2c_master(p9, p10){ i2c_master.frequency(35000); nv_positin_val = NV_POSITION_DEFUALT; nv_start_up_val = NV_START_UP_DEFAULT; nv_wind_brake_val = NV_WIND_BRAKE_DEFAULT; ram_open_duty_val = RAM_OPEN_DUTY_DEFAULT; nv_spd_control_1_val = NV_SPD_CONTROL_1_DEFAULT; nv_spd_control_2_val = NV_SPD_CONTROL_1_DEFAULT; }; int i2c_word_read(char *word); int i2c_word_write(char *word); int i2c_word_safe_write(char *word); int i2c_window_open(); int i2c_motor_start(); int i2c_set_position_pulse_width(unsigned int manstisa_2b, unsigned int exponenet_3b); int i2c_set_position_duty(unsigned int duty_2b); int i2c_set_position_maj_vote(unsigned int maj_1b); int i2c_set_position_anti_cog(unsigned int cog_1b); int i2c_set_start_up_pulse_width(unsigned int mantisaa_3b, unsigned int exponent_3b); int i2c_set_start_up_duty(unsigned int duty_2b); int i2c_set_start_up_num_comm(unsigned int comm); int i2c_set_soft_start_up(unsigned int enbale, unsigned int mantisaa_3b, unsigned int exponent_3b, unsigned int step_size, unsigned int num_steps); int i2c_set_high_torque_start_up(unsigned int enbale, unsigned int mantisaa_3b, unsigned int exponent_3b); int i2c_set_single_pulse_start_up(unsigned int enbale, unsigned int mantisaa_3b, unsigned int exponent_3b); int i2c_clear_spd_ctrl(); int i2c_set_loop_mode(unsigned int openloop); int i2c_set_curve_type(unsigned int curvetype); int i2c_set_dc_ini(unsigned int ini); int i2c_set_dc_sr(unsigned int sr); int i2c_set_open_loop_duty(unsigned int duty); private: I2C i2c_master; unsigned int nv_positin_val; unsigned int nv_start_up_val; unsigned int nv_wind_brake_val; unsigned int nv_spd_control_1_val; unsigned int nv_spd_control_2_val; unsigned int ram_open_duty_val; //Position Detection Task/Functions }; #endif