forked from analogdevicesinc/precision-converters-firmware
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
projects: ltc2672: Release ltc2672 firmware
Release iio application source code Checkout no-os libraries to latest commit ids, update lib file Update mbedignore file Add the project to the github build workflow Signed-off-by: SGudla <[email protected]>
- Loading branch information
1 parent
b36119b
commit 5110146
Showing
23 changed files
with
1,864 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1 @@ | ||
https://github.com/analogdevicesinc/no-OS/#a7b7ba26ca3e654697c35b1f1faf14ad8b540d32 | ||
https://github.com/analogdevicesinc/no-OS/#2371c3b7c87497d13978f51d470dacbb206a52eb |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
*.swp | ||
*.profile* | ||
build | ||
Visual* | ||
Code* | ||
.gitattributes | ||
.vs/ | ||
*.sln | ||
*.vgdbproj | ||
*.TMP | ||
*.user | ||
STM32/.settings | ||
STM32/Core | ||
STM32/Drivers | ||
STM32/Debug | ||
STM32/.mxproject | ||
STM32/.cproject | ||
STM32/.project | ||
STM32/*.launch | ||
STM32/*.vgdbsettings | ||
STM32/*.vcxproj | ||
STM32/*.vcxproj.filters | ||
STM32/stm32.props | ||
STM32/stm32.xml | ||
STM32/STM32F469NIHX_FLASH.ld | ||
STM32/STM32F469NIHX_RAM.ld | ||
scripts/__pycache__ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
STM32/ | ||
app/app_config_stm32.h | ||
app/app_config_stm32.c | ||
app/stm32_gpio_irq_generated.c |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
[ProjectFiles] | ||
HeaderPath=../app;../../../libraries/no-OS/util;../../../libraries/no-OS/include;../../../libraries/no-OS/drivers/platform/stm32;../../../libraries/no-OS/iio;../../../libraries/no-OS/drivers/dac/ltc2672;../../../libraries/no-OS/drivers/api;../../../libraries/precision-converters-library/common/;../../../libraries/precision-converters-library/board_info/; | ||
|
||
[Groups] | ||
app/=../app/main.c;../app/ltc2672_iio.c;../app/ltc2672_iio.h;../app/app_config.h;../app/app_config.c;../app/app_config_stm32.c;../app/app_config_stm32.h;../app/ltc2672_user_config.c;../app/ltc2672_user_config.h;../app/stm32_gpio_irq_generated.c; | ||
|
||
app/libraries/precision-converters-library/common/=../../../libraries/precision-converters-library/common/common.h;../../../libraries/precision-converters-library/common/common.c; | ||
|
||
app/libraries/precision-converters-library/board_info/=../../../libraries/precision-converters-library/board_info/board_info.c;../../../libraries/precision-converters-library/board_info/board_info.h; | ||
|
||
app/libraries/no-OS/drivers/dac/ltc2672/=../../../libraries/no-OS/drivers/dac/ltc2672/ltc2672.c;../../../libraries/no-OS/drivers/dac/ltc2672/ltc2672.h; | ||
|
||
app/libraries/no-OS/=../../../libraries/no-OS/util/;../../../libraries/no-OS/include; | ||
|
||
app/libraries/no-OS/drivers/platform/stm32/=../../../libraries/no-OS/drivers/platform/stm32/stm32_delay.c;../../../libraries/no-OS/drivers/platform/stm32/stm32_gpio.c;../../../libraries/no-OS/drivers/platform/stm32/stm32_gpio.h;../../../libraries/no-OS/drivers/platform/stm32/stm32_spi.c;../../../libraries/no-OS/drivers/platform/stm32/stm32_spi.h;../../../libraries/no-OS/drivers/platform/stm32/stm32_uart.c;../../../libraries/no-OS/drivers/platform/stm32/stm32_uart.h;../../../libraries/no-OS/drivers/platform/stm32/stm32_delay.h;../../../libraries/no-OS/drivers/platform/stm32/stm32_irq.c;../../../libraries/no-OS/drivers/platform/stm32/stm32_irq.h; | ||
|
||
app/libraries/no-OS/iio/=../../../libraries/no-OS/iio/iio.c;../../../libraries/no-OS/iio/iio.h;../../../libraries/no-OS/iio/iiod.h;../../../libraries/no-OS/iio/iiod.c;../../../libraries/no-OS/iio/iio_trigger.c;../../../libraries/no-OS/iio/iio_trigger.h; | ||
|
||
app/libraries/no-OS/drivers/api/=../../../libraries/no-OS/drivers/api/no_os_gpio.c;../../../libraries/no-OS/drivers/api/no_os_spi.c;../../../libraries/no-OS/drivers/api/no_os_uart.c;../../../libraries/no-OS/drivers/api/no_os_irq.c; | ||
|
||
[Others] | ||
Define=_USE_STD_INT_TYPES;TINYIIOD_VERSION_MAJOR;TINYIIOD_VERSION_MINOR;TINYIIOD_VERSION_GIT;IIOD_BUFFER_SIZE;IIO_IGNORE_BUFF_OVERRUN_ERR;USE_PHY_COM_PORT; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,156 @@ | ||
#MicroXplorer Configuration settings - do not modify | ||
CAD.formats= | ||
CAD.pinconfig= | ||
CAD.provider= | ||
File.Version=6 | ||
GPIO.groupedBy=Group By Peripherals | ||
KeepUserPlacement=false | ||
Mcu.CPN=STM32F469NIH6 | ||
Mcu.Family=STM32F4 | ||
Mcu.IP0=I2C1 | ||
Mcu.IP1=NVIC | ||
Mcu.IP2=RCC | ||
Mcu.IP3=SPI1 | ||
Mcu.IP4=SYS | ||
Mcu.IP5=UART5 | ||
Mcu.IPNb=6 | ||
Mcu.Name=STM32F469NIHx | ||
Mcu.Package=TFBGA216 | ||
Mcu.Pin0=PB8 | ||
Mcu.Pin1=PB4 | ||
Mcu.Pin2=PB3 | ||
Mcu.Pin3=PC12 | ||
Mcu.Pin4=PB7 | ||
Mcu.Pin5=PD2 | ||
Mcu.Pin6=PH0/OSC_IN | ||
Mcu.Pin7=PH1/OSC_OUT | ||
Mcu.Pin8=PA7 | ||
Mcu.Pin9=VP_SYS_VS_Systick | ||
Mcu.PinsNb=10 | ||
Mcu.ThirdPartyNb=0 | ||
Mcu.UserConstants= | ||
Mcu.UserName=STM32F469NIHx | ||
MxCube.Version=6.10.0 | ||
MxDb.Version=DB.6.0.100 | ||
NVIC.BusFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false | ||
NVIC.DebugMonitor_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false | ||
NVIC.ForceEnableDMAVector=true | ||
NVIC.HardFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false | ||
NVIC.I2C1_ER_IRQn=true\:0\:0\:false\:false\:true\:true\:true\:true | ||
NVIC.I2C1_EV_IRQn=true\:0\:0\:false\:false\:true\:true\:true\:true | ||
NVIC.MemoryManagement_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false | ||
NVIC.NonMaskableInt_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false | ||
NVIC.PendSV_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false | ||
NVIC.PriorityGroup=NVIC_PRIORITYGROUP_4 | ||
NVIC.SVCall_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false | ||
NVIC.SysTick_IRQn=true\:15\:0\:false\:false\:true\:false\:true\:false | ||
NVIC.UART5_IRQn=true\:0\:0\:false\:false\:true\:true\:true\:false | ||
NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false | ||
PA7.Locked=true | ||
PA7.Mode=Full_Duplex_Master | ||
PA7.Signal=SPI1_MOSI | ||
PB3.Mode=Full_Duplex_Master | ||
PB3.Signal=SPI1_SCK | ||
PB4.Mode=Full_Duplex_Master | ||
PB4.Signal=SPI1_MISO | ||
PB7.Locked=true | ||
PB7.Mode=I2C | ||
PB7.Signal=I2C1_SDA | ||
PB8.Mode=I2C | ||
PB8.Signal=I2C1_SCL | ||
PC12.Mode=Asynchronous | ||
PC12.Signal=UART5_TX | ||
PD2.Mode=Asynchronous | ||
PD2.Signal=UART5_RX | ||
PH0/OSC_IN.Mode=HSE-External-Oscillator | ||
PH0/OSC_IN.Signal=RCC_OSC_IN | ||
PH1/OSC_OUT.Mode=HSE-External-Oscillator | ||
PH1/OSC_OUT.Signal=RCC_OSC_OUT | ||
PinOutPanel.CurrentBGAView=Top | ||
PinOutPanel.RotationAngle=0 | ||
ProjectManager.AskForMigrate=true | ||
ProjectManager.BackupPrevious=false | ||
ProjectManager.CompilerOptimize=6 | ||
ProjectManager.ComputerToolchain=false | ||
ProjectManager.CoupleFile=false | ||
ProjectManager.CustomerFirmwarePackage= | ||
ProjectManager.DefaultFWLocation=true | ||
ProjectManager.DeletePrevious=true | ||
ProjectManager.DeviceId=STM32F469NIHx | ||
ProjectManager.FirmwarePackage=STM32Cube FW_F4 V1.27.1 | ||
ProjectManager.FreePins=false | ||
ProjectManager.HalAssertFull=false | ||
ProjectManager.HeapSize=0x200 | ||
ProjectManager.KeepUserCode=true | ||
ProjectManager.LastFirmware=true | ||
ProjectManager.LibraryCopy=1 | ||
ProjectManager.MainLocation=Core/Src | ||
ProjectManager.NoMain=true | ||
ProjectManager.PreviousToolchain=STM32CubeIDE | ||
ProjectManager.ProjectBuild=false | ||
ProjectManager.ProjectFileName=ltc2672_iio.ioc | ||
ProjectManager.ProjectName=ltc2672_iio | ||
ProjectManager.ProjectStructure= | ||
ProjectManager.RegisterCallBack=TIM,UART | ||
ProjectManager.StackSize=0x400 | ||
ProjectManager.TargetToolchain=STM32CubeIDE | ||
ProjectManager.ToolChainLocation= | ||
ProjectManager.UAScriptAfterPath= | ||
ProjectManager.UAScriptBeforePath= | ||
ProjectManager.UnderRoot=true | ||
ProjectManager.functionlistsort=1-SystemClock_Config-RCC-false-HAL-false,2-MX_GPIO_Init-GPIO-false-HAL-false,3-MX_SPI1_Init-SPI1-false-HAL-false,4-MX_UART5_Init-UART5-false-HAL-false,5-MX_I2C1_Init-I2C1-false-HAL-false | ||
RCC.AHBFreq_Value=180000000 | ||
RCC.APB1CLKDivider=RCC_HCLK_DIV4 | ||
RCC.APB1Freq_Value=45000000 | ||
RCC.APB1TimFreq_Value=90000000 | ||
RCC.APB2CLKDivider=RCC_HCLK_DIV4 | ||
RCC.APB2Freq_Value=45000000 | ||
RCC.APB2TimFreq_Value=90000000 | ||
RCC.CortexFreq_Value=180000000 | ||
RCC.DSIFreq_Value=20000000 | ||
RCC.DSITXEscFreq_Value=5000000 | ||
RCC.EthernetFreq_Value=180000000 | ||
RCC.FCLKCortexFreq_Value=180000000 | ||
RCC.FamilyName=M | ||
RCC.HCLKFreq_Value=180000000 | ||
RCC.HSE_VALUE=8000000 | ||
RCC.I2SFreq_Value=192000000 | ||
RCC.IPParameters=AHBFreq_Value,APB1CLKDivider,APB1Freq_Value,APB1TimFreq_Value,APB2CLKDivider,APB2Freq_Value,APB2TimFreq_Value,CortexFreq_Value,DSIFreq_Value,DSITXEscFreq_Value,EthernetFreq_Value,FCLKCortexFreq_Value,FamilyName,HCLKFreq_Value,HSE_VALUE,I2SFreq_Value,LCDTFTFreq_Value,MCO2PinFreq_Value,PLLCLKFreq_Value,PLLDSIFreq_Value,PLLDSIVCOFreq_Value,PLLI2SQCLKFreq_Value,PLLI2SRCLKFreq_Value,PLLM,PLLN,PLLQCLKFreq_Value,PLLRCLKFreq_Value,PLLRFreq_Value,PLLSAIPCLKFreq_Value,PLLSAIQCLKFreq_Value,PLLSAIRCLKFreq_Value,PLLSourceVirtual,RTCFreq_Value,RTCHSEDivFreq_Value,SAIAFreq_Value,SAIBFreq_Value,SDIOFreq_Value,SYSCLKFreq_VALUE,SYSCLKSource,USBFreq_Value,VCOI2SOutputFreq_Value,VCOInputFreq_Value,VCOOutputFreq_Value,VCOSAIOutputFreq_Value | ||
RCC.LCDTFTFreq_Value=96000000 | ||
RCC.MCO2PinFreq_Value=180000000 | ||
RCC.PLLCLKFreq_Value=180000000 | ||
RCC.PLLDSIFreq_Value=160000000 | ||
RCC.PLLDSIVCOFreq_Value=320000000 | ||
RCC.PLLI2SQCLKFreq_Value=96000000 | ||
RCC.PLLI2SRCLKFreq_Value=192000000 | ||
RCC.PLLM=4 | ||
RCC.PLLN=180 | ||
RCC.PLLQCLKFreq_Value=90000000 | ||
RCC.PLLRCLKFreq_Value=180000000 | ||
RCC.PLLRFreq_Value=180000000 | ||
RCC.PLLSAIPCLKFreq_Value=192000000 | ||
RCC.PLLSAIQCLKFreq_Value=96000000 | ||
RCC.PLLSAIRCLKFreq_Value=192000000 | ||
RCC.PLLSourceVirtual=RCC_PLLSOURCE_HSE | ||
RCC.RTCFreq_Value=32000 | ||
RCC.RTCHSEDivFreq_Value=4000000 | ||
RCC.SAIAFreq_Value=96000000 | ||
RCC.SAIBFreq_Value=96000000 | ||
RCC.SDIOFreq_Value=90000000 | ||
RCC.SYSCLKFreq_VALUE=180000000 | ||
RCC.SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK | ||
RCC.USBFreq_Value=90000000 | ||
RCC.VCOI2SOutputFreq_Value=384000000 | ||
RCC.VCOInputFreq_Value=2000000 | ||
RCC.VCOOutputFreq_Value=360000000 | ||
RCC.VCOSAIOutputFreq_Value=384000000 | ||
SPI1.CalculateBaudRate=22.5 MBits/s | ||
SPI1.Direction=SPI_DIRECTION_2LINES | ||
SPI1.IPParameters=VirtualType,Mode,Direction,CalculateBaudRate | ||
SPI1.Mode=SPI_MODE_MASTER | ||
SPI1.VirtualType=VM_MASTER | ||
UART5.IPParameters=VirtualMode | ||
UART5.VirtualMode=Asynchronous | ||
VP_SYS_VS_Systick.Mode=SysTick | ||
VP_SYS_VS_Systick.Signal=SYS_VS_Systick | ||
board=custom |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,141 @@ | ||
/***************************************************************************//** | ||
* @file app_config.c | ||
* @brief Application configurations module (platform-agnostic) | ||
* @details This module performs the system configurations | ||
******************************************************************************** | ||
* Copyright (c) 2023-24 Analog Devices, Inc. | ||
* All rights reserved. | ||
* | ||
* This software is proprietary to Analog Devices, Inc. and its licensors. | ||
* By using this software you agree to the terms of the associated | ||
* Analog Devices Software License Agreement. | ||
*******************************************************************************/ | ||
|
||
/******************************************************************************/ | ||
/***************************** Include Files **********************************/ | ||
/******************************************************************************/ | ||
|
||
#include "app_config.h" | ||
#include "no_os_util.h" | ||
#include "common.h" | ||
#include "no_os_error.h" | ||
#include "no_os_uart.h" | ||
#include "no_os_irq.h" | ||
|
||
/******************************************************************************/ | ||
/************************ Macros/Constants ************************************/ | ||
/******************************************************************************/ | ||
|
||
/******************************************************************************/ | ||
/******************** Variables and User Defined Data Types *******************/ | ||
/******************************************************************************/ | ||
|
||
/* UART init parameters for IIO comm port */ | ||
struct no_os_uart_init_param uart_iio_comm_init_params = { | ||
.device_id = UART_ID, | ||
.baud_rate = IIO_UART_BAUD_RATE, | ||
.size = NO_OS_UART_CS_8, | ||
.parity = NO_OS_UART_PAR_NO, | ||
.stop = NO_OS_UART_STOP_1_BIT, | ||
#if (ACTIVE_PLATFORM == STM32_PLATFORM) | ||
.asynchronous_rx = true, | ||
.irq_id = UART_IRQ_ID, | ||
#endif | ||
#if defined(USE_VIRTUAL_COM_PORT) | ||
.platform_ops = &vcom_ops, | ||
.extra = &vcom_extra_init_params | ||
#else | ||
.platform_ops = &uart_ops, | ||
.extra = &uart_extra_init_params | ||
#endif | ||
}; | ||
|
||
/* UART init parameters for console comm port */ | ||
struct no_os_uart_init_param uart_console_stdio_init_params = { | ||
.device_id = UART_ID, | ||
.baud_rate = IIO_UART_BAUD_RATE, | ||
.size = NO_OS_UART_CS_8, | ||
.parity = NO_OS_UART_PAR_NO, | ||
.stop = NO_OS_UART_STOP_1_BIT, | ||
#if defined(USE_VIRTUAL_COM_PORT) | ||
/* If virtual com port is primary IIO comm port, use physical port for stdio | ||
* console. Applications which does not support VCOM, should not satisfy this | ||
* condition */ | ||
.platform_ops = &uart_ops, | ||
.extra = &uart_extra_init_params | ||
#else | ||
#if defined(CONSOLE_STDIO_PORT_AVAILABLE) | ||
/* Applications which uses phy COM port as primary IIO comm port, | ||
* can use VCOM as console stdio port provided it is available. | ||
* Else, alternative phy com port can be used for console stdio ops if available */ | ||
.platform_ops = &vcom_ops, | ||
.extra = &vcom_extra_init_params | ||
#endif | ||
#endif | ||
}; | ||
|
||
/* UART IIO Descriptor */ | ||
struct no_os_uart_desc *uart_iio_com_desc; | ||
|
||
/* UART console descriptor */ | ||
struct no_os_uart_desc *uart_console_stdio_desc; | ||
|
||
/******************************************************************************/ | ||
/************************** Functions Declarations ****************************/ | ||
/******************************************************************************/ | ||
|
||
/******************************************************************************/ | ||
/************************** Functions Definitions *****************************/ | ||
/******************************************************************************/ | ||
|
||
/** | ||
* @brief Initialize the UART peripheral | ||
* @return 0 in case of success, negative error code otherwise | ||
*/ | ||
static int32_t init_uart(void) | ||
{ | ||
int32_t ret; | ||
|
||
ret = no_os_uart_init(&uart_iio_com_desc, &uart_iio_comm_init_params); | ||
if (ret) { | ||
return ret; | ||
} | ||
|
||
#if defined(CONSOLE_STDIO_PORT_AVAILABLE) | ||
/* Initialize the serial link for console stdio communication */ | ||
ret = no_os_uart_init(&uart_console_stdio_desc, | ||
&uart_console_stdio_init_params); | ||
if (ret) { | ||
return ret; | ||
} | ||
#endif | ||
|
||
return 0; | ||
} | ||
|
||
/** | ||
* @brief Initialize the system peripherals | ||
* @return 0 in case of success, negative error code otherwise | ||
*/ | ||
int32_t init_system(void) | ||
{ | ||
int32_t ret; | ||
|
||
#if (ACTIVE_PLATFORM == STM32_PLATFORM) | ||
stm32_system_init(); | ||
#endif | ||
|
||
ret = init_uart(); | ||
if (ret) { | ||
return ret; | ||
} | ||
|
||
#if defined(USE_SDRAM) | ||
ret = sdram_init(); | ||
if (ret) { | ||
return ret; | ||
} | ||
#endif | ||
|
||
return 0; | ||
} |
Oops, something went wrong.