Damn, must have missed that part in the manual.
Anyway, in the idea of laying the groundwork for a custom firmware, I tried to map all the basic HW info to get started.
Here are my notes :
MCU: AT32F403AVGT7
FPGA: AG1KLPQ48
ADCs: 3PEAK 3PA1030
LCD: 320x240, 16bpp, probably ILI9341 based
MCU pinout :
TMR5:
PA0: (TMR5_CH1) LCD Backlight PWM
PA1: (TMR5_CH2) Buzzer
GPIO_config:
PB2: HIGH to keep device on, LOW to turn off
PC11: Unused ?
PA10: CH1 coupling selection (HIGH for DC)
PE0: CH2 coupling selection (HIGH for DC)
PA4: (DAC1_OUT) CH1_Offset
PA4: (DAC2_OUT) CH2_Offset
PC6: Enable DMM IC when HIGH ?
PD3: Key Power
PB9: Key Auto
PB8: Key CH1
PB6: Key F1 (Move)
PB7: Key F2 (Cursor)
PC15: Key Left
PC13 : Key Ok
PE2: Key CH2
PE3: Key Save
PE1: Key F4 (Prm)
PC14: Key F3 (Trigger)
PA3: Key Down
PE6: Key Up
PE5: Key Right
PE4: Key Menu
PC7: Beep from DMM IC when LOW
PB0: Battery charging when LOW
USART3:
PB10: USART3_TX (DMM)
PB1: USART3_RX (DMM)
USART1:
PA9: USART1_TX debug uart
Attenuators:
PA6: CH1 Attenuator
PD2: CH1 Attenuator
PC12: CH1 Attenuator
PA11: CH1 Attenuator
PA7: CH2 Attenuator
PD12: CH2 Attenuator
PD13: CH2 Attenuator
PB1: CH2 Attenuator
FPGA:
PC10:
PC0: FPGA SPI func select 0
PC1: FPGA SPI func select 1
PC2: Some kind of reset / sync ?
PC9: FPGA CRESET_B
PA15: FPGA SPI_SS
PB3: (SPI3) FPGA SPI_SCK
PB4: (SPI3) FPGA SPI_MISO
PB5: (SPI3) FPGA SPI_MOSI
PA8: CLKOUT
PC3:
PC8: FPGA CDONE
SPI2:
PB12: EEPROM_SS
PB13: EEPROM_SCK
PB14: EEPROM_MISO
PB15: EEPROM_MOSI
LCD:
PD6: LCD_RESET ?
PD4: LCD_NOE
PD5: LCD_NWE
PD7: LCD_NE1
PD0: LCD_D2
PD1: LCD_D3
PE7: LCD_D4
PE8: LCD_D5
PE9: LCD_D6
PE10: LCD_D7
PE11: LCD_D8
PE12: LCD_D9
PE13: LCD_D10
PE14: LCD_D11
PE15: LCD_D12
PD8: LCD_D13
PD9: LCD_D14
PD10: LCD_D15
PD12: (A17) : LCD_C/S
ADC:
PA2: ADC for battery voltage
FPGA SPI FUNC SELECTION :
PC0, PC1
0,0 : Unused
0,1 : Scope buffer
1,0 : Timing config
1,1 : Siggen buffer
PC2 set to "1" before sending FPGA a single 0x00 byte, before any other transfer, then set back to 0
also this on timer event after downloading sampling buffer
GPIO_write_pin(PTR_GPIOC_0800a3bc,GPIO_PIN_0,1);
GPIO_write_pin(GPIOC,GPIO_PIN_2,1);
delay_ms(1);
GPIO_write_pin(GPIOC,GPIO_PIN_2,0);
GPIO_write_pin(GPIOC,GPIO_PIN_0,0);