Updated code

This commit is contained in:
anschrammh 2021-04-05 18:53:38 +02:00
commit 942211e658
6 changed files with 436 additions and 436 deletions

View File

@ -1,52 +1,27 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project>
<configuration id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.1734730285" name="Debug">
<extension point="org.eclipse.cdt.core.LanguageSettingsProvider">
<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
<provider copy-of="extension" id="org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser"/>
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="1301565918156289289" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<language-scope id="org.eclipse.cdt.core.gcc"/>
<language-scope id="org.eclipse.cdt.core.g++"/>
</provider>
</extension>
</configuration>
<configuration id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.release.1361769994" name="Release">
<extension point="org.eclipse.cdt.core.LanguageSettingsProvider">
<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
<provider copy-of="extension" id="org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser"/>
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="1301565918156289289" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<language-scope id="org.eclipse.cdt.core.gcc"/>
<language-scope id="org.eclipse.cdt.core.g++"/>
</provider>
</extension>
</configuration>
<configuration id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.1734730285" name="Debug">
<extension point="org.eclipse.cdt.core.LanguageSettingsProvider">
<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
<provider copy-of="extension" id="org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser"/>
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-93366929328412182" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<language-scope id="org.eclipse.cdt.core.gcc"/>
<language-scope id="org.eclipse.cdt.core.g++"/>
</provider>
</extension>
</configuration>
<configuration id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.release.1361769994" name="Release">
<extension point="org.eclipse.cdt.core.LanguageSettingsProvider">
<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
<provider copy-of="extension" id="org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser"/>
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-93366929328412182" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<language-scope id="org.eclipse.cdt.core.gcc"/>
<language-scope id="org.eclipse.cdt.core.g++"/>
</provider>
</extension>
</configuration>
</project>

View File

@ -1,381 +1,379 @@
#MicroXplorer Configuration settings - do not modify
Mcu.Family=STM32F4
PC3.Mode=Half_Duplex_Master
SH.GPXTI1.0=GPIO_EXTI1
ProjectManager.MainLocation=Core/Src
PD12.GPIO_Label=LD4 [Green Led]
PA6.Mode=Full_Duplex_Master
PC7.GPIOParameters=GPIO_Speed,GPIO_PuPd,GPIO_Label,GPIO_Mode
USART2.IPParameters=VirtualMode
RCC.CortexFreq_Value=84000000
PC10.GPIO_PuPd=GPIO_NOPULL
ProjectManager.KeepUserCode=true
Mcu.UserName=STM32F401VCTx
SPI1.VirtualType=VM_MASTER
PB6.GPIO_Mode=GPIO_MODE_AF_OD
PB10.Mode=Half_Duplex_Master
PC12.Locked=true
PC10.Locked=true
PD15.GPIO_Speed=GPIO_SPEED_FREQ_LOW
RCC.PLLCLKFreq_Value=84000000
PC10.Signal=I2S3_CK
PC12.Signal=I2S3_SD
PA14.GPIO_Label=SWCLK
RCC.PLLQCLKFreq_Value=48000000
PC7.Locked=true
I2S3.IPParameters=AudioFreq,RealAudioFreq,ErrorAudioFreq,Instance,VirtualMode,FullDuplexMode
PA12.GPIOParameters=GPIO_Label
ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-SystemClock_Config-RCC-false-HAL-false,3-MX_I2C1_Init-I2C1-false-HAL-true,4-MX_I2S2_Init-I2S2-false-HAL-true,5-MX_I2S3_Init-I2S3-false-HAL-true,6-MX_SPI1_Init-SPI1-false-HAL-true,7-MX_USB_HOST_Init-USB_HOST-false-HAL-false,8-MX_USART2_UART_Init-USART2-false-HAL-true
PC0.GPIOParameters=PinState,GPIO_Label
PA9.GPIOParameters=GPIO_Label
PA11.GPIOParameters=GPIO_Label
USB_HOST0.BSP.condition=
PC0.GPIO_Label=OTG_FS_PowerSwitchOn
PC3.Locked=true
PA11.Mode=Host_Only
RCC.RTCFreq_Value=32000
PA6.GPIO_Label=SPI1_MISO [L3GD20_AS0/SDO]
PB6.GPIO_Label=Audio_SCL [CS43L22_SCL]
PC10.GPIO_Speed=GPIO_SPEED_FREQ_LOW
PD4.Locked=true
PC15-OSC32_OUT.GPIO_Label=PC15-OSC32_OUT
PinOutPanel.RotationAngle=0
PE5.GPIOParameters=GPIO_ModeDefaultEXTI
RCC.SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK
ProjectManager.StackSize=0x400
PD13.Signal=GPIO_Output
Mcu.IP4=RCC
RCC.FCLKCortexFreq_Value=84000000
Mcu.IP5=SPI1
PD13.Locked=true
Mcu.IP2=I2S3
NVIC.SVCall_IRQn=true\:0\:0\:false\:false\:true\:true\:false
Mcu.IP3=NVIC
PD14.GPIO_Speed=GPIO_SPEED_FREQ_LOW
Mcu.IP0=I2C1
PA12.Locked=true
Mcu.IP1=I2S2
PA12.Signal=USB_OTG_FS_DP
PE4.GPIOParameters=GPIO_ModeDefaultEXTI
Mcu.UserConstants=
PD15.GPIOParameters=GPIO_Speed,GPIO_PuPd,GPIO_Label
PH0\ -\ OSC_IN.Signal=RCC_OSC_IN
PA4.Mode=Half_Duplex_Master
PH0\ -\ OSC_IN.Locked=true
Mcu.ThirdPartyNb=0
SPI1.Direction=SPI_DIRECTION_2LINES
RCC.HCLKFreq_Value=84000000
Mcu.IPNb=10
RCC.I2SClocksFreq_Value=96000000
ProjectManager.PreviousToolchain=
PD4.Signal=GPIO_Output
RCC.APB2TimFreq_Value=84000000
PB6.Signal=I2C1_SCL
RCC.VcooutputI2S=96000000
PC7.Signal=I2S3_MCK
USB_HOST0.BSP.component=
PB6.Mode=I2C
SPI1.CalculateBaudRate=42.0 MBits/s
PC3.Signal=I2S2_SD
Mcu.Pin6=PH0 - OSC_IN
Mcu.Pin7=PH1 - OSC_OUT
PE5.Signal=GPXTI5
Mcu.Pin8=PC0
Mcu.Pin9=PC3
PE1.Signal=GPXTI1
USB_HOST0.BSP.ip=GPIO
RCC.AHBFreq_Value=84000000
Mcu.Pin0=PE2
Mcu.Pin1=PE3
Mcu.Pin2=PE4
Mcu.Pin3=PE5
Mcu.Pin4=PC14-OSC32_IN
PA0-WKUP.GPIOParameters=GPIO_Label,GPIO_ModeDefaultEXTI
Mcu.Pin5=PC15-OSC32_OUT
ProjectManager.ProjectBuild=false
RCC.HSE_VALUE=8000000
NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true\:true\:false
NVIC.DebugMonitor_IRQn=true\:0\:0\:false\:false\:true\:true\:false
USB_OTG_FS.phy_itface=HCD_PHY_EMBEDDED
PA4.GPIO_PuPd=GPIO_NOPULL
PA4.Locked=true
NVIC.SysTick_IRQn=true\:0\:0\:false\:false\:true\:true\:true
PA4.GPIO_Speed=GPIO_SPEED_FREQ_LOW
ProjectManager.FirmwarePackage=STM32Cube FW_F4 V1.25.2
MxDb.Version=DB.6.0.10
I2S3.ErrorAudioFreq=-2.34 %
ProjectManager.BackupPrevious=false
PC14-OSC32_IN.Mode=LSE-External-Oscillator
RCC.VCOInputFreq_Value=1000000
PA14.Mode=Serial_Wire
File.Version=6
PA10.GPIO_Label=OTG_FS_ID
PC7.GPIO_Mode=GPIO_MODE_AF_PP
PE3.GPIOParameters=GPIO_Label
PB3.GPIOParameters=GPIO_Label
PE2.Signal=GPIO_Input
PE3.Locked=true
I2S2.IPParameters=RealAudioFreq,ErrorAudioFreq,Instance,VirtualMode,FullDuplexMode
PD14.GPIO_PuPd=GPIO_NOPULL
PE1.Locked=true
PB6.Locked=true
NVIC.PendSV_IRQn=true\:0\:0\:false\:false\:true\:true\:false
USB_HOST0.BSP.i2creg=0
PE4.Signal=GPXTI4
PB6.GPIOParameters=GPIO_Speed,GPIO_PuPd,GPIO_Label,GPIO_Mode
ProjectManager.HalAssertFull=false
PC14-OSC32_IN.GPIOParameters=GPIO_Label
ProjectManager.ProjectName=AudioDAC
PH0\ -\ OSC_IN.GPIOParameters=GPIO_Label
PA13.GPIOParameters=GPIO_Label
RCC.MCO2PinFreq_Value=84000000
USB_HOST0.BSP.i2caddr=0
PD13.GPIO_Label=LD3 [Orange Led]
Mcu.Package=LQFP100
PB9.Signal=I2C1_SDA
PA6.Signal=SPI1_MISO
PB12.Mode=Half_Duplex_Master
PA7.Locked=true
PA5.Locked=true
USART2.VirtualMode=VM_ASYNC
PD12.Signal=GPIO_Output
PA14.Locked=true
PD5.GPIO_Label=OTG_FS_OverCurrent
PD5.GPIOParameters=GPIO_Label
NVIC.OTG_FS_IRQn=true\:0\:0\:false\:false\:true\:true\:true
ProjectManager.ToolChainLocation=
PD15.GPIO_PuPd=GPIO_NOPULL
PD14.Locked=true
RCC.LSI_VALUE=32000
SH.GPXTI0.0=GPIO_EXTI0
VP_SYS_VS_Systick.Signal=SYS_VS_Systick
SH.GPXTI5.ConfNb=1
PA10.Signal=USB_OTG_FS_ID
PB9.GPIO_PuPd=GPIO_NOPULL
USB_OTG_FS.VirtualMode=Host_Only
PA5.GPIOParameters=GPIO_Label
USB_HOST0.BSP.name=Drive_VBUS_FS
PB9.GPIO_Speed=GPIO_SPEED_FREQ_LOW
RCC.APB1TimFreq_Value=84000000
NVIC.BusFault_IRQn=true\:0\:0\:false\:false\:true\:true\:false
PC14-OSC32_IN.GPIO_Label=PC14-OSC32_IN
USB_OTG_FS.IPParameters=phy_itface,VirtualMode
PB10.GPIOParameters=GPIO_Label
PC12.GPIO_PuPd=GPIO_NOPULL
PC15-OSC32_OUT.GPIOParameters=GPIO_Label
PD5.Locked=true
PA4.GPIO_Label=I2S3_WS [CS43L22_LRCK]
PD15.Signal=GPIO_Output
ProjectManager.CustomerFirmwarePackage=
PC0.PinState=GPIO_PIN_SET
PC14-OSC32_IN.Locked=true
PB3.Locked=true
PA3.Signal=USART2_RX
PA5.Mode=Full_Duplex_Master
PB3.GPIO_Label=SWO
PA6.GPIOParameters=GPIO_Label
PC15-OSC32_OUT.Mode=LSE-External-Oscillator
USB_HOST.IPParameters=VirtualModeFS,USBH_HandleTypeDef
SH.GPXTI5.0=GPIO_EXTI5
I2S3.FullDuplexMode=I2S_FULLDUPLEXMODE_DISABLE
ProjectManager.ProjectFileName=AudioDAC.ioc
PD12.GPIO_Speed=GPIO_SPEED_FREQ_LOW
PD15.GPIO_Label=LD6 [Blue Led]
PA7.Mode=Full_Duplex_Master
I2S2.Instance=SPI$Index
PB9.GPIO_Label=Audio_SDA [CS43L22_SDA]
PC10.GPIO_Label=I2S3_SCK [CS43L22_SCLK]
Mcu.PinsNb=40
ProjectManager.NoMain=false
SPI1.IPParameters=Mode,CalculateBaudRate,VirtualType,Direction
PA9.GPIO_Label=VBUS_FS
PB6.GPIO_PuPd=GPIO_NOPULL
PH1\ -\ OSC_OUT.Mode=HSE-External-Oscillator
USB_HOST0.BSP.solution=PC0
PC10.Mode=Half_Duplex_Master
USB_HOST.BSP.number=1
PE4.GPIO_ModeDefaultEXTI=GPIO_MODE_EVT_RISING
PD13.GPIOParameters=GPIO_Speed,GPIO_PuPd,GPIO_Label
SH.GPXTI0.ConfNb=1
PA11.GPIO_Label=OTG_FS_DM
ProjectManager.DefaultFWLocation=true
PD5.Signal=GPIO_Input
PB12.Locked=true
ProjectManager.DeletePrevious=true
PC0.Signal=GPIO_Output
PE1.GPIO_ModeDefaultEXTI=GPIO_MODE_EVT_RISING
RCC.APB1CLKDivider=RCC_HCLK_DIV2
PC14-OSC32_IN.Signal=RCC_OSC32_IN
PB10.Locked=true
boardIOC=true
PH1\ -\ OSC_OUT.Locked=true
PA0-WKUP.GPIO_ModeDefaultEXTI=GPIO_MODE_EVT_RISING
PA12.GPIO_Label=OTG_FS_DP
PA0-WKUP.GPIO_Label=B1 [Blue PushButton]
PA0-WKUP.Signal=GPXTI0
PA0-WKUP.Locked=true
PB9.GPIOParameters=GPIO_Speed,GPIO_PuPd,GPIO_Label,GPIO_Mode
USB_HOST0.BSP.semaphore=
PD12.Locked=true
PC3.GPIOParameters=GPIO_Label
USB_HOST0.BSP.STBoard=false
PC12.GPIOParameters=GPIO_Speed,GPIO_PuPd,GPIO_Label,GPIO_Mode
PA3.Mode=Asynchronous
PA13.Signal=SYS_JTMS-SWDIO
PC10.GPIO_Mode=GPIO_MODE_AF_PP
PA11.Locked=true
PA9.Mode=Activate_VBUS
PH0\ -\ OSC_IN.Mode=HSE-External-Oscillator
PC15-OSC32_OUT.Locked=true
PD12.GPIOParameters=GPIO_Speed,GPIO_PuPd,GPIO_Label
ProjectManager.TargetToolchain=STM32CubeIDE
PE5.GPIO_ModeDefaultEXTI=GPIO_MODE_EVT_RISING
PB10.GPIO_Label=CLK_IN [MP45DT02_CLK]
PB9.Mode=I2C
PA9.Signal=USB_OTG_FS_VBUS
I2S2.VirtualMode=I2S_MODE_MASTER
PE4.Locked=true
PB9.Locked=true
I2S3.VirtualMode=I2S_MODE_MASTER
ProjectManager.RegisterCallBack=
PC7.GPIO_PuPd=GPIO_NOPULL
PC15-OSC32_OUT.Signal=RCC_OSC32_OUT
PB10.Signal=I2S2_CK
RCC.VCOI2SOutputFreq_Value=192000000
PA5.Signal=SPI1_SCK
I2S3.AudioFreq=I2S_AUDIOFREQ_96K
PC12.Mode=Half_Duplex_Master
PH1\ -\ OSC_OUT.Signal=RCC_OSC_OUT
board=STM32F401C-DISCO
PD13.GPIO_Speed=GPIO_SPEED_FREQ_LOW
PC7.GPIO_Speed=GPIO_SPEED_FREQ_LOW
RCC.VCOOutputFreq_Value=336000000
PE1.GPIO_Label=MEMS_INT2 [L3GD20_INT2]
ProjectManager.LastFirmware=true
USB_HOST.VirtualModeFS=Cdc
PB9.GPIO_Mode=GPIO_MODE_AF_OD
PA4.GPIO_Mode=GPIO_MODE_AF_PP
RCC.APB2Freq_Value=84000000
USB_HOST0.BSP.api=Unknown
MxCube.Version=6.1.1
Mcu.Pin37=PE1
Mcu.Pin38=VP_SYS_VS_Systick
Mcu.Pin35=PB6
Mcu.Pin36=PB9
SPI1.Mode=SPI_MODE_MASTER
PD4.GPIO_Label=Audio_RST [CS43L22_RESET]
Mcu.Pin39=VP_USB_HOST_VS_USB_HOST_CDC_FS
Mcu.Pin30=PC10
PA10.GPIOParameters=GPIO_Label
PD4.GPIOParameters=GPIO_Label
VP_SYS_VS_Systick.Mode=SysTick
Mcu.Pin33=PD5
Mcu.Pin34=PB3
Mcu.Pin31=PC12
PD13.GPIO_PuPd=GPIO_NOPULL
Mcu.Pin32=PD4
PA9.Locked=true
NVIC.NonMaskableInt_IRQn=true\:0\:0\:false\:false\:true\:true\:false
PD14.GPIO_Label=LD5 [Red Led]
PA4.GPIOParameters=GPIO_Speed,GPIO_PuPd,GPIO_Label,GPIO_Mode
PE5.Locked=true
PC10.GPIOParameters=GPIO_Speed,GPIO_PuPd,GPIO_Label,GPIO_Mode
PH1\ -\ OSC_OUT.GPIOParameters=GPIO_Label
PA13.Mode=Serial_Wire
ProjectManager.FreePins=false
RCC.IPParameters=AHBFreq_Value,APB1CLKDivider,APB1Freq_Value,APB1TimFreq_Value,APB2Freq_Value,APB2TimFreq_Value,CortexFreq_Value,FCLKCortexFreq_Value,HCLKFreq_Value,HSE_VALUE,HSI_VALUE,I2SClocksFreq_Value,LSI_VALUE,MCO2PinFreq_Value,PLLCLKFreq_Value,PLLM,PLLN,PLLP,PLLQ,PLLQCLKFreq_Value,RTCFreq_Value,RTCHSEDivFreq_Value,SYSCLKFreq_VALUE,SYSCLKSource,VCOI2SOutputFreq_Value,VCOInputFreq_Value,VCOOutputFreq_Value,VcooutputI2S
ProjectManager.AskForMigrate=true
Mcu.Name=STM32F401V(B-C)Tx
Mcu.Pin26=PA11
Mcu.Pin27=PA12
RCC.RTCHSEDivFreq_Value=4000000
PA2.Signal=USART2_TX
Mcu.Pin24=PA9
PA13.GPIO_Label=SWDIO
ProjectManager.UnderRoot=true
Mcu.Pin25=PA10
I2S2.AudioFreq=I2S_AUDIOFREQ_96K
I2S2.ErrorAudioFreq=-2.34 %
I2S2.FullDuplexMode=I2S_FULLDUPLEXMODE_DISABLE
I2S2.IPParameters=RealAudioFreq,ErrorAudioFreq,Instance,VirtualMode,FullDuplexMode,AudioFreq
I2S2.Instance=SPI$Index
I2S2.RealAudioFreq=93.75 KHz
I2S2.VirtualMode=I2S_MODE_MASTER
I2S3.AudioFreq=I2S_AUDIOFREQ_96K
I2S3.ErrorAudioFreq=-2.34 %
I2S3.FullDuplexMode=I2S_FULLDUPLEXMODE_DISABLE
I2S3.IPParameters=Instance,VirtualMode,FullDuplexMode,RealAudioFreq,ErrorAudioFreq,AudioFreq
I2S3.Instance=SPI$Index
I2S3.RealAudioFreq=93.75 KHz
I2S3.VirtualMode=I2S_MODE_MASTER
KeepUserPlacement=false
Mcu.Family=STM32F4
Mcu.IP0=I2C1
Mcu.IP1=I2S2
Mcu.IP2=I2S3
Mcu.IP3=NVIC
Mcu.IP4=RCC
Mcu.IP5=SPI1
Mcu.IP6=SYS
Mcu.IP7=USART2
Mcu.IP8=USB_HOST
Mcu.IP9=USB_OTG_FS
PC7.GPIO_Label=I2S3_MCK [CS43L22_MCLK]
PD14.Signal=GPIO_Output
PH1\ -\ OSC_OUT.GPIO_Label=PH1-OSC_OUT
Mcu.Pin28=PA13
Mcu.IP6=SYS
Mcu.Pin29=PA14
Mcu.IP7=USART2
ProjectManager.CoupleFile=false
PB3.Signal=SYS_JTDO-SWO
PA4.Signal=I2S3_WS
PD14.GPIOParameters=GPIO_Speed,GPIO_PuPd,GPIO_Label
RCC.SYSCLKFreq_VALUE=84000000
Mcu.Pin22=PD15
PC12.GPIO_Mode=GPIO_MODE_AF_PP
Mcu.Pin23=PC7
VP_USB_HOST_VS_USB_HOST_CDC_FS.Signal=USB_HOST_VS_USB_HOST_CDC_FS
PA7.GPIO_Label=SPI1_MISO [L3GD20_SDA/SDI/SDO]
Mcu.IPNb=10
Mcu.Name=STM32F401V(B-C)Tx
Mcu.Package=LQFP100
Mcu.Pin0=PE2
Mcu.Pin1=PE3
Mcu.Pin10=PA0-WKUP
Mcu.Pin11=PA2
Mcu.Pin12=PA3
Mcu.Pin13=PA4
Mcu.Pin14=PA5
Mcu.Pin15=PA6
Mcu.Pin16=PA7
Mcu.Pin17=PB10
Mcu.Pin18=PB12
Mcu.Pin19=PD12
Mcu.Pin2=PE4
Mcu.Pin20=PD13
Mcu.Pin21=PD14
SH.GPXTI4.0=GPIO_EXTI4
PA12.Mode=Host_Only
PA5.GPIO_Label=SPI1_SCK [L3GD20_SC/SPC]
PA10.Locked=true
I2S2.ErrorAudioFreq=0.0 %
Mcu.Pin22=PD15
Mcu.Pin23=PC6
Mcu.Pin24=PC7
Mcu.Pin25=PA9
Mcu.Pin26=PA10
Mcu.Pin27=PA11
Mcu.Pin28=PA12
Mcu.Pin29=PA13
Mcu.Pin3=PE5
Mcu.Pin30=PA14
Mcu.Pin31=PC10
Mcu.Pin32=PC12
Mcu.Pin33=PD4
Mcu.Pin34=PD5
Mcu.Pin35=PB3
Mcu.Pin36=PB6
Mcu.Pin37=PB9
Mcu.Pin38=PE1
Mcu.Pin39=VP_SYS_VS_Systick
Mcu.Pin4=PC14-OSC32_IN
Mcu.Pin40=VP_USB_HOST_VS_USB_HOST_CDC_FS
Mcu.Pin5=PC15-OSC32_OUT
Mcu.Pin6=PH0 - OSC_IN
Mcu.Pin7=PH1 - OSC_OUT
Mcu.Pin8=PC0
Mcu.Pin9=PC3
Mcu.PinsNb=41
Mcu.ThirdPartyNb=0
Mcu.UserConstants=
Mcu.UserName=STM32F401VCTx
MxCube.Version=6.1.1
MxDb.Version=DB.6.0.10
NVIC.BusFault_IRQn=true\:0\:0\:false\:false\:true\:true\:false
NVIC.DebugMonitor_IRQn=true\:0\:0\:false\:false\:true\:true\:false
NVIC.ForceEnableDMAVector=true
KeepUserPlacement=false
VP_USB_HOST_VS_USB_HOST_CDC_FS.Mode=CDC_FS
PA14.GPIOParameters=GPIO_Label
NVIC.MemoryManagement_IRQn=true\:0\:0\:false\:false\:true\:true\:false
PA13.Locked=true
PC12.GPIO_Label=I2S3_SD [CS43L22_SDIN]
ProjectManager.CompilerOptimize=6
PD15.Locked=true
PA11.Signal=USB_OTG_FS_DM
PA14.Signal=SYS_JTCK-SWCLK
ProjectManager.HeapSize=0x200
Mcu.Pin15=PA6
NVIC.HardFault_IRQn=true\:0\:0\:false\:false\:true\:true\:false
Mcu.Pin16=PA7
Mcu.Pin13=PA4
SH.GPXTI4.ConfNb=1
Mcu.Pin14=PA5
Mcu.Pin19=PD12
ProjectManager.ComputerToolchain=false
Mcu.Pin17=PB10
RCC.HSI_VALUE=16000000
Mcu.Pin18=PB12
USB_HOST.USBH_HandleTypeDef=hUsbHostFS
RCC.PLLP=RCC_PLLP_DIV4
RCC.PLLQ=7
NVIC.MemoryManagement_IRQn=true\:0\:0\:false\:false\:true\:true\:false
NVIC.NonMaskableInt_IRQn=true\:0\:0\:false\:false\:true\:true\:false
NVIC.OTG_FS_IRQn=true\:0\:0\:false\:false\:true\:true\:true
NVIC.PendSV_IRQn=true\:0\:0\:false\:false\:true\:true\:false
NVIC.PriorityGroup=NVIC_PRIORITYGROUP_0
Mcu.Pin11=PA2
I2S3.RealAudioFreq=93.75 KHz
Mcu.Pin12=PA3
NVIC.SVCall_IRQn=true\:0\:0\:false\:false\:true\:true\:false
NVIC.SysTick_IRQn=true\:0\:0\:false\:false\:true\:true\:true
NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true\:true\:false
PA0-WKUP.GPIOParameters=GPIO_Label,GPIO_ModeDefaultEXTI
PA0-WKUP.GPIO_Label=B1 [Blue PushButton]
PA0-WKUP.GPIO_ModeDefaultEXTI=GPIO_MODE_EVT_RISING
PA0-WKUP.Locked=true
PA0-WKUP.Signal=GPXTI0
PA10.GPIOParameters=GPIO_Label
PA10.GPIO_Label=OTG_FS_ID
PA10.Locked=true
PA10.Signal=USB_OTG_FS_ID
PA11.GPIOParameters=GPIO_Label
PA11.GPIO_Label=OTG_FS_DM
PA11.Locked=true
PA11.Mode=Host_Only
PA11.Signal=USB_OTG_FS_DM
PA12.GPIOParameters=GPIO_Label
PA12.GPIO_Label=OTG_FS_DP
PA12.Locked=true
PA12.Mode=Host_Only
PA12.Signal=USB_OTG_FS_DP
PA13.GPIOParameters=GPIO_Label
PA13.GPIO_Label=SWDIO
PA13.Locked=true
PA13.Mode=Serial_Wire
PA13.Signal=SYS_JTMS-SWDIO
PA14.GPIOParameters=GPIO_Label
PA14.GPIO_Label=SWCLK
PA14.Locked=true
PA14.Mode=Serial_Wire
PA14.Signal=SYS_JTCK-SWCLK
PA2.Mode=Asynchronous
PA2.Signal=USART2_TX
PA3.Mode=Asynchronous
PA3.Signal=USART2_RX
PA4.Mode=Half_Duplex_Master
PA4.Signal=I2S3_WS
PA5.GPIOParameters=GPIO_Label
PA5.GPIO_Label=SPI1_SCK [L3GD20_SC/SPC]
PA5.Locked=true
PA5.Mode=Full_Duplex_Master
PA5.Signal=SPI1_SCK
PA6.GPIOParameters=GPIO_Label
PA6.GPIO_Label=SPI1_MISO [L3GD20_AS0/SDO]
PA6.Locked=true
PA6.Mode=Full_Duplex_Master
PA6.Signal=SPI1_MISO
PA7.GPIOParameters=GPIO_Label
PA7.GPIO_Label=SPI1_MISO [L3GD20_SDA/SDI/SDO]
PA7.Locked=true
PA7.Mode=Full_Duplex_Master
PA7.Signal=SPI1_MOSI
PA9.GPIOParameters=GPIO_Label
PA9.GPIO_Label=VBUS_FS
PA9.Locked=true
PA9.Mode=Activate_VBUS
PA9.Signal=USB_OTG_FS_VBUS
PB10.GPIOParameters=GPIO_Label
PB10.GPIO_Label=CLK_IN [MP45DT02_CLK]
PB10.Locked=true
PB10.Mode=Half_Duplex_Master
PB10.Signal=I2S2_CK
PB12.Locked=true
PB12.Mode=Half_Duplex_Master
PB12.Signal=I2S2_WS
PB3.GPIOParameters=GPIO_Label
PB3.GPIO_Label=SWO
PB3.Locked=true
PB3.Signal=SYS_JTDO-SWO
PB6.GPIOParameters=GPIO_Speed,GPIO_PuPd,GPIO_Label,GPIO_Mode
PB6.GPIO_Label=Audio_SCL [CS43L22_SCL]
PB6.GPIO_Mode=GPIO_MODE_AF_OD
PB6.GPIO_PuPd=GPIO_NOPULL
PB6.GPIO_Speed=GPIO_SPEED_FREQ_LOW
PB6.Locked=true
PB6.Mode=I2C
PB6.Signal=I2C1_SCL
PB9.GPIOParameters=GPIO_Speed,GPIO_PuPd,GPIO_Label,GPIO_Mode
PB9.GPIO_Label=Audio_SDA [CS43L22_SDA]
PB9.GPIO_Mode=GPIO_MODE_AF_OD
PB9.GPIO_PuPd=GPIO_NOPULL
PB9.GPIO_Speed=GPIO_SPEED_FREQ_LOW
PB9.Locked=true
PB9.Mode=I2C
PB9.Signal=I2C1_SDA
PC0.GPIOParameters=PinState,GPIO_Label
PC0.GPIO_Label=OTG_FS_PowerSwitchOn
PC0.Locked=true
PC0.PinState=GPIO_PIN_SET
PC0.Signal=GPIO_Output
PC10.GPIOParameters=GPIO_Speed,GPIO_PuPd,GPIO_Label,GPIO_Mode
PC10.GPIO_Label=I2S3_SCK [CS43L22_SCLK]
PC10.GPIO_Mode=GPIO_MODE_AF_PP
PC10.GPIO_PuPd=GPIO_NOPULL
PC10.GPIO_Speed=GPIO_SPEED_FREQ_LOW
PC10.Locked=true
PC10.Mode=Half_Duplex_Master
PC10.Signal=I2S3_CK
PC12.GPIOParameters=GPIO_Speed,GPIO_PuPd,GPIO_Label,GPIO_Mode
PC12.GPIO_Label=I2S3_SD [CS43L22_SDIN]
PC12.GPIO_Mode=GPIO_MODE_AF_PP
PC12.GPIO_PuPd=GPIO_NOPULL
PC12.GPIO_Speed=GPIO_SPEED_FREQ_LOW
PC12.Locked=true
PC12.Mode=Half_Duplex_Master
PC12.Signal=I2S3_SD
PC14-OSC32_IN.GPIOParameters=GPIO_Label
PC14-OSC32_IN.GPIO_Label=PC14-OSC32_IN
PC14-OSC32_IN.Locked=true
PC14-OSC32_IN.Mode=LSE-External-Oscillator
PC14-OSC32_IN.Signal=RCC_OSC32_IN
PC15-OSC32_OUT.GPIOParameters=GPIO_Label
PC15-OSC32_OUT.GPIO_Label=PC15-OSC32_OUT
PC15-OSC32_OUT.Locked=true
PC15-OSC32_OUT.Mode=LSE-External-Oscillator
PC15-OSC32_OUT.Signal=RCC_OSC32_OUT
PC3.GPIOParameters=GPIO_Label
PC3.GPIO_Label=PDM_OUT [MP45DT02_DOUT]
PC3.Locked=true
PC3.Mode=Half_Duplex_Master
PC3.Signal=I2S2_SD
PC6.Mode=Master_Clock_Activated
PC6.Signal=I2S2_MCK
PC7.GPIOParameters=GPIO_Speed,GPIO_PuPd,GPIO_Label,GPIO_Mode
PC7.GPIO_Label=I2S3_MCK [CS43L22_MCLK]
PC7.GPIO_Mode=GPIO_MODE_AF_PP
PC7.GPIO_PuPd=GPIO_NOPULL
PC7.GPIO_Speed=GPIO_SPEED_FREQ_LOW
PC7.Locked=true
PC7.Mode=Master_Clock_Activated
PC7.Signal=I2S3_MCK
PD12.GPIOParameters=GPIO_Speed,GPIO_PuPd,GPIO_Label
PD12.GPIO_Label=LD4 [Green Led]
PD12.GPIO_PuPd=GPIO_NOPULL
PD12.GPIO_Speed=GPIO_SPEED_FREQ_LOW
PD12.Locked=true
PD12.Signal=GPIO_Output
PD13.GPIOParameters=GPIO_Speed,GPIO_PuPd,GPIO_Label
PD13.GPIO_Label=LD3 [Orange Led]
PD13.GPIO_PuPd=GPIO_NOPULL
PD13.GPIO_Speed=GPIO_SPEED_FREQ_LOW
PD13.Locked=true
PD13.Signal=GPIO_Output
PD14.GPIOParameters=GPIO_Speed,GPIO_PuPd,GPIO_Label
PD14.GPIO_Label=LD5 [Red Led]
PD14.GPIO_PuPd=GPIO_NOPULL
PD14.GPIO_Speed=GPIO_SPEED_FREQ_LOW
PD14.Locked=true
PD14.Signal=GPIO_Output
PD15.GPIOParameters=GPIO_Speed,GPIO_PuPd,GPIO_Label
PD15.GPIO_Label=LD6 [Blue Led]
PD15.GPIO_PuPd=GPIO_NOPULL
PD15.GPIO_Speed=GPIO_SPEED_FREQ_LOW
PD15.Locked=true
PD15.Signal=GPIO_Output
PD4.GPIOParameters=GPIO_Label
PD4.GPIO_Label=Audio_RST [CS43L22_RESET]
PD4.Locked=true
PD4.Signal=GPIO_Output
PD5.GPIOParameters=GPIO_Label
PD5.GPIO_Label=OTG_FS_OverCurrent
PD5.Locked=true
PD5.Signal=GPIO_Input
PE1.GPIOParameters=GPIO_Label,GPIO_ModeDefaultEXTI
PE1.GPIO_Label=MEMS_INT2 [L3GD20_INT2]
PE1.GPIO_ModeDefaultEXTI=GPIO_MODE_EVT_RISING
PE1.Locked=true
PE1.Signal=GPXTI1
PE2.Locked=true
PE2.Signal=GPIO_Input
PE3.GPIOParameters=GPIO_Label
PE3.GPIO_Label=CS_I2C/SPI [L3GD20_CS_I2C/SPI]
PE3.Locked=true
PE3.Signal=GPIO_Output
PE4.GPIOParameters=GPIO_ModeDefaultEXTI
PE4.GPIO_ModeDefaultEXTI=GPIO_MODE_EVT_RISING
PE4.Locked=true
PE4.Signal=GPXTI4
PE5.GPIOParameters=GPIO_ModeDefaultEXTI
PE5.GPIO_ModeDefaultEXTI=GPIO_MODE_EVT_RISING
PE5.Locked=true
PE5.Signal=GPXTI5
PH0\ -\ OSC_IN.GPIOParameters=GPIO_Label
PH0\ -\ OSC_IN.GPIO_Label=PH0-OSC_IN
PH0\ -\ OSC_IN.Locked=true
PH0\ -\ OSC_IN.Mode=HSE-External-Oscillator
PH0\ -\ OSC_IN.Signal=RCC_OSC_IN
PH1\ -\ OSC_OUT.GPIOParameters=GPIO_Label
PH1\ -\ OSC_OUT.GPIO_Label=PH1-OSC_OUT
PH1\ -\ OSC_OUT.Locked=true
PH1\ -\ OSC_OUT.Mode=HSE-External-Oscillator
PH1\ -\ OSC_OUT.Signal=RCC_OSC_OUT
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=STM32F401VCTx
ProjectManager.FirmwarePackage=STM32Cube FW_F4 V1.25.2
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=AudioDAC.ioc
ProjectManager.ProjectName=AudioDAC
ProjectManager.RegisterCallBack=
ProjectManager.StackSize=0x400
ProjectManager.TargetToolchain=STM32CubeIDE
ProjectManager.ToolChainLocation=
ProjectManager.UnderRoot=true
ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-SystemClock_Config-RCC-false-HAL-false,3-MX_I2C1_Init-I2C1-false-HAL-true,4-MX_I2S2_Init-I2S2-false-HAL-true,5-MX_I2S3_Init-I2S3-false-HAL-true,6-MX_SPI1_Init-SPI1-false-HAL-true,7-MX_USB_HOST_Init-USB_HOST-false-HAL-false,8-MX_USART2_UART_Init-USART2-false-HAL-true
RCC.AHBFreq_Value=84000000
RCC.APB1CLKDivider=RCC_HCLK_DIV2
RCC.APB1Freq_Value=42000000
RCC.APB1TimFreq_Value=84000000
RCC.APB2Freq_Value=84000000
RCC.APB2TimFreq_Value=84000000
RCC.CortexFreq_Value=84000000
RCC.FCLKCortexFreq_Value=84000000
RCC.HCLKFreq_Value=84000000
RCC.HSE_VALUE=8000000
RCC.HSI_VALUE=16000000
RCC.I2SClocksFreq_Value=96000000
RCC.IPParameters=AHBFreq_Value,APB1CLKDivider,APB1Freq_Value,APB1TimFreq_Value,APB2Freq_Value,APB2TimFreq_Value,CortexFreq_Value,FCLKCortexFreq_Value,HCLKFreq_Value,HSE_VALUE,HSI_VALUE,I2SClocksFreq_Value,LSI_VALUE,MCO2PinFreq_Value,PLLCLKFreq_Value,PLLM,PLLN,PLLP,PLLQ,PLLQCLKFreq_Value,RTCFreq_Value,RTCHSEDivFreq_Value,SYSCLKFreq_VALUE,SYSCLKSource,VCOI2SOutputFreq_Value,VCOInputFreq_Value,VCOOutputFreq_Value,VcooutputI2S
RCC.LSI_VALUE=32000
RCC.MCO2PinFreq_Value=84000000
RCC.PLLCLKFreq_Value=84000000
RCC.PLLM=8
RCC.PLLN=336
Mcu.Pin10=PA0-WKUP
PE2.Locked=true
PE3.Signal=GPIO_Output
PA2.Mode=Asynchronous
PE3.GPIO_Label=CS_I2C/SPI [L3GD20_CS_I2C/SPI]
PC3.GPIO_Label=PDM_OUT [MP45DT02_DOUT]
PH0\ -\ OSC_IN.GPIO_Label=PH0-OSC_IN
I2S3.Instance=SPI$Index
PC7.Mode=Master_Clock_Activated
PB6.GPIO_Speed=GPIO_SPEED_FREQ_LOW
RCC.PLLP=RCC_PLLP_DIV4
RCC.PLLQ=7
RCC.PLLQCLKFreq_Value=48000000
RCC.RTCFreq_Value=32000
RCC.RTCHSEDivFreq_Value=4000000
RCC.SYSCLKFreq_VALUE=84000000
RCC.SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK
RCC.VCOI2SOutputFreq_Value=192000000
RCC.VCOInputFreq_Value=1000000
RCC.VCOOutputFreq_Value=336000000
RCC.VcooutputI2S=96000000
SH.GPXTI0.0=GPIO_EXTI0
SH.GPXTI0.ConfNb=1
SH.GPXTI1.0=GPIO_EXTI1
SH.GPXTI1.ConfNb=1
RCC.APB1Freq_Value=42000000
PC12.GPIO_Speed=GPIO_SPEED_FREQ_LOW
I2S2.RealAudioFreq=8.0 KHz
USB_HOST0.BSP.mode=Output
PA7.GPIOParameters=GPIO_Label
PC0.Locked=true
ProjectManager.DeviceId=STM32F401VCTx
PB12.Signal=I2S2_WS
ProjectManager.LibraryCopy=1
PD12.GPIO_PuPd=GPIO_NOPULL
PE1.GPIOParameters=GPIO_Label,GPIO_ModeDefaultEXTI
PA7.Signal=SPI1_MOSI
SH.GPXTI4.0=GPIO_EXTI4
SH.GPXTI4.ConfNb=1
SH.GPXTI5.0=GPIO_EXTI5
SH.GPXTI5.ConfNb=1
SPI1.CalculateBaudRate=42.0 MBits/s
SPI1.Direction=SPI_DIRECTION_2LINES
SPI1.IPParameters=Mode,CalculateBaudRate,VirtualType,Direction
SPI1.Mode=SPI_MODE_MASTER
SPI1.VirtualType=VM_MASTER
USART2.IPParameters=VirtualMode
USART2.VirtualMode=VM_ASYNC
USB_HOST.BSP.number=1
USB_HOST.IPParameters=VirtualModeFS,USBH_HandleTypeDef
USB_HOST.USBH_HandleTypeDef=hUsbHostFS
USB_HOST.VirtualModeFS=Cdc
USB_HOST0.BSP.STBoard=false
USB_HOST0.BSP.api=Unknown
USB_HOST0.BSP.component=
USB_HOST0.BSP.condition=
USB_HOST0.BSP.i2caddr=0
USB_HOST0.BSP.i2creg=0
USB_HOST0.BSP.instance=PC0
PA6.Locked=true
USB_HOST0.BSP.ip=GPIO
USB_HOST0.BSP.mode=Output
USB_HOST0.BSP.name=Drive_VBUS_FS
USB_HOST0.BSP.semaphore=
USB_HOST0.BSP.solution=PC0
USB_OTG_FS.IPParameters=phy_itface,VirtualMode
USB_OTG_FS.VirtualMode=Host_Only
USB_OTG_FS.phy_itface=HCD_PHY_EMBEDDED
VP_SYS_VS_Systick.Mode=SysTick
VP_SYS_VS_Systick.Signal=SYS_VS_Systick
VP_USB_HOST_VS_USB_HOST_CDC_FS.Mode=CDC_FS
VP_USB_HOST_VS_USB_HOST_CDC_FS.Signal=USB_HOST_VS_USB_HOST_CDC_FS
board=STM32F401C-DISCO
boardIOC=true
isbadioc=false

View File

@ -74,8 +74,6 @@ void Error_Handler(void);
#define PDM_OUT_GPIO_Port GPIOC
#define B1_Pin GPIO_PIN_0
#define B1_GPIO_Port GPIOA
#define I2S3_WS_Pin GPIO_PIN_4
#define I2S3_WS_GPIO_Port GPIOA
#define SPI1_SCK_Pin GPIO_PIN_5
#define SPI1_SCK_GPIO_Port GPIOA
#define SPI1_MISO_Pin GPIO_PIN_6

View File

@ -13,8 +13,15 @@
#include "CS43L22.h"
#define HEARTBEAT 1000
#define BUFFER_SIZE_SINUS 16000
int16_t sinusTable[BUFFER_SIZE_SINUS] = { 0 };
int i = 0;
extern I2C_HandleTypeDef hi2c1;
extern I2S_HandleTypeDef hi2s2;
extern I2S_HandleTypeDef hi2s3;
CS43L22 cs43l22;
@ -23,6 +30,15 @@ uint32_t ts_blink = 0;
uint8_t chipID = 0, revID = 0;
uint16_t data = 0;
void initSinusTable(void)
{
//Pour avoir un sinus partant d'une fréquence de 1Hz, il faut AUDIOFREQ_16K cases
for(int i = 0; i < BUFFER_SIZE_SINUS; i++)
{
sinusTable[i] = 4000*sin((1.0/(double)BUFFER_SIZE_SINUS)*(double)i*2.0*M_PI);
}
}
void dacRegDump()
{
uint8_t regDump[CS43L22_RESGISTER_COUNT] = {0};
@ -49,23 +65,29 @@ void setup(void)
printf("Failed to init DAC\r\n");
dacRegDump();
//We disable the DAC
if(!CS43L22_WriteRegister(&cs43l22, POWER_CTL_1, 0b00000001))
printf("Fail POWER_CTL_1\r\n");
//We set the auto clocking
if(!CS43L22_WriteRegister(&cs43l22, CLOCKING_CTL, 0b10000001))
printf("Fail CLOCKING_CTL\r\n");
//...
if(!CS43L22_WriteRegister(&cs43l22, INTERFACE_CTL_1, 0b00000100))
printf("Fail POWER_CTL_1\r\n");
if(!CS43L22_WriteRegister(&cs43l22, INTERFACE_CTL_1, 0b00000111))
printf("Fail INTERFACE_CTL_1\r\n");
if(!CS43L22_WriteRegister(&cs43l22, POWER_CTL_2, 0b10101111))
printf("Fail POWER_CTL_2\r\n");
if(!CS43L22_WriteRegister(&cs43l22, MISC_CTL, 0b00000010))
printf("Fail MISC_CTL\r\n");
/*if(!CS43L22_WriteRegister(&cs43l22, PASSTHROUGH_A_SELECT, 0b10001000))
printf("Fail PASSTHROUGH_A_SELECT\r\n");
if(!CS43L22_WriteRegister(&cs43l22, PASSTHROUGH_B_SELECT, 0b10001000))
printf("Fail PASSTHROUGH_B_SELECT\r\n");*/
//We set the frequency
if(!CS43L22_WriteRegister(&cs43l22, BEEP_FREQ_ON_TIME, 0b00010000))
/*if(!CS43L22_WriteRegister(&cs43l22, BEEP_FREQ_ON_TIME, 0b00010000))
printf("Fail BEEP_FREQ_ON_TIME\r\n");
//We set the volume
@ -74,11 +96,13 @@ void setup(void)
//We activate the beep to continuous
if(!CS43L22_WriteRegister(&cs43l22, BEEP_TONE_CFG, 0b11100000))
printf("Fail BEEP_TONE_CFG\r\n");
printf("Fail BEEP_TONE_CFG\r\n");*/
//We enable the DAC
if(!CS43L22_WriteRegister(&cs43l22, POWER_CTL_1, 0b10011110))
printf("Fail POWER_CTL_1\r\n");
initSinusTable();
}
void loop(void)
@ -89,12 +113,15 @@ void loop(void)
if(!CS43L22_GetDeviceID(&cs43l22, &chipID, &revID))
printf("Failed to retrieve CS43L22 ID\r\n");
else
printf("Device id : %u, revID : %u\r\n", chipID, revID);
dacRegDump();
//else
//printf("Device id : %u, revID : %u\r\n", chipID, revID);
ts_blink = HAL_GetTick();
}
//HAL_I2S_Transmit(&hi2s2, &data, 1, HAL_MAX_DELAY);
HAL_I2S_Transmit(&hi2s3, &sinusTable[i++], 2, HAL_MAX_DELAY);
if(i == BUFFER_SIZE_SINUS)i=0;
HAL_Delay(3);
}

View File

@ -232,8 +232,8 @@ static void MX_I2S2_Init(void)
hi2s2.Init.Mode = I2S_MODE_MASTER_TX;
hi2s2.Init.Standard = I2S_STANDARD_PHILIPS;
hi2s2.Init.DataFormat = I2S_DATAFORMAT_16B;
hi2s2.Init.MCLKOutput = I2S_MCLKOUTPUT_DISABLE;
hi2s2.Init.AudioFreq = I2S_AUDIOFREQ_8K;
hi2s2.Init.MCLKOutput = I2S_MCLKOUTPUT_ENABLE;
hi2s2.Init.AudioFreq = I2S_AUDIOFREQ_96K;
hi2s2.Init.CPOL = I2S_CPOL_LOW;
hi2s2.Init.ClockSource = I2S_CLOCK_PLL;
hi2s2.Init.FullDuplexMode = I2S_FULLDUPLEXMODE_DISABLE;

View File

@ -169,13 +169,14 @@ void HAL_I2S_MspInit(I2S_HandleTypeDef* hi2s)
PC3 ------> I2S2_SD
PB10 ------> I2S2_CK
PB12 ------> I2S2_WS
PC6 ------> I2S2_MCK
*/
GPIO_InitStruct.Pin = PDM_OUT_Pin;
GPIO_InitStruct.Pin = PDM_OUT_Pin|GPIO_PIN_6;
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
GPIO_InitStruct.Alternate = GPIO_AF5_SPI2;
HAL_GPIO_Init(PDM_OUT_GPIO_Port, &GPIO_InitStruct);
HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);
GPIO_InitStruct.Pin = CLK_IN_Pin|GPIO_PIN_12;
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
@ -204,12 +205,12 @@ void HAL_I2S_MspInit(I2S_HandleTypeDef* hi2s)
PC10 ------> I2S3_CK
PC12 ------> I2S3_SD
*/
GPIO_InitStruct.Pin = I2S3_WS_Pin;
GPIO_InitStruct.Pin = GPIO_PIN_4;
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
GPIO_InitStruct.Alternate = GPIO_AF6_SPI3;
HAL_GPIO_Init(I2S3_WS_GPIO_Port, &GPIO_InitStruct);
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
GPIO_InitStruct.Pin = I2S3_MCK_Pin|I2S3_SCK_Pin|I2S3_SD_Pin;
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
@ -245,8 +246,9 @@ void HAL_I2S_MspDeInit(I2S_HandleTypeDef* hi2s)
PC3 ------> I2S2_SD
PB10 ------> I2S2_CK
PB12 ------> I2S2_WS
PC6 ------> I2S2_MCK
*/
HAL_GPIO_DeInit(PDM_OUT_GPIO_Port, PDM_OUT_Pin);
HAL_GPIO_DeInit(GPIOC, PDM_OUT_Pin|GPIO_PIN_6);
HAL_GPIO_DeInit(GPIOB, CLK_IN_Pin|GPIO_PIN_12);
@ -268,7 +270,7 @@ void HAL_I2S_MspDeInit(I2S_HandleTypeDef* hi2s)
PC10 ------> I2S3_CK
PC12 ------> I2S3_SD
*/
HAL_GPIO_DeInit(I2S3_WS_GPIO_Port, I2S3_WS_Pin);
HAL_GPIO_DeInit(GPIOA, GPIO_PIN_4);
HAL_GPIO_DeInit(GPIOC, I2S3_MCK_Pin|I2S3_SCK_Pin|I2S3_SD_Pin);