48 lines
		
	
	
		
			906 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			48 lines
		
	
	
		
			906 B
		
	
	
	
		
			C
		
	
	
	
	
	
| /**
 | |
|  * @author Rémi Heredero
 | |
|  * @version. 0.0.0
 | |
|  * @date August 2023
 | |
|  * @file kartculator.c
 | |
|  */
 | |
| 
 | |
| #include "kartculator.h"
 | |
| 
 | |
| void calcTorque(uint8_t joy_pos) {
 | |
|     int32_t calcTorque;
 | |
|     calcTorque = (int8_t) joy_pos;                  // joystick position
 | |
|     calcTorque *= KART_CST.CONTROL_POWER_FACTOR;    // convert by power factor
 | |
|     calcTorque /= 1000;                             // torque define by joystick
 | |
|     eKart.torque = (int16_t) calcTorque;
 | |
| }
 | |
| 
 | |
| void calcPosition(uint8_t joy_pos){
 | |
|     int32_t calcPosition;
 | |
|     calcPosition = (int8_t) joy_pos;
 | |
| }
 | |
| 
 | |
| void calcSpeed(int32_t rpm) {
 | |
|     int32_t calcSpeed;
 | |
|     if(rpm>=0){
 | |
|         calcSpeed = rpm;
 | |
|     } else {
 | |
|         calcSpeed = -rpm;
 | |
|     }
 | |
|     calcSpeed *= 1000;
 | |
|     calcSpeed /= KART_CST.CONTROL_SPEED_FACTOR;
 | |
|     eKart.speed = (uint8_t) calcSpeed;
 | |
| }
 | |
| 
 | |
| int16_t getTorque() {
 | |
|     
 | |
| }
 | |
| 
 | |
| uint32_t getPosition() {
 | |
|     
 | |
| }
 | |
| 
 | |
| uint8_t getSpeed() {
 | |
|     
 | |
| }
 | |
| 
 | |
| 
 |