forked from ROMEO/obsw
rust_helper Files created
This commit is contained in:
@ -1 +1 @@
|
|||||||
target_sources(${TARGET_NAME} PRIVATE main.c testIp.c freeRTOS_rust_helper.c)
|
target_sources(${TARGET_NAME} PRIVATE main.c testIp.c freeRTOS_rust_helper.c can_rust_helper.c uart_rust_helper.c gpio_rust_helper.c)
|
4
mission/can_rust_helper.c
Normal file
4
mission/can_rust_helper.c
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
|
||||||
|
/************************************************************/
|
||||||
|
/* CAN SETUP AND USAGE */
|
||||||
|
/************************************************************/
|
@ -102,37 +102,3 @@ uint8_t give_mutex(void * handle) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/************************************************************/
|
|
||||||
/* GPIO SETUP AND USAGE */
|
|
||||||
/************************************************************/
|
|
||||||
|
|
||||||
XGpioPs gpio;
|
|
||||||
void gpio_setup() {
|
|
||||||
XGpioPs_Config config;
|
|
||||||
config.DeviceId = 4; // chosen by fair dice throw
|
|
||||||
config.BaseAddr = XPS_GPIO_BASEADDR;
|
|
||||||
s32 returncode = XGpioPs_CfgInitialize(&gpio, &config, XPS_GPIO_BASEADDR);
|
|
||||||
//printf("Configured XGPIO");
|
|
||||||
XGpioPs_SetDirection(&gpio, 0, (1 << 7));
|
|
||||||
XGpioPs_SetOutputEnable(&gpio, 0, (1 << 7));
|
|
||||||
XGpioPs_WritePin(&gpio, 7, 1);
|
|
||||||
//printf("Blinking is initialized");
|
|
||||||
XGpioPs_WritePin(&gpio, 7, 0);
|
|
||||||
//printf("Value written once");
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void gpio_write_pin(uint32_t pin, uint32_t data) {
|
|
||||||
XGpioPs_WritePin(&gpio, pin, data);
|
|
||||||
}
|
|
||||||
|
|
||||||
uint32_t gpio_read_pin(uint32_t pin) {
|
|
||||||
return XGpioPs_ReadPin(&gpio, pin);
|
|
||||||
}
|
|
||||||
|
|
||||||
void gpio_toggle_pin(uint32_t pin) {
|
|
||||||
static int pinvalue = 1;
|
|
||||||
pinvalue = pinvalue ^ 1;
|
|
||||||
XGpioPs_WritePin(&gpio, pin, pinvalue);
|
|
||||||
}
|
|
34
mission/gpio_rust_helper.c
Normal file
34
mission/gpio_rust_helper.c
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
|
||||||
|
/************************************************************/
|
||||||
|
/* GPIO SETUP AND USAGE */
|
||||||
|
/************************************************************/
|
||||||
|
|
||||||
|
XGpioPs gpio;
|
||||||
|
void gpio_setup() {
|
||||||
|
XGpioPs_Config config;
|
||||||
|
config.DeviceId = 4; // chosen by fair dice throw
|
||||||
|
config.BaseAddr = XPS_GPIO_BASEADDR;
|
||||||
|
s32 returncode = XGpioPs_CfgInitialize(&gpio, &config, XPS_GPIO_BASEADDR);
|
||||||
|
//printf("Configured XGPIO");
|
||||||
|
XGpioPs_SetDirection(&gpio, 0, (1 << 7));
|
||||||
|
XGpioPs_SetOutputEnable(&gpio, 0, (1 << 7));
|
||||||
|
XGpioPs_WritePin(&gpio, 7, 1);
|
||||||
|
//printf("Blinking is initialized");
|
||||||
|
XGpioPs_WritePin(&gpio, 7, 0);
|
||||||
|
//printf("Value written once");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void gpio_write_pin(uint32_t pin, uint32_t data) {
|
||||||
|
XGpioPs_WritePin(&gpio, pin, data);
|
||||||
|
}
|
||||||
|
|
||||||
|
uint32_t gpio_read_pin(uint32_t pin) {
|
||||||
|
return XGpioPs_ReadPin(&gpio, pin);
|
||||||
|
}
|
||||||
|
|
||||||
|
void gpio_toggle_pin(uint32_t pin) {
|
||||||
|
static int pinvalue = 1;
|
||||||
|
pinvalue = pinvalue ^ 1;
|
||||||
|
XGpioPs_WritePin(&gpio, pin, pinvalue);
|
||||||
|
}
|
4
mission/uart_rust_helper.c
Normal file
4
mission/uart_rust_helper.c
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
|
||||||
|
/************************************************************/
|
||||||
|
/* UART SETUP AND USAGE */
|
||||||
|
/************************************************************/
|
Reference in New Issue
Block a user