-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This creates a stm32 porject for the ad400x series Signed-off-by: Axel Haslam <ahaslam@baylibre.com>
- Loading branch information
Showing
17 changed files
with
903 additions
and
0 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
.. include:: ../../../../projects/ad400x-st/README.rst |
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 |
---|---|---|
|
@@ -49,6 +49,7 @@ ADC | |
:maxdepth: 1 | ||
|
||
projects/ad7616-st | ||
projects/ad400x-st | ||
|
||
POWER MANAGEMENT | ||
================ | ||
|
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,8 @@ | ||
# Select the example you want to enable by chossing y for enabling and n for disabling | ||
IIO_EXAMPLE = y | ||
|
||
include ../../tools/scripts/generic_variables.mk | ||
|
||
include src.mk | ||
|
||
include ../../tools/scripts/generic.mk |
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,104 @@ | ||
Evaluating AD400x on SDP-K1 | ||
=========================== | ||
|
||
Contents | ||
-------- | ||
|
||
.. contents:: Table of Contents | ||
:depth: 3 | ||
|
||
Supported Evaluation Boards | ||
--------------------------- | ||
|
||
* `AD400x <https://www.analog.com/en/resources/evaluation-hardware-and-software/evaluation-boards-kits/EVAL-AD400x-FMCZ.html>`_ | ||
|
||
Overview | ||
-------- | ||
|
||
Features and Benefits | ||
|
||
Product Details | ||
The AD4000/AD4001/AD4002/AD4003/AD4020 family of evaluation boards enable quick, | ||
simplified evaluation of the AD4000 family of 16-/18-/20-bit, precision | ||
successive approx-imation register (SAR) analog-to-digital converters (ADCs). | ||
|
||
The AD4000/AD4001/AD4002/AD4003/AD4020 are low power, 16-bit/18-bit/20-bit, | ||
precision SAR ADCs that offer high performance with throughputs up to 2 MSPS | ||
(1.8 MSPS for the AD4020). The evaluation board demonstrates the performance | ||
of the AD4000/AD4001/AD4002/AD4003/AD4020 family of ADCs and provides a | ||
simplified interface for a variety of system applications. | ||
|
||
Applications | ||
------------ | ||
|
||
* Industrial Automation Technology | ||
* Instrumentation and Measurement Solutions | ||
* Intelligent Building Solutions | ||
* Healthcare Solutions | ||
* Aerospace and Defense Systems | ||
* Wireless Communication Solutions | ||
|
||
Hardware Specifications | ||
----------------------- | ||
|
||
|
||
No-OS Build Setup | ||
----------------- | ||
|
||
Please see: https://wiki.analog.com/resources/no-os/build | ||
|
||
No-OS Supported Examples | ||
------------------------ | ||
|
||
IIO example | ||
^^^^^^^^^^^ | ||
|
||
This project is actually a IIOD demo for EVAL-AD400X device. | ||
The project launches a IIOD server on the board so that the user may connect | ||
to it via an IIO client. | ||
Using IIO-Oscilloscope, the user can configure the ADC and view the measured data | ||
on a plot. | ||
|
||
If you are not familiar with ADI IIO Application, please take a look at: | ||
`IIO No-OS <https://wiki.analog.com/resources/tools-software/no-os-software/iio>`_ | ||
|
||
If you are not familiar with ADI IIO-Oscilloscope Client, please take a look at: | ||
`IIO Oscilloscope <https://wiki.analog.com/resources/tools-software/linux-software/iio_oscilloscope>`_ | ||
|
||
The No-OS IIO Application together with the No-OS IIO AD400X driver take care of | ||
all the back-end logic needed to setup the IIO server. | ||
|
||
The read buffer is used for storing the burst data which shall be retrieved | ||
by any LibIIO client. | ||
|
||
No-OS Supported Platforms | ||
------------------------- | ||
|
||
STM32 Platform | ||
^^^^^^^^^^^^^^ | ||
|
||
**Used hardware**: | ||
* Arduinio-FMC interposer | ||
* `EVAL-AD7616 <https://www.analog.com/en/design-center/evaluation-hardware-and-software/evaluation-boards-kits/EVAL-AD7616.html>`_ with | ||
* `SDP-K1 <https://www.analog.com/en/design-center/evaluation-hardware-and-software/evaluation-boards-kits/sdp-k1.html>`_ and | ||
* ST debugger | ||
|
||
interposer jumper settings: | ||
SPI_MOSI = 02P | ||
SPI_MOSO = 01P | ||
SPI_CLK = 00P | ||
SPI_CS = 00N | ||
|
||
|
||
**Build Command** | ||
|
||
.. code-block:: bash | ||
# to delete current build | ||
make reset | ||
# to build the project | ||
make | ||
# to flash the code | ||
make run | ||
# to debug the code | ||
make debug |
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,7 @@ | ||
{ | ||
"stm32": { | ||
"iio_example": { | ||
"flags" : "IIO_EXAMPLE=y HARDWARE=sdp-ck1z.ioc" | ||
} | ||
} | ||
} |
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,158 @@ | ||
#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=NVIC | ||
Mcu.IP1=RCC | ||
Mcu.IP2=SPI1 | ||
Mcu.IP3=SYS | ||
Mcu.IP4=UART5 | ||
Mcu.IPNb=5 | ||
Mcu.Name=STM32F469NIHx | ||
Mcu.Package=TFBGA216 | ||
Mcu.Pin0=PB4 | ||
Mcu.Pin1=PB3 | ||
Mcu.Pin2=PC12 | ||
Mcu.Pin3=PA15 | ||
Mcu.Pin4=PD2 | ||
Mcu.Pin5=PH0/OSC_IN | ||
Mcu.Pin6=PH1/OSC_OUT | ||
Mcu.Pin7=PA7 | ||
Mcu.Pin8=VP_SYS_VS_Systick | ||
Mcu.PinsNb=9 | ||
Mcu.ThirdPartyNb=0 | ||
Mcu.UserConstants= | ||
Mcu.UserName=STM32F469NIHx | ||
MxCube.Version=6.5.0 | ||
MxDb.Version=DB.6.0.50 | ||
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.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\:0\:0\:false\:false\:true\:false\:true\:false | ||
NVIC.UART5_IRQn=true\:0\:0\:false\:false\:true\:true\:true\:true | ||
NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false | ||
PA15.GPIOParameters=GPIO_Speed,GPIO_Label | ||
PA15.GPIO_Label=SPI1_CS | ||
PA15.GPIO_Speed=GPIO_SPEED_FREQ_VERY_HIGH | ||
PA15.Locked=true | ||
PA15.Signal=GPIO_Output | ||
PA7.Locked=true | ||
PA7.Mode=Full_Duplex_Master | ||
PA7.Signal=SPI1_MOSI | ||
PB3.GPIOParameters=GPIO_PuPd | ||
PB3.GPIO_PuPd=GPIO_PULLUP | ||
PB3.Locked=true | ||
PB3.Mode=Full_Duplex_Master | ||
PB3.Signal=SPI1_SCK | ||
PB4.Locked=true | ||
PB4.Mode=Full_Duplex_Master | ||
PB4.Signal=SPI1_MISO | ||
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=false | ||
ProjectManager.PreviousToolchain= | ||
ProjectManager.ProjectBuild=false | ||
ProjectManager.ProjectFileName=sdp-ck1z.ioc | ||
ProjectManager.ProjectName=sdp-ck1z | ||
ProjectManager.ProjectStructure= | ||
ProjectManager.RegisterCallBack= | ||
ProjectManager.StackSize=0x400 | ||
ProjectManager.TargetToolchain=STM32CubeIDE | ||
ProjectManager.ToolChainLocation= | ||
ProjectManager.UAScriptAfterPath= | ||
ProjectManager.UAScriptBeforePath= | ||
ProjectManager.UnderRoot=true | ||
ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-SystemClock_Config-RCC-false-HAL-false,3-MX_UART5_Init-UART5-false-HAL-true,4-MX_SPI1_Init-SPI1-false-HAL-true | ||
RCC.AHBFreq_Value=180000000 | ||
RCC.APB1CLKDivider=RCC_HCLK_DIV4 | ||
RCC.APB1Freq_Value=45000000 | ||
RCC.APB1TimFreq_Value=90000000 | ||
RCC.APB2CLKDivider=RCC_HCLK_DIV2 | ||
RCC.APB2Freq_Value=90000000 | ||
RCC.APB2TimFreq_Value=180000000 | ||
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.HSICalibrationValue=16 | ||
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,HSICalibrationValue,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.BaudRatePrescaler=SPI_BAUDRATEPRESCALER_2 | ||
SPI1.CalculateBaudRate=45.0 MBits/s | ||
SPI1.Direction=SPI_DIRECTION_2LINES | ||
SPI1.IPParameters=VirtualType,Mode,Direction,CalculateBaudRate,BaudRatePrescaler | ||
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,49 @@ | ||
include $(PROJECT)/src/platform/$(PLATFORM)/platform_src.mk | ||
include $(PROJECT)/src/examples/examples_src.mk | ||
|
||
SRCS += $(PROJECT)/src/platform/$(PLATFORM)/main.c | ||
|
||
INCS += $(PROJECT)/src/common/common_data.h | ||
SRCS += $(PROJECT)/src/common/common_data.c | ||
|
||
INCS += $(PROJECT)/src/platform/platform_includes.h | ||
|
||
INCS += $(PROJECT)/src/platform/$(PLATFORM)/parameters.h | ||
SRCS += $(PROJECT)/src/platform/$(PLATFORM)/parameters.c | ||
|
||
INCS += $(INCLUDE)/no_os_delay.h \ | ||
$(INCLUDE)/no_os_error.h \ | ||
$(INCLUDE)/no_os_gpio.h \ | ||
$(INCLUDE)/no_os_i2c.h \ | ||
$(INCLUDE)/no_os_print_log.h \ | ||
$(INCLUDE)/no_os_spi.h \ | ||
$(INCLUDE)/no_os_irq.h \ | ||
$(INCLUDE)/no_os_list.h \ | ||
$(INCLUDE)/no_os_timer.h \ | ||
$(INCLUDE)/no_os_uart.h \ | ||
$(INCLUDE)/no_os_lf256fifo.h \ | ||
$(INCLUDE)/no_os_util.h \ | ||
$(INCLUDE)/no_os_units.h \ | ||
$(INCLUDE)/no_os_init.h \ | ||
$(INCLUDE)/no_os_crc8.h \ | ||
$(INCLUDE)/no_os_alloc.h \ | ||
$(INCLUDE)/no_os_mutex.h \ | ||
$(INCLUDE)/no_os_circular_buffer.h | ||
|
||
SRCS += $(DRIVERS)/api/no_os_gpio.c \ | ||
$(DRIVERS)/api/no_os_i2c.c \ | ||
$(NO-OS)/util/no_os_lf256fifo.c \ | ||
$(DRIVERS)/api/no_os_irq.c \ | ||
$(DRIVERS)/api/no_os_spi.c \ | ||
$(DRIVERS)/api/no_os_timer.c \ | ||
$(DRIVERS)/api/no_os_uart.c \ | ||
$(NO-OS)/util/no_os_list.c \ | ||
$(NO-OS)/util/no_os_util.c \ | ||
$(NO-OS)/util/no_os_crc8.c \ | ||
$(NO-OS)/util/no_os_alloc.c \ | ||
$(NO-OS)/util/no_os_mutex.c \ | ||
$(NO-OS)/util/no_os_circular_buffer.c | ||
|
||
INCS += $(DRIVERS)/adc/ad400x/ad400x.h | ||
|
||
SRCS += $(DRIVERS)/adc/ad400x/ad400x.c |
Oops, something went wrong.