Skip to content

Commit e04a749

Browse files
committed
feat: added ina230 example
1 parent 68f9a14 commit e04a749

File tree

3 files changed

+82
-5
lines changed

3 files changed

+82
-5
lines changed

obc/CMakeLists.txt

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,13 +67,16 @@ elseif(${CMAKE_BUILD_TYPE} MATCHES Examples)
6767
add_executable(${OUT_FILE_NAME} examples/test_app_uart_tx/main.c)
6868
elseif(${EXAMPLE_TYPE} MATCHES VN100)
6969
add_executable(${OUT_FILE_NAME} examples/vn100_demo/test_binary_reading/main.c)
70-
elseif(${EXAMPLE_TYPE} MATCHES ADC)
70+
elseif(${EXAMPLE_TYPE} MATCHES ADC)
7171
add_executable(${OUT_FILE_NAME} examples/test_app_adc/main.c)
7272
elseif(${EXAMPLE_TYPE} MATCHES CC1120_SPI)
7373
add_executable(${OUT_FILE_NAME} examples/test_app_cc1120_spi/main.c examples/test_app_cc1120_spi/cc1120_spi_tests.c)
7474
target_include_directories (${OUT_FILE_NAME} PRIVATE examples/test_app_cc1120_spi)
7575
elseif(${EXAMPLE_TYPE} MATCHES RS)
7676
add_executable(${OUT_FILE_NAME} examples/test_app_rs/main.c)
77+
elseif(${EXAMPLE_TYPE} MATCHES INA230)
78+
add_executable(${OUT_FILE_NAME} examples/test_ina230_driver/main.c app/drivers/ina230/ina230.c app/drivers/tca6424/tca6424.c)
79+
target_include_directories (${OUT_FILE_NAME} PRIVATE app/drivers/ina230 app/drivers/tca6424)
7780

7881
# ADD MORE EXAMPLES ABOVE THIS COMMENT
7982
else ()

obc/examples/test_app_rs/main.c

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,7 @@ int vTask1(void *pvParameters) {
3636
sciPrintf("Decoded data: %s\r\n", decodedData);
3737

3838
destroyRs();
39-
while (1)
40-
;
39+
while (1);
4140
}
4241

4342
int main(void) {
@@ -56,8 +55,7 @@ int main(void) {
5655

5756
vTaskStartScheduler();
5857

59-
while (1)
60-
;
58+
while (1);
6159

6260
return 0;
6361
}
Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
#include "ina230.h"
2+
#include "obc_sci_io.h"
3+
#include "obc_i2c_io.h"
4+
#include "obc_print.h"
5+
#include "obc_board_config.h"
6+
7+
#include <sci.h>
8+
#include <stdio.h>
9+
#include <gio.h>
10+
#include <FreeRTOS.h>
11+
#include <os_task.h>
12+
13+
#include <sys_common.h>
14+
#include <sys_core.h>
15+
16+
static StaticTask_t taskBuffer;
17+
static StackType_t taskStack[1024];
18+
19+
void vTaskCode(void* pvParameters) {
20+
float num = 100;
21+
obc_error_code_t errCode = 0;
22+
while (1) {
23+
errCode = getINA230ShuntVoltage(INA230_DEVICE_ONE, &num);
24+
if (errCode != OBC_ERR_CODE_SUCCESS) {
25+
sciPrintf("Error Reading Shunt Voltage - %d\r\n", (int)errCode);
26+
} else {
27+
sciPrintf("Shunt Voltage - %f\r\n", num);
28+
}
29+
30+
errCode = getINA230Current(INA230_DEVICE_ONE, &num);
31+
if (errCode != OBC_ERR_CODE_SUCCESS) {
32+
sciPrintf("Error Reading Current - %d\r\n", (int)errCode);
33+
} else {
34+
sciPrintf("Current - %f\r\n", num);
35+
}
36+
37+
errCode = getINA230BusVoltage(INA230_DEVICE_ONE, &num);
38+
if (errCode != OBC_ERR_CODE_SUCCESS) {
39+
sciPrintf("Error Reading Bus Voltage - %d\r\n", (int)errCode);
40+
} else {
41+
sciPrintf("Bus Voltage - %f\r\n", num);
42+
}
43+
44+
errCode = getINA230Power(INA230_DEVICE_ONE, &num);
45+
if (errCode != OBC_ERR_CODE_SUCCESS) {
46+
sciPrintf("Error Reading Power - %d\r\n", (int)errCode);
47+
} else {
48+
sciPrintf("Power - %f\r\n", num);
49+
}
50+
gioToggleBit(STATE_MGR_DEBUG_LED_GIO_PORT, STATE_MGR_DEBUG_LED_GIO_BIT);
51+
52+
// Simple delay.
53+
vTaskDelay(pdMS_TO_TICKS(1000));
54+
}
55+
}
56+
57+
int main(void) {
58+
// Run hardware initialization code
59+
gioInit();
60+
sciInit();
61+
i2cInit();
62+
63+
sciEnableNotification(UART_PRINT_REG, SCI_RX_INT);
64+
65+
_enable_interrupt_();
66+
67+
// Initialize bus mutexes
68+
initSciPrint();
69+
initI2CMutex();
70+
initINA230();
71+
72+
// Assume all tasks are created correctly
73+
xTaskCreateStatic(vTaskCode, "Demo", 1024, NULL, 1, taskStack, &taskBuffer);
74+
75+
vTaskStartScheduler();
76+
}

0 commit comments

Comments
 (0)